With marketing and I.T. budgets under greater pressure than ever, an open source Content Management System (CMS) can look like an attractive option. Are they cheaper than proprietary systems and what are the other issues to consider?

At NetXtra we provide membership and not-for-profits with both open source and proprietary CMS's, so we are ideally placed to offer pragmatic and impartial advice for both.

Free as in "beer" or free as in "speech"?

Whilst open source software is often free of charge, it by no means has to be. Within open source circles, the concept of freedom is often far more important than that of price. The Free Software Foundation (FSF - www.fsf.org) promote the term Free and Open Source Software (FOSS). This is characterised by four essential freedoms:

  • The freedom to run the program for any purpose
  • The freedom to study how it works and change it
  • The freedom to redistribute copies
  • The freedom to distribute your modified copies.

As with proprietary software,the exact freedoms you get with open source software will depend on the license. Permissive licenses, such as BSD and MIT, place minimal restrictions on how the software can be used or distributed, meaning that it can often be used in larger systems and re-released under more restrictive licences. So called 'copyleft' licences, such as the GNU General Public Licence (or GPL for short), forbid extra restrictions from being placed on the software when it is redistributed. Drupal, one of the most popular and widely deployed CMS's uses the GPL.

The technology

There are a number of differing technologies that sit underneath a CMS. These may or may not be subject to the same licenses as the CMS itself. Systems are often tied to particular technologies - whether they be open source or proprietary. For example, a number of open source CMS's are based upon the so called 'LAMP stack' (Linux, Apace, MySQL, and PHP) which is made up using open source systems. If you are already using these for other parts of your organisation (e.g. for a Customer Relationship Management system) then this can be a very good fit and potentially save you money. If, however, you've already heavily invested in, for example, Microsoft systems, then an alternative option may be a better and ultimately cheaper fit.

Initial selection and set up

Generallly, an open source CMS will be available free of licensing costs. This can mean a saving on up-front costs. However, some proprietary systems will also be available with free (or very low) licensing charges, so don't take this as a slam dunk! Always be sure to check the specific details of the systems you are considering.

Where costs will normally be incurred is in setup. Your CMS needs to run somewhere, and be installed and configured to your needs. If you happen to have provision for hosting already, as well as the technical skills available, then you may be able to do this yourself. However, don't underestimate this step. Many modern CMS's are straightforward to install, however, configuring and optimising them for production use is often a much more complicated task. For anything other than trivial use cases, you are probably going to be better off getting in a dedicated vendor to take care of these issues for you, and that is ultimately going to cost money - whether it's open source or proprietary!

Extending and adding new functionality

Most systems will allow for a certain degree of configuration to bend and shape them to your particular needs. Once you go beyond relatively trivial or common functionality, then, over time, the CMS will most probably need extending in some manner.

With a proprietary CMS this will normally mean paying for extra 'modules' to be added or, in some cases, paying to have bespoke functionality written for you and plugged in. The important thing here is to understand up front what the costs are likely to be and what is involved in getting the work done. Does the CMS have a large pool of optional modules ready to go at reasonable prices or are you more likely to need to have the functionality written specifically for you? In some cases the bespoke route can make a lot of sense if you have very specific needs that are custom to your organisation. You get exactly what you need rather than having to fit in to some pre-conceived idea of how an area of functionality should work - though this may, of course, come at a price.

With an open source CMS it's quite common for there to be a large community providing modules to extend the CMS. These will typically be provided under the same license as the CMS itself, although, in some cases, they may differ and even be subject to a charge. You need to check this as an initially free CMS might soon look less appealing if you need to pay for several modules to turn it into something useful.

One of the biggest challenges when sourcing a variety of modules from a wider community is making sure that they work well together and result in a cohesive whole. With large sites you can quickly end up depending on a large number of third-party modules, and this can cause problems. It's common for these modules to themselves rely on other modules. This is fine and can simplify development, but it can come at a cost. Before you know it you are dependent upon the whims of dozens of separate suppliers - all with their own release time-frames and development plans.

Security considerations

Some people will point at very public breaches of security in some popular open source projects and conclude that the open model is inherently insecure. If hackers can see the source code, then obviously they can easily exploit it. On the flip side, supporters of open source software will argue that the fact that many people can access the source code means bugs and security holes are more likely to be noticed, and hence fixed - whereas similar bugs may remain for years in closed source code.

The truth here is probably somewhere in the middle. It's certainly true that there have been some embarrassing security problems for large open source projects, and these haven't always been dealt with very well. But, the same is also true for closed source and proprietary applications - it just tends to happen less publicly.

Getting support

Open source supporters will point at the large community that often exists around popular projects and cite this as an example of how you can get great support. This is true and in many cases there will be a lot of people ready and willing to help when you hit problems or need advice. However, you should remember that community-based support is by no means guaranteed. You can't ring the community up at three in the morning to ask why your site is down!

Paid professional support is important for anything other than a trivial site. This doesn't necessarily mean that you have to choose a proprietary CMS. Far from it. Many companies generate revenue from open source software by offering paid support. With large sites this support can be very important.

This support can take many different forms. At one level it may mean security patches and updates get applied in a proper and timely manner. At another level it may involve monitoring your site and the systems that it depends on to ensure they are functioning correctly. Moreover, it can mean day-to-day assistance with using the CMS and, going forwards, getting advice on how to improve or extend the system.

Dispelling the myths of 'Portability'

Generally, one of the major selling points that is specific to open source software is the perception that you can relatively easly 'up sticks' and move to another supplier if you find that your existing supplier isn't working out as well as you'd hoped.

To some extent this is true. If you chose a popular open source CMS that many different companies support, then you can indeed switch between them. This may not be the case with a CMS offered by a proprietary vendor, unless there is a reseller market, or similar, in place. And even if there is, the pool of companies you can switch to is likely to be smaller.

Regardless of your CMS, the reality is that it's not usually that straight-forward when contemplating changing your supplier.

For any non-trivial site there is quite likely to be a lot of custom code and knowledge invested in it - even with an open source CMS based on well-known community-sourced modules. Different companies will always do things in different ways.

Transferring a large site between suppliers can be a messy business - particularly if you want to extend the site's functionaility further. If the CMS chosen is powerful and flexible then there will probably be a number of different ways of solving any given problem. On the face of it this is a good thing, but when a different team comes to work on the system it can also lead to complexities. It's not uncommon for the new team to disagree with how previous work was done and as such may want to rip a lot of it up and rewrite it. Even if the original work was done well, there will almost certainly still be a cost overhead for getting the new team fully understanding how everything fits together.

Another important aspect to consider when looking at portability is the transferability of your site's data, as distinct from the site itself. No matter which CMS you choose, it's always possible that you may want to move to a different one in the future.

Conclusions

The main conclusion from all of this is that choosing a CMS is far more than a choice between open source and proprietary. Neither option guarantees you will have a successful outcome or come in under budget.

You should evaluate each CMS purely on its own merits. Does it do what you need? Does it fit within your budget? Can it be properly and satisfactorily supported? Can you work with the people supplying and supporting it?

Finding a CMS that closely aligns with your needs is one of the best ways of getting value for money. Paying developers to massively customise an open source CMS may end up costing you more than paying for a proprietary solution that more closely meets your requirements. On the flip side, paying license fees for an ill-suited proprietary solution doesn't make any sense either.

Are you stuck between open source and proprietary CMS? Or perhaps you already know which is best for you and want to take the next step towards getting it live. Whatever your situation, NetXtra can help. Give us a call on 01787 319393 or contact us via this website.