Often proprietary software companies will release marketing material that does not directly attempt to boost sales of their particular product, but instead attempts to convey an idealogical argument in favour of their own particular approach.We were recently forwarded an example of this, in the form of a PDF “Choosing the best CMS whitepaper” made by Sitecore. The document does not explicitly sell Sitecore's CMS product, but rather attempts to undermine the alternatives by criticising the choices and tradeoffs that have been made. These criticisms are mainly focused on the technology platforms and organisational models used by various CMS projects, although no specific examples are explicitly named.
Out of the extensive list of recommendations, ocPortal meets all but two (both of which we don't agree with). The first is to be written in .NET or Java, whilst ocPortal is written in PHP. The document has the following to say about PHP and the companies and websites which use it:
“PHP is a general-purpose scripting language for web development. It is also used in some open-source CMS offerings. Because it’s easy to learn, PHP is often used by small companies for simple websites. Medium and large businesses however, are much more likely to choose .NET for its compatibility with Microsoft technology and because their developers are already trained in .NET.”
Whilst there is no specific issue taken with PHP, and in fact it is complimented for being easy to learn, there is the implication that it is only useful for simplistic sites. There is no evidence given for this claim, but it is easy to find websites which are far from simple which use PHP, either wholly or in combination with other platforms:
The Indian Government website - http://india.gov.in
The French Government website - http://www.diplomatie.gouv.fr
The US Government website (in conjunction with Java) - http://www.usa.gov
The Japanese Government website (in conjunction with .NET) - http://www.mofa.go.jp
The assumption that .NET is the only solution which provides the required compatibility is also given without evidence. Whilst it cannot be denied that Microsoft technologies are widespread in business, this does not mean that such infrastructure is incompatible with other platforms. Relying on such inter-dependencies is known as “vendor lock-in”, whilst there are many technologies, such as the various XML standards, which allow inter-operability without requiring inter-dependence. In fact, Microsoft explicitly support PHP solutions in their Web platforms, especially the Windows Web App Gallery, which even support a one-click installation of ocPortal on top of Microsoft's Web server (http://www.microsoft.com/web/gallery/ocportal.aspx).
In addition, the governments of the BRIC countries (Brazil, Russia, India, China) all use Open Source technologies to manage their Web presence (including Linux, Apache and a variety of Open Source languages). Such governments are not as encumbered by the need to maintain legacy systems, and are focused instead on making the most efficient usage of their resources, and it is widely known how well these countries are performing.
The second thing we don't agree with is where the document mentions:
“Real-time personalization. A good web CMS can transform an already dynamic website experience into a completely fluid one by allowing your site to adjust content in real time as a visitor moves through it constantly offering the most relevant content and features. Best of all, the web CMS accomplishes this not with a roomful of coders but through sliders, checkboxes, rules wizards, multivariate and A/B splittesting, and dialogs that let you develop detailed visitor profiles.”
We believe that websites should be consistent throughout. Whilst dynamic content may be embedded throughout a site, this should serve as an aid to the main navigational structure. The most important attribute of a website is that its information is easy to find. No book on information architecture will advocate the “fluid” navigation described above; instead the focus is on clear navigation.Aside from navigation issues, the other problems with such dynamism are that users need a reliable way to direct others to specific content (for example via a URL), and the ability to tell which areas of a site have already been browsed and which have not.
Open Source vs Commercial CMS
In the second section the document compares Open Source vs commercial models in the context of CMS solutions. Although the distinction may be ambiguous (as there are many companies which make a living from Open Source products) many of the points are perfectly valid, such as “Open Source is not synonymous with free”. However, statements like this do not concede an advantage to the commercial offerings, they simply mean that the choice of CMS requires consideration of areas such as flexibility, maintainability, support, etc. rather than simply comparing license costs. This is something any serious investment should consider in any case.
Along with these statements there are arguments which are self-contradicting, such as warning about support fees for Open Source platforms, then later asking the reader “to consider whether you’re willing to forego commercial-grade support”. Not only is this contradicting itself, but it is also making a broad generalisation about an area which is in fact very diverse, with CMS platforms being managed via many different models.
At one end of the spectrum there are completely community-driven projects like Joomla. Whilst there is no central company to hire for development work, there is still a market for experienced developers, available for hire to perform customisation work. This contradicts the document's claim that “you will need to develop much of the capabilities you need on your own”.
At the other extreme there are Open Source projects which are driven by a commercial organisation alongside the user/developer community, as is the case with ocPortal and ocProducts. ocProducts provides commercial support offerings, which also cover enhancements and training, but this does not make ocPortal any less Open Source, and does not remove the advantage of the developer market. Indeed, ocProducts release all of our developer documentation and tools (for example our code quality checker) under the same terms as ocPortal, to help other companies which want to keep custom development in house. We also offer a partner directory of other companies who support ocPortal to help end users find the best company for them.The Whitepaper also makes the following bold claims about Open Source vs commercial solutions:
“If you consider your website a key strategic component of your business, an open source solution may not deliver the performance, security, reliability, and functionality you need to sustain a high-quality, compelling customer experience.”
As far as security goes, the above statement is completely false. An Open Source project generally has many more users and developers testing and using the CMS to be able to spot security problems, whereas a commercial CMS may only have a small percentage of users and developers working on it. In addition, the Open Source nature of PHP has allowed ocProducts to create a custom version of PHP designed for automatically picking up security errors, which is something difficult or impossible to do in .NET.
The other claims are also unfounded and vague. There are examples of good and bad solutions from both Open Source and commercial sides. As mentioned with security, there are many parties with a vested interest in Open Source technologies, and the more users and developers there are, the more development investment is made. This is in contrast to the commercial approach, where the controlling organisation must specifically schedule developer resources to focus on issues like performance, security and reliability.