Hi,
A few times I was trying to integrate EE with one of my websites. And I found it quite frustrating. First of all, EE’s documentation (Knowledge Base and wiki) are a mess. I don’t know if any one of you ever bought a kit for a model plane or ship when you were kids. I did, many times. Enclosed were simple step by step instructions on how to assemble the model from parts. So it was pretty easy to glue model together even if it had a lot of parts. Now EE’s documentation is not like that. Comparing to a plane kit, it talks about using third party decals instead of the process of assembly.
The idea is that even though (they say) EE is very flexible and powerful (whatever), there are only so many typical ways of using it. Not an infinite number of ways. I am pretty sure that 90% of sites using EE are using 10% of EE’s capacity. So it would make A LOT of sense that EE developers would give a few examples of how to use EE on a couple REAL WEBSITES. For example, take a small static corporate site and show how to integrate EE into this existing site - with not just code examples but the entire source for HTML with EE tags as well as how this site would look in the back end. For me for example it would be 5 times easier to “reverse engineer” an existing site with EE then trying to find useful information in your knowledge base. Show me how to make a simple home page and inside pages using EE - I don’t really care about the rest. But when I go to your wiwi I get simply lost - you have 2 hundred links so after looking at it I just say “WTF” and close the tab. It’s just out of control.
Anyway, I think you might have a great product, but if it takes an equivalent of a commercial pilot license instead of private pilot license then I’m out.
I just wanted to point out that the content of the book can also be found on my blog, and that Lisa has also been authoring a number of how-to articles on the ExpressionEngine blog.
Anyway, I think you might have a great product, but if it takes an equivalent of a commercial pilot license instead of private pilot license then I’m out.
I agree. I get lost in the documentation.
I also agree that what EE needs is one good tutorial (like most beginner books have) that shows how to build a significant application using multiple table views (weblogs) including relationships between weblogs. This is a real-life application, not a toy one. In this way the full functionality can be displayed. When I use to assist companies with relational database development tools (I was involved with MS when they developed Access), we use to take an example with a 1-M table relationship and show to to build an example application with the tool.
Of course, most CMS tools are not nearly as powerful as RDBMS development software, however they do serve an important niche (development speed, managing complex data), and a straightforward tutorial would be very helpful.
I just wanted to point out that the content of the book can also be found on my blog, and that Lisa has also been authoring a number of how-to articles on the ExpressionEngine blog.
Hi Michael,
Thanks for the link. It really helps.
However, I think that none of the examples I have seen so far, really differentiate EE from other simple blogging tools such as Wordpress. If I were to look at the examples, I would walk away thinking that I can do it faster and easier with Wordpress (or Joomla). I think that the real power of EE (if I am understanding the architecture correctly) is that it can ease in which developers can embed one or more views of multiple tables (including related tables), into a single page. This is a straightforward RDBMS development issue which is extraordinarily difficult to accomplish, without lots of complicated PHP programming) in other popular CMS packages. I have reviewed all of the CMS packages, but appears that EE is relatively unique in this respect.
I think a simple example showing multiple table views on a single page, would be much more illustrative of the power of EE. Again, I might be wrong in my understanding, so please correct me if I am.
I think a simple example showing multiple table views on a single page, would be much more illustrative of the power of EE. Again, I might be wrong in my understanding, so please correct me if I am.
Rich
Yes, this is exactly what I’m talking about.
As far as the book, Ellis Lab should maybe even offer this book on their site (Maybe they do but I didn’t see it). Plus why should I buy someone else’s book if I already pay $250 per license. That’s $1k for 4 licenses. It’s not cheap, so EE developers should offer enough organized information with real life examples for free.
I can’t speak for the other CMS’s as I’m not familiar with them, but the series on my blog does cover pulling content from multiple weblogs into one template.
I didn’t cover relationships specifically in that series, but am currently in the middle of authoring another “Building an ExpressionEngine Site” series on Train-ee.com, this time featuring a Church site. I will be finding a use for relationships in that series.
As far as the book, Ellis Lab should maybe even offer this book on their site (Maybe they do but I didn’t see it). Plus why should I buy someone else’s book if I already pay $250 per license. That’s $1k for 4 licenses. It’s not cheap, so EE developers should offer enough organized information with real life examples for free.
I agree. A good tutorial, is great for customer relations, sales, marketing, advertising, etc.
I remember during the early days of relational database development tools, a few of the new vendors like Paradox and DataEase (and eventually Access, which ruled the market), were trying to come up with a simple way of differentiating their products from DBIII which had about a 90% market share back then. What they did was very simple. They just picked a very common and straight forward example of implementing an application (usually a customer/invoice example), and then show the thousands of lines of code (back then DBIII language) that was necessary to implement the example and the zero lines of code that was needed to do it in Paradox. The comparison made Borland into a huge success. If you got it, flaunt it - don’t hide it. Who would ever guess what weblogs are unless someone has good application development experience with PHP and one of the other CMSs.
I can’t speak for the other CMS’s as I’m not familiar with them, but the series on my blog does cover pulling content from multiple weblogs into one template.
I didn’t cover relationships specifically in that series, but am currently in the middle of authoring another “Building an ExpressionEngine Site” series on Train-ee.com, this time featuring a Church site. I will be finding a use for relationships in that series.
Hi Michael,
This is the crux of the issue. These are some of the most powerful features of EE, that are completely hidden from evaluators. It was almost by accident that I began understanding the EE architecture and how it might help me solve my ratings/review site application specification - along, possibly with some plugins. A simple example, showing how EE handles this problem, while not complete, would certainly go a long way towards differentiating EE from other first generation CMS tools (let’s call EE second generation, since they can handle 1:M table relationships.
I would be interested in knowing if any other CMS package has similar capabilties. I don’t think I have run across any.
It would make a great white paper (the kind of stuff I use to do for a living).
Rich, the idea of having a stand alone database like the Northwind one that came with Access is an interesting one. However, since there isn’t a standard way of doing things, it wouldn’t help.
When you say you want a simple example showing multiple table views on a single page, what do you mean?
You could take a look at Derek’s Behind the Curtain Part IV entry on how relationships were used for the ‘Features Overview’ section of this site. Might be the sort of thing you’re looking for.
Guys I am sorry but I’d like to go back to my questions. I am not really concerned with 1:M table relationships. All I need is a good example of implementation. For example a home page, “About us” page and “Contacts” page with feedback form for a simple site that does not necessarily require a ton of other cool features that most developers are not going to use anyway.
And I’d like to see it all in once place, not requiring me to search here and there for little bits of information.
In particular, how do I insert page title and meta tags? How do I set up top level menu? How do I set up submenu on pages that need them? How do I insert a piece of content such as “About us” statement? How do I set up news and how do I display last 1 or 2 news items on the home page? How do I insert a feedback form? This is basic stuff but pretty much covers what I need so far from a CMS.
Rich, the idea of having a stand alone database like the Northwind one that came with Access is an interesting one. However, since there isn’t a standard way of doing things, it wouldn’t help.
When you say you want a simple example showing multiple table views on a single page, what do you mean?
Hi,
It is very conceivable to come up with everyday CMS problems where there are multiple tables that need to be related to each other (by underlying SQL joins.
While the concept of SQL relational joins are foreign to most CSS/HTML designers they are fundamental in PHP/SQL development. (When was the last time any developer was able to design a system with a single table). PHP/SQL developers do not think in terms of “weblogs” but they think in terms of tables and relational joins (relationships) of tables. It is the only way to properly optimize and view data.
For example, I might have a design that has categories/site/ratings/comments tables. I need to relate some or all of these tables in a single view. I do not know the extent of EE’s capabilities yet, but the ability to create a logical view of the data via a single relationship specification, is at least a beginning toward solving this problem. Without this “semantic relationship”, the developer/designer must write gogs of PHP (programming code), to retrieve the data and then present it as a paginated view on the display form.
What I think EE needs is, right up front, an example of this capability, and how a multi-table view (weblog) can be represented on a form with out any PHP (or other) programming code. Voila. Instead, this capability is buried in some difficult to understand tutorial or place in the documentation.
Guys I am sorry but I’d like to go back to my questions. I am not really concerned with 1:M table relationships. All I need is a good example of implementation. For example a home page, “About us” page and “Contacts” page with feedback form for a simple site that does not necessarily require a ton of other cool features that most developers are not going to use anyway.
And I’d like to see it all in once place, not requiring me to search here and there for little bits of information.
In particular, how do I insert page title and meta tags? How do I set up top level menu? How do I set up submenu on pages that need them? How do I insert a piece of content such as “About us” statement? How do I set up news and how do I display last 1 or 2 news items on the home page? How do I insert a feedback form? This is basic stuff but pretty much covers what I need so far from a CMS.
Yes, this basic information should be readily available. However, any simple blogging tool can do this, and often right out of the box. So, in addition to the basic requirements that you outline, EE really needs to show off the power of their platform to more advanced developers, such as myself, who are seeking powerful application development platforms that do not require excessive (or any) PHP programming. PHP programming is time consuming, subject to error, subject to security issues, and therefore requires lots of experience. EE goes a long way. And though you may not realize it now, the 1:M relationship capability will at the end enable you to do lots of things without programming and hacking, that you might have to do if you used other CMSs, or possibly rely on plugins from other third parties, as in Wordpress.
Guys I am sorry but I’d like to go back to my questions. I am not really concerned with 1:M table relationships. All I need is a good example of implementation. For example a home page, “About us” page and “Contacts” page with feedback form for a simple site that does not necessarily require a ton of other cool features that most developers are not going to use anyway.
And I’d like to see it all in once place, not requiring me to search here and there for little bits of information.
In particular, how do I insert page title and meta tags? How do I set up top level menu? How do I set up submenu on pages that need them? How do I insert a piece of content such as “About us” statement? How do I set up news and how do I display last 1 or 2 news items on the home page? How do I insert a feedback form? This is basic stuff but pretty much covers what I need so far from a CMS.
So...just curious. Did you look at the link I posted to the “Building an ExpressionEngine Site” series on my blog, or is it not what you were looking for?
I’m really trying to put out content that will help people get familiar with EE, so am always looking for feedback on what I’ve done so far.
So...just curious. Did you look at the link I posted to the “Building an ExpressionEngine Site” series on my blog, or is it not what you were looking for?
I’m really trying to put out content that will help people get familiar with EE, so am always looking for feedback on what I’ve done so far.
Hi Michael,
I have no less than eight tabs open right now that point to documentation or tutorials that might help me understand EE architecture and weblog relationships. This is one of the issues. The information is scattered in two many places without hyperlinks between them. I think the original poster was referring to this general problem with the documentation/blogs/forum postings.
Can you point me to the blog posting(s) that you are referring to? I would appreciate it. I would very much like to look them over. One issue that I have with the blogs right now is that a series of related blogs are not really linked together by “related links” in the posting. Am I missing it? If not, it would be a good feature to have.
Thanks for your help, and I will definitely look over your postings when I get the links.
So...just curious. Did you look at the link I posted to the “Building an ExpressionEngine Site” series on my blog, or is it not what you were looking for?
Yes I am actually there right now. I wanted to post a comment but don’t want to register. I am in your 6th chapter. This is exactly what Ellis Lab should do + include screen shots or even video tutorials. Their video tutorials are almost useless. Why don’t they do it - I don’t understand.
In your case what I’d do (maybe you already did, I just didn’t read all your posts) is to upload a complete site (anything that has to be entered into EE) or just a MySQL export of the EE for your church site + additional directory structure (e.g. directories for images etc) with CHMOD permissions etc. I assume that EE database will contain the html/css code for the page templates.
See, if I have this, just a DB of a working site, I won’t need their documentation as much. I would deduct most of it from an existing example. And this is exactly what I suggest EE developers to do - to post an example of a simple working site where most of their features are used. I’d pay them whatever, a $100 for it, rather then wasting time on their knowledge base.
Rich, EE itself does the heavy lifting for your table joins. Most of the time you don’t need to do the heavy lifting yourself.
During the install process, there is a template group called site. In that template group you have a limited sample of tasks you can use with EE.
For instance, there is an example entry. The code is there to add a comment. There is a comments template, as well as an RSS feed, an archives page, referrers, trackbacks, etc.
In your example, you have a design with categories, ratings and comments.
Categories and comments are a part of the exp:weblog:entries tag. Ratings aren’t built into EE, but there is at least one third party offering.
If you look at the sample that comes with EE, you’ll see the following code:
Building an ExpressionEngine Site - Small Business on Boyink.com. In addition to the category page there are links at the bottom of each post to the previous and next posts in the series. Commenting here is open.
The church site tutorial isn’t yet complete - so I can’t offer the full version in one .zip file yet. The Small Business book does include all the completed code templates.
As to the “Why don’t they do it” - speaking here as just me and not in any official capacity - EllisLab is still young, and have always been a very lean company - 2 or three employees there for quite some time. These tutorials and code samples are very time-consuming to produce, and are shooting at a moving target since EE has been under continuous development since its inception. Focus has simply been more on development and tech support. That’s entirely the reason I started the tutorial series on Boyink.com to begin with - to help fill the gaps and provide some of that training/learning where I could.