These days, many websites are built on top of a Content Management System (CMS). A CMS allows users to add or modify content with relative ease, without, generally, the need to involve a software developer.
There are many CMS applications available and not surprisingly the choice can be somewhat overwhelming. The decision could be driven by technology, functionality or cost, or all of the above. However, ultimately you need to ask yourself the questions "what am I trying to achieve and what constraints have I got?" Above all, the CMS you choose must support the functionality you need now and provide you with the flexibility and capability to support the future vision of your website.
For the purpose of this article, I am going to look at two very popular open-source CMS’s, Umbraco and WordPress, and specifically look at the pros and cons of each one.
WordPress has been around since 2003. In the web world, that is a long time! It is an extremely popular system and is the most popular blogging system around. In addition to targeting bloggers it also targets small websites. It is built in PHP and uses a MySQL database. You can either run a WordPress site using wordpress.com, or you can download and run your own version.
WordPress makes heavy use of templates and plug-ins. It is the ease with which they can be utilised that has made WordPress so popular. Sites can be built very quickly (and therefore cheaply) by non-developers with easy customisation of plug-ins and a whole heap of different themes. However the functionality of WordPress sites tends to be low to medium level. It is perfect for blogging or sites with relatively basic content.
As WordPress is template-based, however, your design options are limited and this could well provide you with functionality/design constraints in the future. It should be said, though, that you can create bespoke websites using WordPress however this can be rather cumbersome as you still need to follow WordPress’s way of doing things. It is for this reason that you don’t see many sophisticated dynamic websites around based on WordPress.
Still, if you are looking for a simple site, based on blogging or limited content, then WordPress will provide you with a great solution and a fabulous user-interface to manage your content. You can even get ‘responsive’ themes (which allow sites to adapt their layout depending on the device it is being viewed on) and plug-ins offering multi-lingual capability.
The beauty of Umbraco is that it is not only incredibly flexible - you can create a simple blog or a fully-fledged complex web application - but it is also open source, i.e. free. Some of the biggest sites on the internet are based on Umbraco, sites such as wired.co.uk and asp.net. We have also created our website around Umbraco.
Umbraco is based on the .NET architecture and supports both MVC and WebForms. There are numerous plug-ins giving developers almost unlimited freedom to create solutions, whatever their complexity. For more complex sites, developers often have to create a lot of behind-the-scenes functionality. Umbraco provides a lot of this out of the box, such as Microsoft’s latest authentication technology, caching. And, of course, you can plug in .NET controls.
Being so flexible, you can implement fully responsive sites and Umbraco makes it easy to implement multi-lingual sites.
In terms of the user interface, Umbraco v7 is certainly a big improvement on earlier versions. The interface works well and provides rich text editing features. If you really want to, you can edit content directly in Word.
So is it possible to really compare the two systems? Arguably, they are actually quite different. WordPress is more of a blogging tool that is well-suited to smaller, lower cost websites. There are some security and support issues around the templates and plug-ins, but it is perfectly possible to keep on top of that. Umbraco, is more appropriate for richer, more complex websites (and therefore more than capable of handling the smaller sites) where you want the technology to support your requirements rather than the technology constraining your requirements.
At the beginning the question "what am I trying to achieve and what constraints have I got?" was posed. As always you need to keep that question in mind but you also need to make sure that whilst the initial phases of a new website may be driven by keeping the costs down, you don’t find yourself constrained by the technology. The cost of changing your CMS at that point might be prohibitive. All you need is a good crystal ball or find yourself a good consultancy to help you make the decision. Now, where could you find one of those...?