Content Management Systems in 2017
Managing content for websites has been done using content management systems (CMS) for years now. With the rise of progressive web apps (PWAs) and more diverse tech stacks finding the right solution to manage your data is getting harder and harder. Is there still a place for the traditional CMS in 2017?
Full disclosure: this is mostly based on my personal opinion. I have mainly worked with WordPress for the past couple of years on numerous projects and am currently an active maintainer of the headless CMS Directus.
The Problems a CMS Solves
Updating content and maintaining a website can be a lot of work. Especially if your site updates often (like blogs). Some projects — like webshops — aren’t possible without content management systems at all.
First of all, managing multiple (comparable) pages in plain HTML is an enormous task. Being able to create one or multiple template files which get filled with content automagically drastically decreases development time for most projects.
Next to the increased development speed this reliance on templates also means that non-technical people can update the content of a website without having to mess around in code.
The Problems a CMS Creates
There is one common disadvantage that can be found in most traditional content management systems: they’re quite locked in. Often, you have to use proprietary templating languages or functions and are databases modeled to work with a single content management system. Those who tried moving from one content management system to another might know the struggles of migrating content from one database-schema design to another (don’t get me started on wp_post_meta). You don’t build a website which uses WordPress, you build a WordPress website.
New Tech: New Problems
APIs to the Rescue
We have seen a shift recently where content management systems start providing application programming interfaces (API) for managing the data in the content management system. Some are even designed API-first and provide an admin layer for convenience. These so-called “headless” content management systems allow developers to integrate a single source of content into a multitude of projects and clients. Since the content is strictly decoupled from the output, the possibilities are endless.
I don’t think content management systems will be gone anytime soon. Quite the opposite even. I think web-admin based content management systems will be used for more and more products. Need an internal customer relationship management system? Need a place to store your local sportsclub’s game scores? Want to build a portfolio site? A headless can and will solve your content management problems.