Sitecore XM Cloud's headless content delivery is good for developers
June 3, 2022 | Sitecore, XM CloudThis is the second post in a series on Sitecore XM Cloud and the pivot to headless decoupled delivery:
- Sitecore XM Cloud's headless content delivery is good for Sitecore
- Sitecore XM Cloud's headless content delivery is good for developers
- Sitecore XM Cloud's headless content delivery is good for Sitecore partners
- Sitecore XM Cloud's headless content delivery is good for customers
The prior post in this series talked about why a move to headless content delivery is good for Sitecore as the product innovator. In this post we will cover why headless is good for developers. If you are a legacy platform (XP/XM) developer with years of experience doing Sitecore MVC, you have no need to worry with headless development. There is a way to transition while keeping your current skills.
Headless Delivery is Good for developers
As you can guess, the pivot to a SaaS headless CMS affords many benefits for developers. One benefit is that it opens up development options for Sitecore developers. Instead of needing to be a C# .NET MVC developer, you can now pivot towards more modern front-end development languages (React, Angular, Vue) and frameworks (Next.js). If you are an existing .NET developer and worried about learning front-end, you can still use the .NET Core SDK as well to leverage your existing skills. Wait, what? Really? Yes.
Headless development is not front-end development. While headless systems often cater to front-end developers, that's more a function of the growing discipline of front-end as a full-stack development model, handling both the UI and back-end via server-side JavaScript with Node.js. Just because a product provides a headless API layer doesn't mean you need to use these modern front-end frameworks like React and Next.js to do your development.
While this is all good for existing Sitecore developers, the primary and more impactful benefit here has nothing to do with (existing) Sitecore developers. Now more than ever, any web developer can be a Sitecore developer. This greatly opens up the Sitecore development ecosystem to many more web professionals (or amateurs) with the new APIs and SDKs. The removal of the platform-native C# .NET APIs unleashes this. Since all of the APIs now communicate over HTTP between the CMS and the decoupled front-end customer experience, any web-enabled language can consume content from Sitecore to power an experience. Developers can use any of the following technologies to get started with Sitecore:
- .NET Core Rendering SDK - a great way for existing Sitecore MVC developers to transition
- JavaScript Rendering SDK - great for front-end developers using React, Vue, Angular, and Next.js
- Advanced lower-level APIs that any web-enabled language can consume: the Layout Service (REST) and GraphQL
As you can see, the implementations options are infinitely more open compare dto the prior versions of the product. I see this as a huge opportunity for more developers to join the Sitecore community. One small caveat is that if you are attempting to make edits to the CMS itself (i.e. the back-end SaaS authoring application hosted as SaaS from Sitecore), you will still need to do that development in .NET since it is built in .NET Core. This includes things such as serialized developer content items, C# event handlers, customizaitons to the CMS via C# code, etc.