Modern Web Content Architecture Series: Part 2

A simple illustration of a web browser containing basic shapes with a gear icon adjacent.

If you haven’t already, check out Part 1 of the series where we introduce the two approaches to modern web content architecture.

A bit of history

The origins of the modern content management system (CMS) can be traced back to the very first website in history. The website was created by Tim Berners-Lee and went live on August 6th, 1991. In 1989, Berners-Lee proposed an internet-based hypertext system (HTML) and subsequently wrote the browser and server software in late 1990. The first websites were wholly static and only included text and links. Support for things like images, forms, tables, and more would be added in the years following.

The rise of the monolithic CMS

As the web gained popularity in the mid-1990s and the need for more frequent updates increased, CMS products were introduced. In 1995 FileNet released an “Integrated Document Management” suite, which offered document imaging, document management, and workflow. FileNet is considered to be the first content management system. Not long after, more CMS’ began to appear, including StoryBuilder from Vignette, Interwoven, Documentum, and many others. These offerings were all proprietary and closed source.

The nature of the offerings began to change in the early 2000s. By this time, CMS’ were dominating the web, which witnessed the emergence of open-source content management systems and frameworks. Open-source CMS’ provided free alternatives to the proprietary or in-house developed CMS’. Popular CMS’ such as Drupal, WordPress, and Joomla were all released in the early to mid-2000s. Drupal was first introduced in 2000, followed by WordPress in 2003, and Joomla in 2005. Today, the number of CMS’ available and their usage is steadily increasing. We’re also seeing increased interest in custom-built CMS’ that are tailored to project-specific needs using open-source frameworks such as Laravel and Symfony.

Pros

Fewer moving parts

A coupled CMS is a system that handles both the content and presentation layers. The combination of front-end display with the backend functionality for managing content and data means that site users, editors, and developers interact with the same application. Having everything in a unified package helps remove some of the barriers associated with website hosting. There are various well-tailored hosting options available, including Acquia, Pantheon, and platform.sh to name a few. Many web hosting companies will include a 1-click install for popular CMS’. Therefore, in many cases, extensive investment in hosting infrastructure is not required.

Well-vetted and large community support

Due in part to their time on the scene and their powerful functionality, traditional open-source CMS’ are particularly well tested, maintained, and easily extendable. There are hundreds (or thousands in some cases) of plugins and modules to add pretty much any feature or functionality to your content site, created, tested, and improved upon by open-source contributors. In addition to the large developer communities surrounding these frameworks, many internet users are also familiar with them: Drupal powers 1 in 30, and WordPress powers 40% of websites in the world.

Editor experience

The vast exposure to these popular open-source frameworks is not limited to developers and site users. Because they’ve been around for a long time, many web administrators, editors, and content creators have familiarity or even a deep understanding of the admin/editor interfaces that these frameworks provide.

The editor experience is a content management systems bread and butter. Content editing is what these platforms are built to do. For most CMS’ the default editor experience can be significantly enhanced by way of additional plugins or modules. CMS frameworks typically include robust role and permission systems out of the box, which lends itself well to structuring content editorial workflow. Advanced workflows may also be included or are easy to add on through a plugin or module.

Cons

Boring tech club

Popular content management systems have been around for a long time, and they aren’t the first choice for most newer developers. Why? There are a few reasons. Among them is their age. In internet years, the most popular CMS’ are old and can be viewed as archaic. Despite having been updated to use more modern technology, they still suffer from that image. A lot of developers want to use newer tools and frameworks that are ascending in popularity. Onboarding can also be a bit tricky as the traditional CMS ecosystem is vast, documentation can be challenging to find or dense, and occasionally esoteric. So, your developers may not be as excited about using a long-standing framework, but not everyone thinks Boring Tech is bad. 

Security updates

The popularity and worldwide use of these open-source content management systems mean that they are frequent targets for hackers. One needs to remain vigilant in monitoring for security updates. Most often, there are options to receive security update notifications via email.

Performance

The extensible nature of these tools and frameworks makes it so easy to add extensions and enhancements that over time, and without discipline, sites can easily end up bloated. As the site or application evolves and features are added or changed, it’s important to audit the enabled addons and verify their utility.

Investments and usage

The usage statistics for some of these platforms are staggering. More impressively, usage and popularity are still on the rise. Drupal and WordPress both have large and very active development communities, resulting in regular updates and feature additions.

It's not only the usage numbers but also the ecosystem around WordPress that is remarkable (1).

Drupal contribution increased by 13% during 2020, despite the global COVID-19 pandemic (2).

When to choose this approach

Despite the esoteric nature of these monolithic frameworks, they are extremely powerful. If you find yourself thinking about making a decoupled project knowing you need a full-bodied, flexible user interface, we’d recommend pausing and taking a step back. These CMS’ are pretty adept at what they were built to do: manage content. We often advise our clients and peers to start with goals and then select a technology approach that best meets those goals and not the other way around.

If your goal is to create a site with the web (desktop, tablet, mobile) as your primary distribution channel, a coupled CMS is likely what you need. If you want to have an omnichannel presence, a headless or decoupled platform may be a better choice. It’s worth mentioning that the list of pros and cons outlined above is situational and can be project-dependent. Not all projects will benefit from the “pros”, and many of the “cons” can be overcome with proper planning and forward-thinking.

Work in the wild

Here are some examples of high-profile websites using open-source CMS frameworks.