Hi! I’m Kiryl Maltsav, a 21-year-old who recently graduated, and is currently working as a junior Java developer at ACA...
6 CMS products, 6 developers : 1 CMS SmackdownDorien Jorissen
If you are looking for a Content Management System (CMS) and you don’t know where to start… don’t worry. We have already done the heavy lifting for you.
When we decided to create a brand new site for the launch of our revamped business unit, COIN (Content and Information Solutions ), we started with an Information Architecture Study. Why? Because we value the input of our clients and prospects and we believe our site needs to be built for them and not for us. After all, they will be visiting our site the most and the information we provide has to fulfill their needs.
Based on the results of the Information Architecture Study and the functional requirements, we created a checklist. This list was divided into three categories:
- “must haves”: the bare necessities
- “would make life so much easier”: features that could facilitate or automate something so drastically that it’s nearly a “must have”
- “nice to haves”: bells and whistles
While sweeping the world wide web, we created a long list of Content Management Systems. Comparing these 40+ products with our checklist, we noticed that almost every single one of them mastered the “must haves”. Much of them also had a few “would make live so much easier” and “nice to have” checkboxes ticked off. But only a few covered almost all the “would make live so much easier” requirements. In random order: WordPress, Drupal, Jahia Digital Factory, Magnolia, Hippo, Prismic.io.
To be able to verify if these 6 products really are “as good as it gets” or if they only rock on paper, we decided to give them a test run.
Our designer made a nifty design for the new COIN website.
Our engineers had to turn this design into a working website. 6 of our engineers volunteered to enter in a smackdown: to build as much as possible in 6 hours. And while our solutions engineers were working hard, we made a movie 😉
So, what was the verdict on the 6 CMS products… ?
CMS number 1: WordPress
WordPress is by far the most popular CMS available on the market today. It is open-source, written in PHP and does not require license fees and is used by several Fortune 500 companies. Due to its popularity, it has a large user base and active online community, contributing to the massive set of available plugins. Some of the more popular plugins include SEO tools, Disqus integration for comments and Google Analytics. Documentation is also readily available, both by WordPress as by blog posts of regular users.
The installation and set-up of the system is well documented, and easy to follow. The creation of content types is easy and intuitive, but requires the installation of some plugins. Our in-house developer’s sliced design was easy to integrate and inject with dynamic content. Also the creation of the site structure, including pages and the global menu navigation were like a walk in the park.
During hands-on development with WordPress we did not encounter many problems, or at least no problems which weren’t easily resolved. However, we did notice that by relieving the developer of a lot of development work, a lot of HTML gets generated over which the developer has not control. This makes it more difficult to plug in existing frameworks, like Bootstrap. In terms of features we only really missed in-page editing, offered by most of the other CMSs.
CMS Number 2: Drupal
Drupal is also one of the better known Content Management Systems out there, implemented in PHP. It also reaps the benefits of having a large active online community, and the large base of modules associated with it. These modules are quite important, since they form the basis of the whole system.
Drupal is an empty box that gets most of its features by adding modules. The idea of encapsulating most functionality in modules and allowing users to develop or choose these themselves is a perfectly good and viable solution. But, it does increase the learning curve. You need to have a good understanding of the modules that are available. In various cases you will need to combine modules to achieve a certain goal, which isn’t always easy when you are new to the platform. Therefore setting up Drupal requires a lot of product knowledge to navigate through all the available modules, picking the right ones and configuring them correctly.
Once setup, the CMS performs well. The creation of content types and fields is easy and there is a lot flexibility in the creation of templates. It also handles basic user management quite well.
Drupal has chosen flexibility over convenience, imposing a steep learning curve and needing lots of setup and development work to get started.
CMS Number 3: Jahia
Jahia is a Java-based open-source CMS, based on JCR. It strives to become the reference user experience platform. The Digital Factory is the CMS part of the platform. It promises to be able to handle multiple sites, with multi-channel content delivery and powerful content editing tools.
Jahia is easy to setup and install, since it has its own application server embedded, reducing the installation to the startup of the server. It also integrates easily with source control systems like Git and SVN, and picks up changes in modules immediately after deployment. There are a lot of available modules, which are manageable on a per site basis. Content management, the creation of sites, pages and content are straightforward. Integration with Google Analytics is also available.
Unfortunately, there are also downsides to this CMS. The content editor, which is probably one of the most important components, is not intuitive and quite hard to understand. It contains a lot of functionality, making it complex. It also seemed to have some technical visualisation problems. The learning curve is not only steep for content editors, but also for developers. It is quite hard to integrate an HTML / JS design provided by a web designer. It is also quite difficult to define content items. We weren’t able to create a decent webpage based on our design.
We only had a short period of time to spend with Jahia. It proved to be the most challenging to configure and use. Jahia offers a rich feature set, but requires more time to explore and understand it.
CMS Number 4: Magnolia
Magnolia is a Java-based open-source CMS, based on JCR, with a highly modular architecture. It is used by several large companies, such as Atlassian and Airbus. The basic set-up consists of two instances: the “author” and the “public” one. The author instance is often deployed in a secure environment and can push content to the public instance, which is available to the intra/internet.
Magnolia shines in the integration of templates and reuse of elements. Page templates can be written in plain HTML/FTL files and are automatically picked up and deployed by the system. A sliced design can be used without any modifications. In these templates it is possible to define dynamic elements based on standard components such as an input-element or checkbox. These elements can then be grouped in blocks and reused in other page templates.
On the downside: the interface is quite complex and not intuitive, at least not for non-technical users. It is also very hard to define content types in the standard Magnolia system. End-users are not able to define them out of the box. Fetching content in page templates is also not straight-forward and requires the use of poorly documented query APIs.
Magnolia is a powerful Java CMS that offers the flexibility and the capability to go further than only managing content. Although it’s not the most effortless CMS, its Java-character allows developers with a strong Java background to take away most headaches and integrate and customise it to the needs of the end-user.
CMS Number 5: Hippo
Hippo is a Java-based open-source CMS, based on JCR. It boasts about providing relevant experiences through audience targeting and multi-channel content availability. By focusing on the content instead of a particular channel (like a website), the same content can be published to multiple channels, such as your website, mobile apps or even social media.
Hippo is very easy to install since its packaged together with a web server. It has a clean, intuitive interface to create content and content types. It also provides the basic content management operations, such as publishing and deleting content and taking it offline. When incorporating a sliced HTML design, it must be modified only a little. The static URLs must be rewritten and the containers specified. These containers can be filled with all sorts of components which can contain dynamic content. These components can be added by means of drag-and-drop. One of these components is the SEO component, to make the page more accessible for search engines.
On the other hand, the creation of containers, page prototypes, basic configuration, etc. is quite complex and needs to be handled by a developer. Although most of it is documented, the documentation did not always suffice, partly due to the complexity of it.
Hippo is a very intuitive and user-friendly CMS for content editors, containing all the right tools to easily get the content to the user. However, the steep learning curve and complex development tools require skilled developers who know Hippo inside-out.
CMS Number 6: Prismic
Prismic is a revolutionary new product in the world of CMS, embracing the ongoing shift to cloud-based computing and applying a whole different paradigm in the process. The core of the CMS is offered as a service (SaaS), which focuses only on managing content assets. This content is offered through a REST API, consumed by your own applications / websites. Offering the content through a REST API implies that the website or application is technology-independent, allowing the use of any framework, language or technology with the best fit for the purpose.
Focusing on the core of content management allowed the developers of Prismic.io to build a very intuitive and clean interface to manage content, even for non-technical users. On top of the regular content editing features, it also offers Google Analytics integration and A/B testing tools. The freedom in terms of front-end technology allows us to use the design without much modifications, only the necessary template engine logic needs to added.
However, with a lot of freedom comes a lot of responsibility and choices to be made, requiring the need for skilled developers familiar with various technologies. There are also some concepts missing which are quite normal in other CMSs, like the concept of pages. Because the CMS is actually just a big content repository that can be accessed, the concept of pages does not exist, which (when required) is the responsibility of the consuming application. It also lacks the concept of modules, which implies a big development effort when other functionality or integration with other services are required.
There are also some concerns in terms of using a cloud-based provider. There is inevitably a strong reliance on the provider, including the servers of the provider.
Prismic.io is a new cutting-edge product that offers a lot of freedom and a whole new and fresh approach to managing content. However, this new approach implies the need for more experienced developers.
Let me get straight to the point… For our specific use case, Prismic.io was the best choice and this is why:
– We are a small company and only have a few content editors. User permissions are not out of the box, so managing roles and rights is less interesting in Prismic.io.
– We have our own development team (it would be weird, being a software implementation partner, if we wouldn’t have).
– Having a central content repository is a very powerful concept that we value highly.
Although Prismic.io was chosen as our winner, two other platforms came close.
– WordPress made a very good impression. Both on content editing and development perspective it was a very straightforward and easy to use product. But implementing our design was a tad more difficult.
– Although Magnolia is a platform with a higher learning curve, it is a very robust system, with a lot of possibilities. We did not pick Magnolia because the platform is too big for our needs.
When evaluating the different tools, we decided to do this from two perspectives: corporate (or small) companies and enterprise (or large) companies. Small companies are mostly not able to invest too much time and resources into development and learning the in and outs of their new CMS. That’s why we chose “Development vs Configuration” and “The content editor’s learning curve” as important metrics. Large enterprises tend to require a comprehensive system that’s probably complex. They are able to hire a product partner that implements and configures the product for them. This is a completely different use case and needs different metrics to decide on the correct tool: we picked “The feature set” and the “Partner network” as key metrics for large companies.
So, which CMS is a good fit for your company? If you’re still doubting about which features you really need or you want us to guide you in doing an information architecture study or functional analysis, then don’t hesitate to contact us.