De term ‘headless cms’ duikt regelmatig op. Het staat voor een nieuw type cms dat een ideale inrichting kent voor alle soorten digitale kanalen en devices. Wat is zo’n headless cms? En vanwaar de commotie?
Het contentmanagementsysteem (cms) is vanaf de jaren negentig een sleutelcomponent bij de ontwikkeling van het wereldwijde web. Designers, redacteurs, e-commercemanagers en marketeers zochten naar software waarmee ze makkelijk content op een website konden plaatsen, beheren en de digitale ervaring van klanten konden beïnvloeden, zonder dat ze daarvoor direct naar de it-afdeling hoefden te stappen.
Aan die rol van het cms is niet veel veranderd. Wel is een en ander veranderd in de wijze waarop we met internet omgaan. En dat heeft ook de nodige consequenties voor het cms.
- Meer sites
Bedrijven hebben steeds meer sites en vaak ook sites die enkel gebruikt worden voor een tijdelijke marketingcampagne. Er is daardoor een grote behoefte aan een cms dat snel en eenvoudig pagina’s genereert en er tegelijkertijd professioneel uitziet. Het aantal websites dat wereldwijd actief is neemt daardoor enorm toe. In 2017 waren er iets minder dan 1,75 miljard websites actief in alle soorten en maten, terwijl we er in 2014 nog minder dan een miljard hadden.
- Meer devices
Het oude cms was gericht op één type gebruikersscherm: de pc. Die wereld is in een tijdsbestek van tien jaar behoorlijk diffuus geworden door de komst van smartphones, tablets, laptops en iot.
- Nieuwe vormen van interactie
De eerste cms-en waren gericht op de publicatie van platte tekst. Video is in de loop van een aantal jaren sterk toegenomen. En zelfs voice-interfaces komen nu voor. Daarnaast is er ook steeds meer interactie met webgebruikers. Denk aan sociale media, fora, maar ook chatbots. Voor cms-en is het zaak al die vormen van content te ondersteunen.
- De cloud
It-bedrijven zijn de afgelopen vijftien jaar geleidelijk overgeschakeld van een on-premise verdienmodel naar een dienstenmodel gebaseerd op de cloud. Voor cms-leveranciers heeft dat ook belangrijke gevolgen. Web-omgevingen zijn te verrijken met allerlei clouddiensten.
- Analytics en kunstmatige intelligentie
Er zijn de afgelopen tien jaar enorme stappen genomen op het gebied van analyse van data en kunstmatige intelligentie (ai). De webomgeving is één van de beste plekken waar bedrijven voordelen kunnen halen uit die technologie. Met behulp van slimme inzet van ai is content op de website af te stemmen op de websitebezoeker, waardoor deze een gepersonaliseerde, op hem of haar gerichte website-ervaring heeft.
Voor het ‘klassieke’ cms vormen deze ontwikkelingen een uitdaging. Bij vrijwel alle oude systemen zijn de frontend-presentatie, interactie en vormgeving van content reeds vastgelegd in de backend-database. Dat betekent dat beheer van content en het cms sterk toeneemt zodra het aantal kanalen (smartphone, tablet, iot) en platformen (sociale media, e-commerce) toeneemt. Daar komt nog bij dat on-premise het dominante model is bij het klassieke cms. Gebruikmaking van cloudtechnologie of personalisatie-engines vraagt om on-premise aanpassingen.
Headless
Het headless cms is een poging van cms-leveranciers om deze ontwikkelingen te adresseren door de architectuur van het cms anders in te richten. Het cms hanteert een scheiding tussen de backend-database waar de content zich bevindt, en de frontend-presentatie-laag. Beheerders kunnen in de backend database content creëren, lezen, aanpassen en verwijderen. De content is vervolgens toegankelijk voor elk kanaal via restful api. Deze restful api (application programming interface) gebruikt het http-internetprotocol om data op te halen van een databron, in dit geval het cms. De presentatielaag bevindt zich niet bij de gebruiker… Vandaar ‘headless’.
Het voordeel van deze inrichting is dat elk kanaal is te gebruiken met zijn eigen unieke presentatiemogelijkheden. Een groot landschap aan verschillende devices en schermen is beter te bedienen. Een headless cms is bovendien geschikter (dan het klassieke cms) voor personalisatie. In het klassieke cms werd content ‘gepusht’ naar het kanaal. De gebruiker van het kanaal krijgt de content te zien ongeacht zijn situatie. Het headless model schrijft voor dat content wordt opgehaald (pull) door de applicatie. De api is zo in te richten dat dit gebeurt op basis van de context van het kanaal en de gebruiker. Sterker, een engine op basis van ai kan de gebruiker herkennen en zo onderzoeken of content wel of niet aanslaat bij die gebruiker op basis van zijn context.
Samenspel
En tot slot: headless zorgt voor een betere samenwerking met de it-afdeling. Beheer en onderhoud van een cms is altijd een samenspel geweest tussen gebruiker en it, waarbij de gebruiker meer let op de vormgeving en het dagelijkse gebruik en de it’er op de technische achtergrond. Het headless cms zorgt voor een logische scheiding tussen deze twee werelden. De technische component rond het beschikbaar stellen voor diverse kanalen wordt gemanaged door de leverancier. De content zelf en de customer experience van de websitebezoeker wordt beheerd door de gebruiker.
Er is geen twijfel dat het headless cms binnen afzienbare tijd vrijwel overal aan populariteit wint. Vrijwel alle leveranciers van cms zijn momenteel hun cms aan het aanpassen en in te richten op deze nieuwe manier. Uiteraard zal zo’n transitie geleidelijk gaan aangezien veel bedrijven nog websites gebruiken op basis van het ‘klassieke’ cms. Maar de ontwikkeling is onomkeerbaar. Bedrijven hebben de snelheid nodig die headless hen geeft om aanpassingen te maken aan de website.
Uiteraard ben ik benieuwd hoe jullie hier over denken. Wordt headless cms inderdaad dominant of zien jullie dit anders?
“dat gaat als je alleen HTML/CSS/javascript gebruikt”
Dat kan inderdaad gebruik maken van die 3. Je punt is?
“Dat je minder beheer hebt is niet waar, je moet controleren dat alle URL’s nog geldig zijn”
Er wordt niet gezegd dat er minder beheer is, Henri noemt in zijn voorbeeld dat er geen servers beheerd hoeven te worden. Een voordeel van serverless werken. Maar daar komt op zich ander beheer voor terug zoals hij ook aangeeft. Maar het is wel een voordeel van het type CMS waar we het hier over hebben dat je bijvoorbeeld gatsbyjs kunt gebruiken om een statische site te genereren vanuit de api laag van het cms. Dan hoef je ook niet meer bang te zijn dat je url’s niet meer geldig zijn…
CMS Made Simple is dus uitgerekend het soort CMS dat niet standaard headless is. Je maakt pagina’s aan, beheert de layout van het CMS en de frontend code wordt ook uitgevoerd door het CMS. Er is dus geen scheiding van de codebase wat het headless zou maken. Het gaat er niet om dat er een front- en backend is, maar dat deze geheel los van elkaar staan. Dat de presentatielaag nou smarty, html, javascript, flash gebruikt, of aan android/ios app is, is verder in het geheel niet boeiend. Het idee is dus om die presentatie helemaal te scheiden van het beheer van de content. Dus geen pagina’s en navigatie aanmaken, het liefst zo min mogelijk html in je CMS (wellicht nog een van de laatste plaatsen waar xml/xsl een toegevoegde waarde biedt?, al zie ik dat niet snel gebeuren). En zoals eerder aangegeven, dat brengt zijn eigen uitdagingen met zich mee, maar het is geen verkeerde manier van denken.
En nog even om de herkomst van de term headless te tonen: https://en.wikipedia.org/wiki/Headless_software
Ik ben niet zo thuis in de wereld van de gebakken lucht websites maar de laatste keer dat ik met een team een CMS in elkaar knutselde had ik ook het zelfde idee in gedachten.
Een stevig backend dat tot in detail alle gegevens bied die je nodig hebt, niets zelf in de browser berekenen of aanpassen. gewoon hapklare brokken aanbieden.
En aan het frontend was vooral de aandacht om het mooi, gebruikersvriendelijk en crossbrowser de informatie aan de gebruiker aan te bieden.
Goed.. ik had een goed en gezellig team, dat maakt het allemaal wat makkelijker.
Helaas heb ik ook vaak te maken gehad met headless management.
Blij overigens dat ik nu iets doe wat ik wel leuk vind en waar ik goed in ben.
Niets te maken met webdesigners en scrum.
@juriaan
“dat er geen servers beheerd hoeven te worden” – dan kijk ik naar gatsby.js en vindt:
– Install Node.js and npm
– Install Git
Vraag hoe heet het platform waarop dat geinstalleerd wordt?
Gatsby is dus weer een extra beheerlaag die gewoon op een server draait.
Dat CMS Made Simple de content van de presentatie scheidt is niet begrepen. Met templates kan dezelfde content volkomen verschillend gepresenteerd, dat is zelfs zichtbaar in de standaard demo.
Ik beheer mijn linuxservers zelf, gebruik zowel een commercieeel als een open source controlpanel met daarop CMSsen, Webapps en met HTML/CSS/PHP/Javascript gebouwde statische sites zonder enig raamwerk of database.
Het “….less” is mijns inziens een kreet die aangeeft dat bepaalde werkzaamheden uitbesteedt zijn, dat is niet verkeerd maar ook niets bijzonders.
Dat platform heet “Je laptop/pc” jan.
Ik snap verder ook niet hoe ik je nog duidelijker kan maken dat twee gescheiden codebases niet hetzelfde is als frontend/backend gescheiden binnen dezelfde codebase. Ik geloof ook dat je dat helemaal niet wil snappen.
Leuk dat je je eigen servers beheert, blijf lekker doen wat je doet als het jou en je klanten bevalt, ik heb er verder weinig baat bij om in herhaling te blijven vallen
Vorm en inhoud gescheiden..
Is roetveeg piet nu een andere presentatie van zwarte piet, gewoon met kleuren template?
Is een warme kop chocola hetzelfde als een kop warme chocola? Suggereert warme kop dat de inhoud best koud kan zijn?
Is een hoer een prostituee?
is legacy hetzelfde als proven technology?
Kan een dikke vrouw minister van volksgezondheid zijn? is de discussie daarover inhoudelijk of voor de vorm?
Is de iPhone verpakking vorm of inhoud? En een smiley? 😉
Wat ik snap is dat je dingen ingewikkeld doet die simpel kunnen.
Hoe ingewikkelder gebouwd, hoe meer onderhoud/beheer.
Het is maar waar je van houdt.