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?

Photo by Samuel Zeller via Unsplash
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

With the enormous rise in popularity of JavaScript and client-side frameworks and libraries it’s getting harder and harder to use traditional content management systems for your (web)apps. We don’t only require content management systems to be flexible, safe, fast, etc, but we now also need it to be able to deliver content in a multiple of ways for a multiple of projects. It isn’t uncommon nowadays to build webapps / websites, native apps, internet of things devices, analytics-dashboards, etc which all have to get data from the same database. This bigger amount of required platforms also means that a single-output-CMS just simply isn’t enough anymore.

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.

Like what you read? Give Rijk van Zanten a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.