Closing Headless Content Management
Some closing thoughts from me here in regard to the decision taken by the Swiss government to use a headless solution as content management service as of January 2023 [1]. It’s a personal closure as I was hired by the Chancellory to help in the decision making process as an expert in software architecture with a focus on web technology starting in 2019.
The Swiss government isn’t an early adopter. It was clear from the start that the decision would see the final system through decades of operations. So sustainability was a big topic for me from the start.
What was the problem?
The problem boiled down to the difference between a monolith and a service oriented architecture. Monoliths were really great in the 90s and early 2000s when we didn’t have a Cloud and running stuff on single boxes of metal was important. All the code had to live on a single machine and that’s why we know about anti-patterns like Big Ball of Mud [2] today.
As an architect however, it’s clear to me, that separation of concerns and encapsulation are important in the publishing domain. If content and formatting are mixed up in one bucket, one cannot change without the other. Which in layman’s terms means that you cannnot redesign your website unless you rewrite and re-produce all the content on it. Which is very expensive.
The key problem here is that some of the old monolithic technologies have no notion of a content model. There’s a lot of text but you have no idea what it means. It’s just <p class=”really old and”>clunky stuff</p>. It’s not machine readable and it therefore cannot be automatically transformed.
The solution is to encapsulate content editing into a single service that stores content according to a model. Being able to manipulate this model through the editorial interface and the API is really the most important feature. If you evaluate a CMS, this is what you need to look for.
This service should have a usability tailored to power users and be able to manage both text as well as digital assets (some systems can’t do both, you’d be surprised). Simple image editing tools are a must, including responsive cropping.
The service should make the content available for presentation or processing through a standardized API. GraphQL works well here because it ties naturally into the malleable nature of the content model.
Good auditability is a great replacement for a fine-grained access control. Nobody seems to actually like or need workflows, at least not the editorial teams I have recently spoken to. Please use tags to organize your group work and quality control, thank you.
Web Publisher concerns
Working in one of the federal agencies, the editorial role is called Web Publisher. This role, defined a long time ago, requires user experience design, frontend development work, data analysis, as well as expertise in creating and editing text, images and video. This is an extremely comprehensive skillst. It is common practice today to cover each of these topics with a dedicated subject matter expert.
So time has obviously moved on. What remained however, was a desire to be able to design the user experience by themselves. Like in Microsoft Frontpage, where one moves webpage building blocks over a white background and double-clicks for coloring.
Headless means a streamlined interface for professional content production. The work here is rooted in communication and not in presentation, which is secondary. It had felt obvious to me that that is what governmental publishing efforts are about: communication. So I was surprised to learn about the amount of boutique desgin invested and by the resulting pushback by the editors that wanted to keep their toolbox.
There was however also very loud and strong voices for professionalizing the editorial experience. These voices said that the time producing content for communication is much higher than the time spent on creative design work … when you’re an actual web publisher.
Sovereignity concerns
For the Swiss government the physical hosting location was important in regard to data integrity. On premise hosting was a must and not all vendors offer that possibility.
Digital asset transformations like resizing video are computationally expensive and can require high bandwidth to boot. The popular CDN services have already solved this problem and it’s baked into their infrastructure. Instead of building these capabilities themselves, the team is well advised to use an existing market offering for content distribution.
Closing thoughts
I’m very grateful to have had the possibility to be a part of this. I learned a lot about the Swiss Government and it was a great opportunity to revisit many different content and distribution architectures. I feel thankful to the many different people I had the pleasure to work with.
The program will soon be starting it’s 10-year production voyage until 2033. All the best!
[1] https://www.admin.ch/gov/de/start/dokumentation/medienmitteilungen.msg-id-90032.html
