Technology Blog »
November 5, 2006
Anyone who has ever investigated Content Management Systems (CMSs) will know what a huge number there are on the market. The very useful CMS Matrix lists over 600 and there are certainly others not listed there.
(For anyone unsure what a CMS is, in simple terms it’s a tool for managing the content of a website.)
Why are there so many? Well, if you have used any of the more common ones you probably have felt some frustration at it at some point, that it either doesn’t do what you want, or else makes it harder than appears reasonable. If you are a developer this frustration may lead you to try your hand at improving on what has gone before, and clearly many have done so.
However, the very fact that the market has so many players suggests that no one has yet really solved the problem – or if they have, their product is so pricy that few can afford to use it. It’s worth looking at why the problem might be so hard to solve, because I think it’ll provide some insight into how you might choose a CMS for a particular situation.
The CMS Matrix makes it easy to compare one product to another in terms of its features. A list of features can mislead, however, as anyone who’s carried out much software evaluation will have learned. Really what’s most important in characterizing a CMS is its ability to support the processes you require. And because those process requirements may vary hugely between environments, it’s unlikely that any one CMS can be everyone’s favourite.
What are these processes? Here’s my list of three key ones:
- Authoring. This encompasses the entire process of creation of content.
- Review. This is the process by which content is evaluated and signed-off.
- Publication. This is the process by which content is presented on the web site.
In many situations, these processes collapse into a smaller number. Blogging is a good example, in which generally the author writes, previews and publishes an article in one go. On the other hand, in large corporate environments often each process will involve the effort of several individuals and the CMS will need to be integrated with other systems and their databases.
Speaking of databases, any serious CMS will have to be able to present data that’s created by applications as well as through direct human input. Many CMSs make this harder than it need be in terms of developer effort.
Another complicating factor is the fact that content may need to be managed at several levels. For instance, the addition of a press release to a site rarely requires any new graphic design, but what about a new marketing campaign? To give it the desired prominence on your home page may require web designer input and a change to its structure. Not all CMSs manage page structure and presentational elements as well as they do (largely textual) content: often these are defined through HTML and CSS templates that have to be maintained separately, outside of any controlled process.
The wide variety of CMSs reflects not only the range of requirements they have to meet, but also the history of their evolution. Some of them started life as blogging tools, others as add-ons to ecommerce applications, and still others as document management systems. Will we see a convergence in the near future, with a few products emerging as clear winners? I believe so, though from the enormous field we have the moment I hesitate to pick which ones it’ll be. On the web new contenders often appear from nowhere to dominate a market within a matter of months.
You’ll now appreciate, I hope, why so many CMS products exist and how hard it is to find the one that’s right for you. In a future article I’ll look at some of the ways different products tackle some of the problems of content management and the pros and cons of their approaches.