About this post:
A look at our favorite Content Management System and why it's probably right for you.
ExpressionEngine is our non-enterprise Content Management System (CMS) of choice. It’s made by the good folks over at EllisLab. For the majority of our clients, ExpressionEngine meets all of their needs and our needs as well. However, some of our clients ask “Why ExpressionEngine?”, so here are some of the reasons that I find it awesome to work with.
Flexibility is the number one reason we use ExpressionEngine. Whereas other CMSes (such as Wordpress and Drupal) assume a basic structure like a blog or community, ExpressionEngine assumes very little and lets us take complicated wireframes and impossible designs and turn them into an easy-to-use site.
For example, take a look at our portfolio and specifically the Nomad Mobile Guides project. This is a very complicated page: you’ve got a large banner image, some project images, a description of the project and some related articles. Creating these things—especially the related articles—is typically an exercise in frustration, but with ExpressionEngine this is typical.
Getting those related articles to show up is a multi-step process, but it makes sense after you take a look at the steps.
- First, you create the blog posts. The idea would be that you already made these in your day-to-day work anyways.
- Either create or edit an existing project.
- Find the area that says Related Articles.
- Find the article that you want to show up (feel free to use the drop-downs and search box) on the project page and just drag it from the left to the right.
That’s it, that’s all it takes to get those related articles to show up on a project’s page. The best part? When you update the blog post down the road, it’ll update on the project page without you doing anything!
Folks who have been using other CMSes (especially Wordpress) know that security is a big concern. It’s pretty easy to find a whole slew of sites that have been hacked into and covered in spam. ExpressionEngine has been a secure platform and there are several reasons for that.
Their release schedule produces a new build about every two months and a new release (1.x.x) every six months or so. It’s a slow, deliberate pace and they rigorously test these releases before we ever see them.
One of the big reasons Wordpress gets hacked as often as it does is because of something called XML-RPC, which lets you post to your blog or site from somewhere else—such as a desktop blog editor like MarsEdit. Now, ExpressionEngine offers the same functionality—the ability to remotely edit your blog posts and other content—but it’s not enabled by default, closing up what is typically a security risk.
Accountability is a hidden gem of a feature. For the most part, this ‘feature’ gets glossed over and forgotten about, but it’s the reason we keep coming back to ExpressionEngine. Take a look at open-source CMSes, and there’s a whole slew of them: Wordpress, Drupal, Joomla, MODx, SilverStripe, Habari, the list goes on and on. One of the biggest issues with open-source CMSes is accountability: when something goes wrong who's accountable?. Sure, there are exceptions to this such as Drupal’s Acquia—the commercial support wing of Drupal—and you can always report the problem you’re having; but for the most part, if there aren’t enough people with the same problem, it’s up to us to fix it.
With ExpressionEngine, once you have a license, you’re given access to their support forum where a very active—and paid—support team descends upon your problem. I’ve found most problems get resolved within a week if not the same day.
Now that’s all fine and dandy, but with all of these CMSes you aren’t only using the CMS’s core features, you’re using plugins and add-ons; and there’s been several times where something I depend on working breaks and the original developer is nowhere to be seen. At that point it's up to me to fix my problem.
ExpressionEngine developers are a bit different. Granted, there are cases where the above scenario has played out with an ExpressionEngine add-on, but it happens a lot less often. Why’s that? There’s a good number of ExpressionEngine add-on developers that charge for their work and developers that charge are invested and accountable. If the add-on stops working all of a sudden, they’re there to support you and get it working again. (On a personal note, I’ve had one developer offer to log in to an in-development ExpressionEngine site, find the problem, fix it and let me know what was wrong. And that’s not an exception, this happens a lot more often then you’d think.) I get the feeling that they’re not just offering this level of support for the money, I think they truly care about what they’re doing and want happy and satisfied customers.
I hope I’ve answered the question “Why ExpressionEngine?” for you. Between it’s flexibility, security and accountability, we’ve found our tool-of-choice. No longer do we have to push back on a feature because the CMS won’t let us do it. But I know that there still may be some lingering questions out there, so if you still have any unanswered questions about why we use ExpressionEngine, please let me know and I’ll try to answer them.