Seven Criteria for Evaluating Open-Source Content Management Systems
Using a content management system (CMS) to manage a Web site used to be a luxury within the reach of only those who had the technical resources to build a custom solution or the financial resources to afford a proprietary one. In recent years, numerous pre-built open-source CMSes have emerged as viable alternatives to costly proprietary products or custom-built solutions.
Cost savings are not the only reason why open-source CMSes are gaining in popularity. Unlike proprietary products, the source code for open-source CMSes is freely available so it is possible to customize the CMS to match your project's requirements. Customized versions also can be redistributed according to the terms of their licenses. In addition, the benefit of free technical support provided by the Open Source community cannot be discounted.
Development and long-term maintenance costs of a custom-built CMS can be high. Keeping up with new requirements or security issues can take a lot of time and effort. Open-source CMSes combine the advantages of the proprietary and custom-built approaches--a pre-built CMS that is ready to use but can be customized if needed.
In his April 2005 column, Linux Journal columnist Reuven Lerner observed:
It used to be that you needed to search high and low for an open-source application that would suit your needs. Nowadays, it still takes time to find the right application, but that's because you need to sort through so many bad or inappropriate ones before finding the one that is right for you.
Choosing a pre-built CMS from the large number of alternatives can be an overwhelming task. They come in several shapes and sizes, employing different platforms, programming languages and content management approaches. Complicating the decision-making process, open-source CMS projects are at varying stages of development, from stable and reliable applications to cutting-edge experiments. How do you decide which one is right for you?
The CMS Matrix (see Resources) is a community-maintained list of over 300 CMSes, both proprietary and open source. This list may not be comprehensive, but it is a good place to start. This Web site makes it easy to review CMS details such as system requirements, availability of technical support, ease of use, performance, security, interoperability, flexibility and commerce. It also features a convenient matrix to conduct a side-by-side comparison of up to 10 CMSes at a time. But you still need to decide which ones to compare and evaluate. I use the following seven criteria to evaluate potential CMS candidates:
Web application platform
Stability and development activity
Documentation and source code
Web standards, accessibility
Suitability and usability
Most CMSes use a database, at least one programming language and a Web server. If you have experience with a particular programming language, database or Web server, you might want to consider an open-source CMS that uses those components. If you plan to customize the CMS, familiarity with the various components used by the CMS is especially beneficial.
If you do not have a preference or technical limitations, consider CMSes built using the popular open-source LAMP platform. The first three letters in LAMP stands for the GNU/Linux operating system, the Apache Web server and the MySQL database. In addition, although it does not fit neatly into the LAMP acronym, the open-source database PostgreSQL also is used in this combination. The P in LAMP stands for a programming/scripting language; the most common choices are Perl, Python and PHP. The LAMP platform is stable and regarded as "a mature alternative that has a lot to offer, particularly for projects on a tight budget" (McAllister, 2005). It also is easy to find Web hosting services that provide LAMP hosting.
The flexibility offered by a CMS that can run on multiple operating systems is an advantage, because it doesn't tie down your content management solution to a single operating system. Open-source CMSes built on the LAMP platform often run on operating systems other than GNU/Linux. Some even allow you to use alternate databases. Check which operating systems and databases are supported by the CMS you are evaluating.
The key distinguishing feature and value of open-source software is the license under which it is offered. It is important to check the license of the CMS you are considering, particularly if you are going to modify the software and plan to redistribute it. Simply because it claims to be open may not mean the CMS offers the benefits and protections that you might be expecting. The Open Source Initiative has a list of approved licenses. The Free Software Foundation (FSF) also provides a list of licenses along with a commentary. Check the license of the CMS you are considering against both of these resources. One license that you are most likely to encounter is the GNU General Public License (GPL). Invest the time to understand the GNU GPL, as it is used by many of the leading open-source CMS projects.
Fast/Flexible Linux OS Recovery
On Demand Now
In this live one-hour webinar, learn how to enhance your existing backup strategies for complete disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible full-system recovery solution for UNIX and Linux systems.
Join Linux Journal's Shawn Powers and David Huffman, President/CEO, Storix, Inc.
Free to Linux Journal readers.Register Now!
- Download "Linux Management with Red Hat Satellite: Measuring Business Impact and ROI"
- Chris Birchall's Re-Engineering Legacy Software (Manning Publications)
- The Italian Army Switches to LibreOffice
- Linux Mint 18
- Petros Koutoupis' RapidDisk
- ServersCheck's Thermal Imaging Camera Sensor
- Oracle vs. Google: Round 2
- The FBI and the Mozilla Foundation Lock Horns over Known Security Hole
- Privacy and the New Math
Until recently, IBM’s Power Platform was looked upon as being the system that hosted IBM’s flavor of UNIX and proprietary operating system called IBM i. These servers often are found in medium-size businesses running ERP, CRM and financials for on-premise customers. By enabling the Power platform to run the Linux OS, IBM now has positioned Power to be the platform of choice for those already running Linux that are facing scalability issues, especially customers looking at analytics, big data or cloud computing.
￼Running Linux on IBM’s Power hardware offers some obvious benefits, including improved processing speed and memory bandwidth, inherent security, and simpler deployment and management. But if you look beyond the impressive architecture, you’ll also find an open ecosystem that has given rise to a strong, innovative community, as well as an inventory of system and network management applications that really help leverage the benefits offered by running Linux on Power.Get the Guide