Tuesday, January 23, 2007

Open Source Content Management Systems - An Overview

Publishing documents on the World Wide Web can seem daunting for the self proclaimed ludites out there. Let's face it HTML, XML, CSS, JavaScript to name just a few of the technologies that you would need to be familiar with in order to develop a truly professional looking website for yourself or your business. Fortunately there is a solution to the problem, it is called a content management system and it is an easier way for just about anyone willing to learn to publish to the Internet.

Some of these content management systems have stemmed from the need of publishing data to the web. CNet for example created one of their own in house content management systems which they later spun off into a separate company called Vignette. Since publishing to the web began to take off in 1995 the development of these systems has really begun to progress. However my focus will be only on open source versions of the web content management systems.

The first open source system that I want to mention is called DotNetNuke (http://www.dotnetnuke.com) which is a AsP.Net based system. By far one of the more popular open source projects out there today DotNetNuke has an avid following of hundreds of thousands of users. The benefits of using this system is the rapid updates to the platform and the intense support you will receive from it community. These are two very important factors when considering an open source system, the level of updates and the support you will receive from its creators or users of the platform. Further the innovations that are built into this system make it one powerful application by any measure. For instance the skinning mechanism is by far one of the easiest to modify and customize and the scheduling processor reduces some of the more mundane tasks of maintaining any website.

However DotNetNuke does not come without any drawbacks. Since this system was developed in ASP.Net this means that you will need at least Visual Studio 2003 Professional or greater in order to truly modify the source and customize the system as you see fit. This can be a serious drawback as the cost of this development platform can run into the hundreds of dollars.

The second open source system that I have some experience in using is called AXCMS.Net (http://www.axcms.net) which is again built upon the .Net platform. This system is as feature rich as other open source systems such as DotNetNuke. However, this system has some definite drawbacks. First is its somewhat difficult setup and deployment problems that can seriously hinder any project. Also, there does not seem to be as an avid user base as DotNetNuke. However the system is as "solid" as they get and you will definitely be rewarded by your efforts once you have the system fully setup and ready to use. Also since this system is really a neat way to get introduced to the development team any updates or customizations you may need will be for a fee from the creators of the system. This really hinders the community support of the system and makes adoption that much harder.

There are many other open source systems out there with some more being developed as I write this article. The main factors when adopting any open source content management systems you should consider are: how well is this system supported by the community and how often is this system updated by its core development team. Even an open source system can have some hidden cost that must be considered before adoption into any business or enterprise.