Although the terms CMS and CMF are often used interchangeably, content management systems are CMFs that have been developed to fit a purpose. A content management framework, allows a programmer to build a CMS, working from the ground up. The CMF gives the programmer complete control over the code in their web application, which enables the application to run precisely in the way the programmer intends it to run.
After completion, many programmers publish their CMSs under the General Public License (GPL), which makes the CMS an open source application. Although the CMS is ready for use on release, the GPL allows others to make further modifications to the application. Communities often form around an open source CMS. As well as making modifications to the CMS, these open source communities generate new ideas, help keep the application up-todate with new technologies, and help identify and solve potential problems ("bugs"). Open source solutions are excellent because of their ability to effectively extend an application with add-ons and plug-ins, reducing the overall burden of custom coding at no extra cost.
A CMS is a collection of code snippets, which can be used throughout a website. Each CMS comes out-of-the-box with a core or these snippets, which contain many commonly used features. Although you are likely to not need all of those features, they are included in the core. This core is the foundation of any CMS. However, this added baggage can weight your website down and reduce its performance.
If your website handles just a few hundred requests a month it may not show the immediate side affects. If, however, your web site has thousands or millions of requests per hour you will certainly notice the reduced performance of your website as well as the extra cost added to your server's running cost as a result of the over-abundant CMS code. Generally speaking, the more weight you put on your server the more it costs to run your website. In addition, more weight also results in reduced website performance, i.e. slower load times.
It is essential to lighten the server's load, particularly on high traffic websites. Code must be streamlined to cater to the high amount of requests. For this reason, many companies choose a custom content management framework. A custom CMF can eliminate many of the problems that result from bloated open-source content management systems. However, this is not to say that using a custom framework and working from the ground up will improve your website's functionality or its overall speed. Lazy coding practices can easily be implemented on any framework.
For many, open-source CMSs are ideal because they are a safe and easy option for website development. A CMF would have to be coded exceptionally well in order to out perform many open-source CMSs. Additionally, website security is another issue. Many open-source CMSs are secure out-of-the-box. Because a content management framework is a blank canvas, its security really depends on who is coding it, which is another reason many choose open-source solutions.
Remon van de Kamp (Netherlands, Lynth)
Evangelos Evangelou (PricklyPear Media, Cyprus)