For someone outside of the tech industry, the idea of “open source” can be somewhat opaque, particularly when you are trying to investigate qualitative differences between an open source and closed source Content Management System (CMS). If you Google “open source versus closed source,” the articles that come up tend to be opinion-based, which can make gleaning the “facts”—if that term can be applied here—quite challenging. Even within the industry, the topic is contentious as developers have their preferred platforms.
The goal of this blog post is to help you gain a better understanding of what open source means and to outline some key considerations when selecting a Content Management System. Before we discuss open source and closed source systems, you’ll need to first understand what a Content Management System is.
What is a Content Management System (CMS)?
The term “Content Management System” refers to website software like Drupal or WordPress that allows non-technical users to manipulate and manage their own websites. The user-friendliness of a CMS simplifies backend changes, so that the average person (without a background in IT or web development) can perform tasks like adding web pages to the site, updating content, posting or taking down photos, altering graphics, etc.—all with relative ease.
What is Open Source?
An open source CMS, as the name implies, allows open access to the source code, which means developers can freely use, modify, and improve the software without charge. Because of its open and public nature, open source software is often created and worked on collaboratively by a community of developers.
What is Closed Source?
A closed source CMS is proprietary software, meaning it is licensed, developed, and owned by a single entity (a company or organization). Users are typically required to purchase access to a closed system, and even after purchase the software belongs exclusively to the copyright holder; use/implementation is restricted, which bars developers from modifying or redistributing the software.
In short, open source software is free and modifiable, and closed source is purchased and its source code cannot be altered.
Comparing open source and closed source can generate heated debate; however, in order to illuminate some of the points of contrast between the two types of CMSs, let’s look at some key considerations when choosing software.
Open Source vs. Closed Source: Key Considerations:
Cost is a factor in any business decision. A big selling point of open source systems is that they are free. Developers are allowed to use the source code without charge and tweak or add features and functionality. These savings are passed along to you, the customer. Conversely, closed source systems range dramatically in price, depending on the size and scope of the project. An example of a company that would elect to go with a closed source CMS is one like Amazon, due to the level of customization they require. Larger enterprises often need heftier systems tailored to the intricacies of their business. Most small and medium-sized companies’ needs can easily be met with flexible open source options. While powered by closed source, even Amazon has some open source web services that third-parties can use to integrate with their sites.
When making comparisons of quality between open and closed source, it is not really fair or accurate to argue that one is “better” than the other—there are too many factors for sweeping generalizations to be useful. Quality is a complicated issue that comes down to the specific software and its implementation. That being said, the adage “there is strength in numbers” can be a helpful gauge. For instance, Drupal has a large community of experienced developers, which is a good indicator of quality and ultimately user satisfaction.
As with quality, security is another issue where it would be inaccurate to declare definitively that one system is inherently more secure than the other. It is a common myth that closed source is less vulnerable to attacks because its source code is not publicly available (and conversely that open source’s disclosure about its bugs/vulnerabilities makes it easier for hackers to exploit weaknesses). However, the most common threats are Cross-Site Scripting or SQL injection attacks, and because of the way these attacks are made (usually through HTML form data), whether the system is open or closed is irrelevant. Moreover, it is precisely through open source’s full disclosure that developers can do their due diligence in preventing third-party tampering. Likewise, a closed source CMS could have equally attentive developers who are adept at de-bugging and circumventing security breaches.
The fact that many eyes see open source code offers a high potential for quality assurance in the maintenance of your CMS. The availability of documentation, frequent updates, and prompt fixes for bugs are the hallmarks of what makes collaborative development so successful. An additional benefit is the flexibility of an open source CMS; you can modify and add to your code in a way that allows your site to grow with you and evolve over time. In contrast, a closed source system is fixed/rigid, as is. You are locked out of its framework, so you are prohibited from make any changes. It is a very real possibility that you could outgrow it, at which point you would have to start over with a replacement system.
Closed source software offers support through user manuals and help lines. The mere allocation of support personnel, however, does not speak to the quality of the service you will receive, nor does it ensure that your issues will be successfully resolved. With closed source, because the vendor holds exclusive access to the backend, you are at their mercy as you cannot control the timing or quality of the assistance they provide. If you do not feel adequately supported, you cannot take your business elsewhere; you’re locked in.
Open source platforms like Drupal typically provide support through user communities and forums, and paid assistance is also available through third-parties.
If you run into problems with error messages or you need a feature to be modified, it is important to have professionals you can count on to troubleshoot and provide fixes.