Content Management Systems are not application platforms By Rouven Wessling

How I became convinced
that content needs to be
nothing but an API.

Hi, I’m Rouven Developer Evangelist, lover of APIs and cake @RouvenWessling

Photo by Yusuf Evli on Unsplash Düsseldorf !

� 8 I have a history here…

In 2010 I started contributing to Joomla! to get help get 1.6 released

I stayed a while longer

PHP Autoloading Released with Joomla! 2.5

� 12 AJAX Installer Released with Joomla! 1.7.3

Joomla Platform/Framework

What happened?

I burned out Photo by Nick Fewings on Unsplash

I care about building kick-ass tools for developer

The Joomla! community felt differently

So I left Photo by Mantas Hesthaven on Unsplash

“I love my CMS!”
said no developer ever.

Security/maintenance 
 cost Rigid extension/ templating system Setting up environments is hard Why do many developers hate CMSs?

“We are seeing too many organizations run into troubles as they attempt to use their CMS as a platform for delivering large and complex digital applications.”

  • ThoughtWorks Technology Radar

� 23 Enter the Decoupled CMS API-first CMS Headless CMS Content Infrastructure

Content Management Systems are not shitty application platforms

Today’s CMS Page-centric model SILOED CONTENT DISCONNECTED Hard to change Coupled to the CMS’ platform Monolithic architecture Templating Editor Database

Content Infrastructure AGILE Changes with your software COMPOSABLE Microservice architecture { API } Structured content Independent of 
 medium and platform JSON

Karen McGrane, Author of “Content Strategy for Mobile” “I don’t necessarily know where this content is going to live. I don’t know how it’s going to be used in the future. But, I do know that I have to create lots of flexible content that has metadata attached to it because I know it’s going to be reused in different places.”

27

Deliver content to any platform, not only websites Even to platforms not yet invited… the landscape is evolving with an ever increasing pace

Andrew Kumar Sr. Technical Program Manager, TELUS ”TELUS Digital is very proud of our engineering culture enabled by a modern technology stack and delivery automation. Decoupling content from code was a big win ushering extreme organizational agility and drastically increasing our speed-to-market on key marketing & delivery initiatives.” ! 29

Integration with the dev-flow is key for fast moving teams

“Editors get a CMS; 
 Developer don’t 
 have to deal with one.”

Don’t let a CMS get in the way of

shipping software. Contentful provides a content infrastructure that enables

teams to power content in any digital product.

The missing layer of the modern stack Specialized cloud platform services simplify development PaaS and laaS lay the foundation for building websites & apps Experiments SMS + Voice Email Content Platform as a Service (PaaS) Infrastructure as a Service (IaaS)

4 APIs are at the foundation of Contentful Content Management API Images API Content Delivery API Content Preview API

The Web App • Management of Content for author • Management of the Platform for Administrators • Management of the Content Model for Developers

Architecture

Flexible enough to handle any kind of digital product Think outside the CMS box On-ship digital experiences: kiosks, displays, menus, etc. Multivariate testing Learning academy Microsites Audio guides Interactive displays Immersive website Super Bowl campaign Employee training app Chatbot with product recommendations 


� 38 Workflows

Environments

Integration with the dev-flow is key for fast moving teams

Migrations " module . exports

= function (migration) { 
 migration.deriveLinkedEntries({ 
 contentType: '1kUEViTN4EmGiEaaeC6ouY' , 
 from: [ 'profilePhoto' , 'firstName' , 'lastName' ], 
 toReferenceField: 'profilePhoto_new' , 
 derivedContentType: 'media' , 
 derivedFields: [ 'name' , 'photo' ], 
 identityKey: async (from) => { 


return $ {from.firstName[ 'en-US' ]} -$ {from.lastName[ 'en-US' ]} 
 }, 
 deriveEntryForLocale: async (from, locale) => { 


return { 
 name: $ {from.firstName[locale]} $ {from.lastName[locale]}, 
 photo: from.profilePhoto[locale] 
 } 
 } 
 }); 
 };

� 42 Should Joomla! be a 
 Content Infrastructure?

The Flexible Platform 
 Empowering 
 Website Creators Don't let a CMS get in the way of shipping your software.

Maybe

ROUVEN WEßLING Twitter: @RouvenWessling Email: rouven@contentful.com