Sean Lamacraft from Distinction, UK based digital agency, presents on Kentico Roadshow in London their first experience of developing a website with a headless content management system.
See how Kentico Cloud worked for them, what the pros and cons are, and where they see the future of using this tool.
4. Lets not tie our data to any one
way of doing things.
“
”
5. A way to store data
A user interface to administer the
stored data (CRUD UI)
A way (or ways) to display the data
A “Regular”
CMS gives us 3
things
6. A way to store data
A user interface for administration
An API to retrieve the stored data
A “Headless”
CMS gives us 3
things
UI
API
Database
Whatever.
7. Gives developers flexibility to innovate
Refresh design without having to re-integrate
Simple user content model
Content via Webservice API
Speed
Managed CMS – No hot fixes, no upgrades.
Agile Development model – No bottlenecks
.
The Pros
8. No control over the functionality.
If it breaks, you can’t fix it.
Much simpler model with limited functionality (at the moment)
.
The Cons
14. Based on the wire frame, we needed
to break the content up into logical
sections.
Each section is created as a Content
Type in Kentico Draft.
Access given to the client for
content population.
Planning page
types from the
wireframes
15. You have options!
We used Kentico Cloud Delivery
SDK
(https://www.nuget.org/packages/K
enticoCloud.Delivery)
Boilerplate now available
(https://github.com/Kentico/cloud-
boilerplate-net)
Developing the
site using
Kentico Deliver
16. Scaffolding front end code quickly and efficiently.
Clean markup with full control over styling and accessibility.
Performance benefits to end user from a UX perspective. Full control over script
injection and optimising delivery of content.
Ability to create pattern libraries as a team.
Clear line between front/back end (if desired). Razor syntax is the only grey area..
Kentico Cloud – A Front
End view
17. Support is great
Happier devs that don’t have to use webform.
Less time to upskill developers compared to CMS/EMS
End user simplicity and training
Less dependency on backend developers
.
Kentico Cloud - The Pros
18. Content only. Not nearly as many features as CMS/EMS
Basic functionality requires developers – such as creating new sections.
Change in approach to project required.
.
Kentico Cloud - The Cons
Introduction.
Gonna talk a little bit about developing with a headless cms, in particular using Kentico Cloud. How we approached it, things we found, the pros and cons, gotchas and takeaways.
First, A little introduction:
My name is Sean. Head of tech at distinction
Distinction is a digital agency based in Nottingham. Been around for over 15 years.
Kentico Gold partner and part of the Cloud early partner program
What is a Headless CMS
The Pros and Cons
Kentico Cloud – how that fills the Headless cms role
How we used it and how it affected us
Key take a ways
Q & A
What is a Headless CMS?
Probably all familiar with the term – but here is a brief overview.
To understand what a headless CMS you need to change your way of thinking.
This quote illustrates it nicely.
What if you want to change the front end tech you use?
What if your site needs a redesign?
A standard CMS, by default, gives us three things:
A way to store data
A user interface to administer the stored data (CRUD UI)
A way (or ways) to display the data
By contrast a Headless CMS gives us 3 things:
A way to store data
A user interface to administer the stored data (CRUD UI)
An API to retrieve the stored data
The key difference is point 3. The API is the ‘headless’ piece. It allows us to be free from any front end constraints and frameworks.
So that was a quick overview of a headless cms, here are some of the pros and cons of using one. These can all tie into Kenticos offering that I’ll get onto in a minute.
What are the benefits/pros of a headless CMS?
Gives developers flexibility to innovate - not tied to frameworks and tech. .Net, php doesn’t matter.
Refresh design without having to re-integrate - compared to KENTICO CMS for example, the data is not coupled to anything
Simple user content model - content pages only – no distractions
Content via Webservice API
Speed – lightweight, cached, lightning fast.
Managed CMS – No hot fixes, no upgrades.
Agile Development model – No bottlenecks – will explain how we found this later
No control over the functionality. – You can’t see or change the data structures.
If it breaks, you can’t fix it. – You’re in the hands of the provider.
Generally a lot simpler that regular CMS’ with limited functionality (at the moment)
On to Kentico Cloud
First thing to note – and this is the important bit:
Kentico Cloud is NOT the same as CMS/EMS!
They are two very different things, Different ways of delivering data, different development models.
Draft is the first offering in the Kentico Cloud package. Akin to Gather Content and the like, it allows the creation, structure and organisation of pages and content. Much like Kentico CMS, you can move documents through workflow and between users before publishing the final version.
Side note – you can use draft and hook it straight into CMS/EMS
It combines with Kentico Draft to deliver the content via a dynamic API, allowing the developer to integrate with any framework or language.
Engage is the last of the Kentico Cloud offering. It provides functionality to recognise and target the needs of individual visitors. (we’ve not used this part much yet)
As part of the early partners programme we’ve been developing this site in Cloud.
It’s a simple brochure site, but has a lot of linked sections.
Its not launched yet, but is in the final stages
From the start of the project, we used a different approach to usual.
A typical project plan (kinda waterfall) relies on one piece being finished before another starts.
Once the wireframes are done, you can start the design.
Once the designs are done, you can start front end builds etc.
When using cloud, we had to change our way of thinking and plan.
The benefits are that the approach can be more jumbled. Backend dev can start earlier and content can start soon after the wireframes.
This jumbled approach can be a little frustrating from some. Pm’s for example. They like order.
Based on the wire frame, we needed to break the content up into logical sections.
Each section is created as a Content Type in Kentico Draft.
Access given to the client for content population.
We used the Kentico Cloud Delivery SDK and built the site using the MVC pattern.
There is now a boiler plate available.
Scaffolding front end code quickly and efficiently.
Clean markup with full control over styling and accessibility. Things such as implementing complex gtm stuff would be super easy.
Performance benefits to end user from a UX perspective. Full control over script injection and optimising delivery of content. Implementation of modern front end tech. This results in quicker load times for the end user as well as faster development times.
Ability to create pattern libraries as a team. This will speed up dev workflow as creating base components to plug in and style becomes much more feasible than with web forms.
Clear line between front/back end (if desired). Razor syntax is the only grey area..
Support is great – Responsive, regular updates, eager for feedback
Happier devs that don’t have to use webform. – Recruitment is becoming harder every day as devs want to use newer tech, mvc and the like
Less time to upskill developers compared to CMS/EMS. - All you have to do is learn 1 API. You don’t have to spend months of time training devs.
End user simplicity and training – Little to learn, easy to train.
Less dependency on backend developers
Content only. Not nearly as many features as CMS/EMS
Basic functionality requires developers – such as creating new sections. – You can allow users to create sections
Change in approach to project required.