Headless – What’s the point?

14. July 2022
If you google “headless,” you will find many definitions and understandings of the term. Many of them focus only on CMS, while others try to explain yerm’s genesis. Therefore we will focus not only on a clear understanding of what we are talking about but, most importantly on whom this solution is for and when and if it is worth investing in at all.

Glossary of key terms

Before we get into what headless solutions provide and when it is worth investing in them, let us make sure we understand each other accurately. It is good to be on the same page from the beginning!

  1. Architecture describes the network’s interactions between applications, databases, and middleware systems. It ensures that multiple applications work together.

  1. Backend is the code that is created on the server. The user does not have direct access to it. It is created using programming languages such as:
  • PHP
  • Java
  • Python
  • Ruby

  1. Frontend is the code that is created in the user’s browser. It can be previewed by displaying the “page source” in the browser. Most of the logic on the frontend is created in JavaScript using React or Angular, among others.

  1. Progressive Web App (PWA) is a website that uses new browser technologies. Knowing the device’s context and capabilities, it often behaves like a native mobile app. A PWA is created using frontend technologies and powered by a backend.

  1. Application Programming Interface (API) connects two programming interfaces – a contract that allows communication between different services.

How do headless solutions differ from monoliths?

What is a monolith?
A monolith is a classic development method, or a non-dispersed solution, where all functions and services are gathered in a single code base.
How Monolith works?

Thus, the user interface, business logic, data handling and applications exist as one complex and tightly interconnected whole within just one product. So, you can say that a monolith is a large, self-contained structure where everything is built linearly, and each product (such as a mobile app or e-commerce) has an entirely separate structure.

In contrast to monolithic, headless is an architecture in which the frontend and backend are separated and communicate based on APIs.

Headless is an architecture in which the frontend and backend are separated and communicate based on APIs.

What is wrong with the traditional approach?

  • It is not adapted to a large number of touch-points.
  • Difficult to maintain content for multiple reception channels.
  • Technical complexity with multiple channels is increasing.
  • For each new channel of consuming content, we must create a “new site” (new CMS with database, etc.) – which becomes a nightmare to maintain after some time.

How does headless architecture help?

Who is Headless for?

Producing and maintaining online products requires increased agility. This is a major challenge. It is precisely such needs that are addressed by the Headless architecture, which, as a counter to the monolith, facilitates the flow of information and simplifies how content is delivered. Using a single database, we can distribute content to various receiving channels (mobile app, web, PoS, etc.).

Advantages of headless from a business perspective

  • One place to create and serve content – changes made in one interface are applied to all related applications.
  • Flexibility when distributing responsibilities among streams/teams/companies.
  • Scalability and extensibility – adding more channels for sales or content consumption are easier, even in the future.
  • Increased security.
  • Reduced complexity of the infrastructure needed to run the application.
  • Applications made with headless architecture are cheaper to maintain in the long run.
  • It gives a business advantage when adding new sales channels – faster Time to Market.
  • It facilitates collaboration with multiple vendors.
How Headless works?

Disadvantages of headless solutions

Headless is not perfect, like any solution, it also has drawbacks. Many of them may only apply to certain cases, but it is essential to be aware of them in decision-making, planning and implementation.

  • Requires a different approach to content creation (content needs to be more thoughtful, as the same elements will be used across multiple channels).
  • It is more difficult and costly to implement, at least at the initial stage, as is maintenance – it pays off in the long run, especially when implementing new products or applications.
  • Using different vendors (e.g., one vendor is the backend, and another is the frontend), it requires experience in building teams.
  • As a more modern and advanced solution, finding the right partners can be more challenging.

How to implement headless?

Many current solutions available on the market are created based on a monolith.

POV: The solution was created several years ago. We have a lot of money and team know-how invested in it, so now what?

In such cases, the most common decision is to make mobile apps. But is it a necessity? A mobile app is a potentially attractive sales channel that can increase the potential of many businesses. However, if all our content is in a monolith, the best option is to create an API to an already existing solution – to reduce implementation time.

Once the API is implemented, the next step may be to move the front-end of the site to a PWA, for example. This way, we disconnect the visual layer from the backend and transform our solution just into headless.

Sum it up: Is it worth it to opt for headless? 

Everyone should answer it individually. But, more specifically, it is worth asking yourself a series of classic questions: who, what, why, when?

If you are thinking about scaling, growth, and rapid development, then decoupling the frontend from the platform on which it runs and from other systems is an almost ideal solution. By separating the “head” (frontend) from the “backbone” (backend), you gain much more freedom in your ability to present content or create a user-friendly customer experience on different devices – UX is key. This will also make it much easier to build larger ecosystems, especially with their planned growth across multiple markets headless allows you to do this more efficiently.

You need to be aware of a few potential difficulties and think carefully about whether such a solution is actually for you, but if you have read the entire text, then there is something worth considering…

Among other things, at SYZYGY I serve as Technology Culture Guide.
Autor Marcin Stasiak
Full-Stack Developer
On this page