Tuesday, May 02, 2006

What is a Content Management System?

One of the most innovative benefits of dynamic web programming is content management systems that make the life of internet content editors easy and their work visually attractive.

Imagine that you are the editor of an online newspaper or magazine. You are creative in your writings and very knowledgeable about the content you write about; however, these skills alone are not good enough to be able to work in an online "news" source. You must have at least the very basic knowledge on the functions and the tags of HTML (Hypertext Markup Language). You must be able to create codes for the presentations of your articles. This process of writing web articles can be very frustrating (and exhausting) if you have never heard about Content Management Systems.

A CMS (Content Management System) is almost like a personal automated web page author. You write your articles, surveys, and rating systems as if you are using a word processor or a visual editing program. Driven by the data you put in, the CMS stores all of these in a database and then translates them into HTML. The CMS basically acts like a translator between you and the browsers by creating very user friendly graphical interfaces.

A CMS generally has a front-end and a back-end. The front-end obviously refers to the face of the site that each visitor sees. The back-end is the user-friendly graphical interface where you can edit your content or the template with the help of the many wizards that are supplied by these systems. Let's say you needed to write a code for a user-upload function in the site, or a survey system that would enable users to vote on your articles; you don't even need to touch Dreamweaver, Frontpage, or any kind of HTML editor; there are already hundreds of modules that are written for different CMS's. You just download the module to your server and install it.

There are loads of Content Management Systems online that are presented as Freeware or Open Source. Below are some suggestions:

Typo3: If you think yourself a professional and think that you can deal with some PHP coding, this robust and very flexible system is just for you. http://www.typo3.com

Mambo: If you say "No, thanks. I don't want to deal with PHP coding, I am doing this as a hobby", then Mambo should be your choice since it does not require the user to change much and is already supported by many ready-to-install modules and templates. http://www.mamboserver.com

PHP-Nuke: This CMS does not require any coding knowledge and has many downloadable modules, blocks and themes online. http://www.phpnuke.org

In summary, the CMS makes our life much easier than before and our sites much more attractive. They are the "operating systems", personal coders and free translators of the web.