The concept of a content management system, the ability to manage content without worrying about messing up the look and feel of a site, is extremely powerful and has transformed how most of us approach the web. If we really consider that a content management system is any system that allows people to mange content through the web, sites like Facebook or Myspace could be considered content management systems at their cores. However, like most uses of content management systems, they’re limited to editing only a little bit of content, mostly text.
The true power a CMS is in the modules and the whole world of possibilities that modules allow. A few of the major open source CMS systems have become even more powerful over the last couple of years because of the number of modules contributed to them. A basic WordPress installation is a great platform for blogging, but with the simple addition on the All-In-One SEO Pack, it becomes a search engine powerhouse, pushing content to the top of rankings. Using the CCK and Views modules in Drupal can transform it from a basic content management system into a dynamic, ever changing system that automatically aggregates and keeps track of an amazing array of data on a site.
There are literally thousands of content management systems available for the creation of CMS websites, but only a few are worth using. The ones that are worth using have an active developer community that is constantly adding new modules. The new modules add new functionality that your site may need and that, if you developed the function yourself, would take tens or hundreds of hours to develop.
Using a good module based, open source CMS with thousands of contributed modules (wordpress, drupal, joomla), you can create an incredibly feature rich website in literally a few hours. For example, by installing Drupal, CCK, Views, Token, Organic Groups, Messaging, Advanced Profile and a few other modules, you can create a pretty robust social network in an afternoon. It might not be as easy as using Ning, but it is certainly much easier to manipulate and customize as your site grows. And, if you ever want something that’s unavailable as a module, you can either create it yourself or you can easily hire someone to do it from elance or odesk.
The power of modules comes into effect most when you’re hiring someone to build a website for you. In the past, creating a social network or a complex website would cost hundreds of thousands of dollars in developer time. The process would last months and each piece (messaging, profiles, groups, etc) would have to be programmed and debugged individually. Now with social networks, each of the pieces have been tested already by a large user base, so it’s just a matter of putting the pieces together. Developers can have complicated web applications put together in twenty or thirty hours instead of three or four hundred hours.