What features should a commercial CMS have?

Posted by Mikey McCorry | Posted in Featured | Posted on 23-09-2011

Tags: , , , , ,

3

I’ve recently had the pleasure of properly working with ExpressionEngine for the first time on a couple of client projects. The experience with EllisLab‘s flagship content management system so far has been mostly great; there is a lot of power under the hood and a solid methodology behind one of EE‘s greatest strengths: the ability to manage almost any kind of content you can think of.

EE has managed to do quite well for itself, despite costing $299 for a commercial license, and competing against hundreds of free, open-source products such as WordPress, CMSMS, Joomla and Drupal.

It also has a strong aftermarket for addons, modules and plugins to add useful features that are not included in the out-of-the-box package. This can be great to enhance your website beyond the scope of what is normally provided by a CMS, such as e-commerce, calendar events, image galleries, etc.

But there has been one sour note that has been making me question whether I’ll continue to recommend EE for new projects going forward: EE relies too heavily on paid addons to provide basic functionality that I feel should come out-of-the-box with any commercial CMS.

Here are just a few areas where I feel EE falls short of where it should be:

  • Websites are made of pages. It sounds obvious, but the included ‘Pages’ module is quite limited in it’s usefulness. While pages can be kinda nested into some sort of heirarchy, there’s not much you can do with that structure. The ‘Structure’ module goes a long way towards managing your website’s IA much easier, but it costs an extra $65.
  • Navigation is a drag. Most EE tutorials only cover static, hard-coded navigation which works fine until the client wants to be able to add new pages themselves. Once you have your pages organised into a nice, meaningful structure, unless you want to fumble around with awkward categories, to generate navigation dynamically from this structure will require another $35 for a navigation addon.
  • Want to crop or resize images from in the template? Lets say you want a blog post’s image to be used as a thumbnail on your homepage. Then again in your blog index. Then again on the actual blog post page. Then again for the image enlargement. That’s at least four different sizes you’ll need. EE can automatically resize or crop an image on upload, and that’s cool, but this is not explained very well in the documentation and is not very developer friendly. The ‘CE Image’ plugin has been fantastic for addressing this, albeit for an extra $15.
  • File management is a jumbled mess. The ‘Assets’ module can help you with that for an extra $55. It says something about how underdeveloped file management is in EE when the addon authors say that “at last, managing your files [can be] just as powerful and elegant as managing the rest of your content in ExpressionEngine.”

These costs all add up, and in my case, brought the overall cost of the CMS to much more than what I first quoted to the client. This is my fault more than anything for not doing the research and assuming too much about what EE would offer OOTB.

EE has a strong, passionate community who I’m sure will jump to its defence with the following:

  • the CMS provides the tools to cope with the requirements for a majority of websites;
  • it is built on a strong platform (CodeIgniter) and provides APIs for developers to extend any percieved shortcomings quite easily; and
  • the cost of the addons should simply be included in the quote for your project and passed on to the client.

These are all true, but I guess I’m really just questioning what base-level functionality should be expected in a commercial CMS of this price. What do you think?