posted by Matt Ward on Feb 5, 2011.
There’s a debate in the design and development community about which Content Management System is the “best” available tool out there (assuming that you haven’t written your own). I won’t be trying to answer that question in this article, but would rather like to introduce a slightly different perspective on some important considerations that should go into making that choice.
Recently, I have seen a couple of different articles that have tried to address the question of what is the best content management system (CMS) to use for a website. First, Amber Weinberg wrote an article over on Freelance Folder, entitled “Which Content Management System Should You Focus On?”. The article basically introduces the concept of the CMS and its importance to modern day web developers, provides a brief listing of some different options, along some of the pros and cons of each (according to the opinions of the author), and offers a few simple tips on how to get started choosing your platform. It’s a great introduction for beginners.
More recently, Brian McDaniel authored a different post entitled “Why WordPress Is The Best CMS”. In this article, Brian explains a number of different reasons why he has migrated nearly all of his web work to WordPress from systems like Drupal and Joomla. He talks about a number of the benefits of WordPress as a CMS (even though it was originally created as a blogging engine), with his typical humour and wit (the closing line is priceless), making some interesting and valid points along the way.
Interestingly, both authors actually favour WordPress, and generally for reasons that I tend to agree with. Personally, I’m a big supporter of the WordPress platform and probably use it for about half of the work I do (with the other half being built on Concrete5).
Additionally, both authors also conceded that you really need to pick out the CMS that works the best for you. Amber touches on this by suggesting that you
Download some of the platforms you’re interested in, install them and try to code a couple of sites in them. It also helps to pick up a few books or read a few tutorials on the CMS itself.
Similarly, Brian writes:
The short answer to the oft-asked question we started with is this: choose the CMS that works best for you and your context. Try them all, if you have the time. You may find that something other than WordPress is your best CMS
What both of these comments ultimately point to is that the best CMS is the one that works the best for you. The respective authors each present you with the reasons why they choose WordPress over any of the others, but the final decision has to rest with you, your situation and the requirements of a given project.
From my perspective, that’s good, solid advice.
However, as I have been thinking about the idea of what makes one particular CMS better suited to a particular project, I thought about a number of different things. One was the way I differentiate between a WordPress-based project and a Concrete5-based project in my own work. That one’s actually pretty simple. Anything that requires a blog, news stream or other means of publishing periodic, article-like content will be built on WordPress. Similarly, anything that may require some complex, non-standard functionality is probably better suited to WordPress, because there is more likely to be a plugin, and even if there’s not, custom coding just tends to be easier.
On the other hand, if the project is for a simple brochure site, I tend to lean more towards Concrete5, which allows me far more flexibility in terms of the placement of multiple content areas, and actually allows me (or the client) to edit content directly from the page, rather from the admin back-end. I really dig that feature.
Regardless, this is a perfect example of how the unique requirements of a particular project ultimately direct my choice of CMS. The more I thought about it, however, the more I realized that there is another important factor that comes into play.
That factor is available resources.
I tend to agree with Brian and Amber in that creating a theme for WordPress is pretty simple, and hooking into its broad range of core processes is fairly straightforward too, allowing for a great deal of functional flexibility. On the Concrete5 side, turning a static HTML and CSS page into a basic theme is probably even easier than creating a WordPress theme, and involves just plugging in some snippets of code in the desired content areas. Coding custom functionality is a bit more tricky, but by now I’ve worked with the guts of the system enough to be able to figure most things out.
So, when I start on a new website project, I’m going to turn to one of these two solutions, based on the requirements of the project. That being said, however, it is entirely possible (and perhaps even likely) that there may be another CMS out there that, based simply on its feature set, might actually seem like a more appropriate choice.
But chances are, I’m not going to use it. Why?
Because what “works best” often entails more than a pure mathematical evaluation of functionality. It must also take into account things like time and resources, both of which tend to be a limited commodity.
As a real life parallel, I live in Canada, and right now we’re in the middle of winter. Winter is generally very cold here, and due to the effect that this severe lack of heat has on water, we have a tendency to get snow. Sometimes, we have a tendency to get a lot of snow. Unfortunately, snow is not a particularly considerate phenomenon, and it likes to cover everything pretty much equally, including our roads. Given this, I can tell you that there are times when a big, 4-wheel drive truck with extra large tires would be a much better transportation solution than the Mazda 5 that my wife and I currently own.
Unfortunately, we simply do not have the financial resources to afford that big truck, especially since we would only be using it a few times a year, when there is a lot of snow on the roads. So, we just have to make due with the vehicle we have (which, during most of the rest of the year, suits our little family just fine). It may not be the most ideal solution, but it’s always managed to achieve the intended result of getting us from point A to point B.
I think in many ways, the same is also true of web design and development. There may very well be another content management system out there that would actually be a better solution for a project, but you may simply not have the resources to implement it. That could be a matter of money, but more often than not its also going to be a matter of time.
Many systems come with a steep learning curve, which means that you would have to invest the time into actually learning how to code and develop for that particular CMS. Depending on the system, that can require a pretty significant investment, and probably one that most clients wouldn’t be all that keen on paying for. It is also likely to stretch out the course of your development cycle, and ultimately delay the launch of the site, which is another thing that most clients would probably prefer to avoid.
So, even though using WordPress or Concrete5 (or your CMS of choice) might not be the most ideal solution based strictly on core functionality, when you factor in learning curves and extended development time, things might look a little different. If I can accomplish the same objectives using one of these familiar systems that I could with a “better suited” system, in a fraction of the time, then for me it’s a better decesion to go with the familiar system.
After all, its the end result that matters far more than how you get there (though that’s not to say that the getting there is not important), and selecting the right CMS for the job is not always about a list of features. It can also be about comfort, time and limited resources.
In closing, I’d just like to throw out a quick shout out to both Brian and Amber for writing interesting, thoughtful and useful articles! Thanks guys.
What do you think? What is your favourite CMS? How to you determine what the best tool would be for a given project? Is it strictly a matter of features, or do you consider other factors too?Post A Comment
Also from Echo Enduring Media: