Archive

Archive for March, 2009

Which CMS system should I choose?

March 29th, 2009

In this blog I will try to explain some of the advantages and disadvantages of the different CMS systems available on the market today. The goal is to give you something to think about, some inspiration if you are in the market for new CMS system. Making a complete analysis will require nothing less than they PhD dissertation.

There are basically four ways CMS systems are developed today:

1. In-house developed CMS systems. These are systems developed from scratch designed for a particular use.

2. Open-source CMS systems. These are CMS systems which can be downloaded from the Internet for free. The system’s are of different quality, some of them are very powerful and some are very simple.

3. CMS system providers. These are systems sold by companies specializing in trading and selling websites based on their proprietary CMS system. Usually the companies do the design, hosting and maintenance of the website.

4. Commercially available CMS systems from big vendors such as Microsoft.

In-house developed CMS system
Some companies have chosen to develop their own CMS system for any of the following reasons:

  • No CMS system is available with the functions needed and the customization was deemed to be too expensive compared to developing a new CMS system from scratch.
  • The commercial CMS systems on the market are too expensive.
  • The commercial CMS systems requires very expensive consultants to run the them.
  • The open-source systems available are not flexible enough or the quality is not satisfactory.
  • The company has complete freedom, and will not be restricted by anything other than its own wallets (many companies think that this flexibility will pay of over time, it usually doesn’t)

There are still many in-house developed CMS systems all over the world being used every single day. Developing an in-house CMS system gives an enormous freedom there are also some major drawback that one should consider:

  • The cost of maintaining and updating the system due to external influence, such as browser and serve updates may require the code to be updated.
  • Technology becomes obsolete. Consider this, many systems is developed using ASP from Microsoft. Many of these CMS systems are still being used today, but over time they become obsolete because the technology is no longer modern. ASP was phased out at the end of the last century when the.net platform was launched by Microsoft yet there are still hundreds of thousands of websites using this technology. One day however Microsoft is going to pull the plug.
  • Many time in-house developed CMS systems depend highly on the person or persons who developed the system to run smoothly. Consider this: The developer who originally developed CMS system 10 years ago leaves the company, and with him/her leaves an enormous amount of knowledge about the CMS system, not only how it is developed, but also how the system is installed, backed up and maintained. A company can soon find itself in a lot of trouble. (This is also one of the problems that many software company find themselves in at some stage or another)
  • Having an in-house developed CMS system sometimes tie up valuable resources (read: very good programmers). This is of course a calculation what should be done.

Note that there are many IT companies using ASP today as unbelievable as it may sound. I know several companies making a good living from selling proprietary CMS systems developed in a technology which has been discontinued. This is not without risk, and these companies have a major investments coming up within the next 5 to 6 years. We can only hope that they are prepared for these investments.

My advice would be to think twice before starting out developing a new CMS system. There are simply too many on the market today, and many of them are very very good, even some of the open-source systems are extremely good. The competition is fierce and I believe that that many fruit how much easier to pick.

Open-source CMS systems
There are many open-source CMS systems available, the market is swamped with open-source CMS systems, some are good, but the majority are poor.

There is no such thing as a free lunch

I tend to agree with this expression, except for over a CMS systems :-) there are many very good free open-source CMS systems and I can almost not find a reason why small companies would want to pay for a commercial CMS system. (Big companies or companies with special needs is a completely different ballgame)

Some advantages of open-source CMS systems are:

  • The systems are free, you can download them straight from the Internet.
  • You can get a copy of the source code (this is extremely important, because with the source code you will be able to make changes and you’re not depending on others).
  • There are many modules available, often for free which you can use to enhance your website (remember many of these modules are not very good, poor quality).
  • With the source code you can develop new modules and extensions to the system.
  • As a general rule it’s fairly easy to find information on the Internet about open-source systems.
  • If you choose a popular open-source CMS system, finding developers who can extend or make changes is easy.
  • The community using an open-source CMS system is usually much bigger than the community using a proprietary CMS system. Hence, getting qualified and unambiguous advice is, everything being equal, easier.

Choosing an open-source CMS system
If you want to use an open-source CMS system spent some time looking around and check out what is available. You should not only look at functionality.

One of the criteria is should also be what people/companies are using were you live. If you take a system such as Typo3 you will see that it is very popular in Denmark, Germany, Switzerland and Austria but not that popular in United States and Australia. On the other hand the CMS system Joomla is more popular in the United States and Australia but it not that popular in Denmark and Germany.
Everything being equal, you would probably be better of using Typo3 if you live in Denmark than using Joomla. Some of the reasons are:

  • It’s easier to find developers who can maintain your system
  • It’s easier to find hosting facilities for your website

Next you look at what is it you want to do with your website. If our goal is to have a blog then neither Typo3 nor Joomla may be the best system to use. You would probably be better of with a WordPress -based system because WordPress is basically a blogging CMS system. It’s great for blogging, but not that great for a shopping cart.

Finally, look around and check out what extensions are available. In doing that don’t forget that 90% of all extensions are of poor quality, often they cannot be used (I am deliberately exaggerating but many free extensions are simply useless, and you should not be blinded by the fact that there are many extensions available to a CMS system, it means nothing when it comes to quality)

CMS system from a CMS provider
There are many companies living from selling solutions based on a proprietary CMS system. Typically these companies will sell you a solution where you get a design, the platform and hosting from the same company. While this is the easiest way to get started there are also some drawbacks one should be aware of.

By using a CMS system from a CMS provider you have several advantages such as:

  • This is the easiest way to start because you get everything from one company and usually do not have to think about getting the graphic design from one company, the programming from another and finally hosting with a third company, everything is being taken care of for you.
  • Many times the CMS provider who also take care of the technical issues such as DNS changes. For the non-technical person can be quite complicated to understand, and therefore it’s nice when it’s done by someone else who understands it.
  • Generally the quality it’s pretty good because CMS provided live from selling systems based on their own CMS system. If the quality is poor they will go out of business.
  • As a general rule that are many modules to choose from, these modules are usually fairly well tested and working quite well.
  • You do not have to worry about hosting, backup and other technical issues. The CMS provider will take care of all this for you. (This is a very important security blanket, especially for people or companies without technical know how)
  • Usually you get things like spam filters, Web mail and even credit for Google ad words and the like included in your package. (Depending on your needs these add-ons can be valuable)

If you choose to use a CMS system provider you will find that some will even give you your website for free! The catch is that you will have to sign up for a one, two or even three year hosting plans. This is how the company earn money. They don’t earn money when you purchase a system from then, instead their money on hosting the solution.

Warning: Many CMS system providers offering free solutions uses standards template-based web designs. The only thing they really do is to change a few colors and then place your logo on the website. You’re not getting your own design at all.

Using a CMS system provider is not without its risks and disadvantages:

  • You are locked with the provider. This is because the provider has its own proprietary CMS system and if you choose to leave after two years the new provider will have to set up a new system and design for you. You cannot take a copy of the source code! It is very important that you understand this. Many companies when purchasing a website from a CMS system provider thinks that they can just move one day if they want by taking their website with them. Remember: you’re married, if you leave it’s like a divorce and divorces costs money and take time!
  • If the CMS system provider goes down (close down, goes belly up or whatever you want to call it) chances are that your website goes with them unless a new company goes in and take over.
  • If you want to add a new module which is not a part of what the CMS system provide offers then it can become quite expensive. The CMS system provider will have to make a custom module for you and at the end of the day there’s only one person/company who pays. If you leave the CMS system provider at a later point in time you loose your investment!
  • You are at the mercy of the CMS system provider. If you have a serious dispute then you have pretty poor cards on your hand.

Just like with the open-source CMS systems spent some time scouting the market if this is the way you want to go. Speak to people/companies who uses the system you’re looking at. Be very careful, and choose only a CMS system provider with a solid track record, ask for references, check the references and be very careful and diligent.

Commercially available CMS systems
In the high-end market there are also very expensive, yet extremely powerful commercially available CMS system such as Microsoft SharePoint and others. The advantages of these systems are many, but they are also complicated and require highly skilled and trained people to run the (or very expensive third-party consultants) which ever you choose.

The systems are usually used in larger corporations, many times with multiple offices and a well-developed IT infrastructure.

There are many advantages to the big commercial CMS systems such as:

  • As a general rule they are developed by large corporations who, everything being equal, are more secure than smaller companies. They will also will be here tomorrow (security for the investment).
  • Usually they are developed in such a way that they are easy (the term easy is relative) to extend and incorporate with other systems.
  • They have a well-developed API (application programming interface) which can be used by your developers to extend the functionality.
  • The API is usually fairly well documented.
  • You can often find professional grade third-party components. These components integrate directly, and are of the high-quality because the cost money (sometimes lots of money) as opposed to open-source components which is free.
  • Many of the companies making these commercial CMS systems also of other complementary products that easily integrates.
  • Scalability, this is very important because as your business grow you don’t want to get hampered due to technical limitations. As a general rule commercial CMS systems are designed to scale up as you business grows. (The implementation of the scaling can be quite expensive, due to software licenses and consultants,but it can be done)
  • You will often be able to find technical staff who are certified to work with the CMS system as opposed to open-source CMS systems where you find many lightweight developers without substance. (I did not mean to pissoff open-source developers, please misunderstand me correctly)

The above is just a short list of many of the advantages you will have by going with commercial grade CMS systems. When this is said and done you have to remember that these commercial grade CMS system are often very expensive and often quite difficult to operate and maintain maing you very dependent on technical staff!

Some of the disadvantages of commercial CMS systems are:

  • The licensing costs are usually very high.
  • The technical staff needed to run and maintained the system can be both scares and very expensive.
  • The system often requires special hardware (servers, routers etc.) which again can be expensive.
  • While the system often integrate and scales well, implementing such integration and scaling can be expensive and complicated to do.
  • The system can be complicated to use for the end-user. Schooling and training may be required. That costs money!
  • It easy to be trapped into thinking that using this high-end and expensive CMS system will solve all problems in a company. It will not, high-end systems are not better than the implementation meaning that if you buy a high-end system but implement it wrongly it will only cost money, and you will get nothing out of it.

The conclusion is that if you want to go with a high-end expensive system such as SharePoint you must have some very clear identifiable goals. If you do not have that you may very well end up losing money, lots of money.
This blog was written by Peter Skouhus. Peter Skouhus is president of 1902 Software Development Corporation, an IT outsourcing company based in Manila, the Philippines.

You can read more about 1902 at http://www.1902software.com in English.

You can read more about 1902 at http://www.1902software.dk in Danish.