Over the last few months, I’ve had the pleasure of starting to get my feet wet with Kentico’s latest DXP offering, Xperience by Kentico. And when I say it’s been a pleasure to work with, I really mean it. The sheer speed of everything (and not just the administration application), combined with an excellent developer experience and an active, growing community surrounding it, makes Xperience by Kentico a breath of fresh air for content administrators and developers alike.
One of the first things you’re likely to notice when working with a site that’s been built using Xperience, is the incredible speed at which you can navigate and manage your site(s). If you’ve worked with Kentico sites in the past, I can assure you that Xperience’s administration interface is a massive leap forward.
Outside of using the administrative application itself, there’s still so much more to love. One of the great aspects of this new platform is the rate at which new features are being added to the product. There’s monthly “refreshes”, as they’re called, and each one is packed full of new features for both content administrators and developers.
Speaking of developers, one of the biggest speed improvements is found in the act of building and running the site. Gone are the days of waiting 30+ seconds for a heavy CMS administration site to spin up and initialize in order to validate that your changes are working as expected. Since Xperience has been built using .NET Core and React, it takes only a few seconds to go from dotnet watch to interacting with your site.
Sticking with the topic of developers, there’s so many aspects of the new Xperience platform that give it an excellent developer experience.
One of the things I’ve come to appreciate the most about Xperience is the plethora of things that can be accomplished via the .NET CLI. From the usage of dotnet templates for spinning up a new site, to using the kentico-xperience-dbmanager for spinning up databases, and a handful of flags that can be used with dotnet run in order to update the database version and execute Kentico CI and CD commands. There’s even CLI commands to generate code based on the content types, forms, reusable field schemas, and module classes that are built within the DXP to be used by your presentation site’s code.
Due to all the application management that can be done from the CLI, it makes building, configuring, and extending the CI/CD configuration for your solution extremely easy and straightforward. Combine that with the fact that everything is based on .NET Core now, making it so the underlying build agent can be Linux, and you’ve got yourself a recipe for incredibly fast builds and releases.
One of the powerful things we’ve been able to implement on our projects (which is a bit of a copy of what’s been done on the Kentico Community Portal site), which is the idea of spinning up a SQL Server instance, restoring a database backup, running Kentico CI Restore to get the database in sync with the latest changes, then running Kentico CD Store in order to serialize whatever files are needed on the destination machine in order to run the Kentico CD Restore command post-deployment to sync up any object or content changes that need to exist 🤯. That may sound like a lot, and you might need to re-read that a few times to follow everything that’s happening, but it’s been a powerful way to generate the CD files as part of the build process, rather than needing developers to continuously commit those files to the repository, which will be changing for each deployment, and are more or less duplicates of many of the CI files that are already present in the repository.
You may be wondering though, “doesn’t all that drastically slow down your CI/CD builds?”. If we were still using Windows build agents, then yes, because I was seeing build times in the 10-12 minute range when including these database and serialization steps. But when building on Linux agents, it’s able to build the solution, run all the steps above, and publish the results as an artifact in just 2.5 minutes on average. That’s about a 2x-3x speed improvement over just building .NET Framework solutions back in the day.
The points above obviously already hit on some of the benefits of being on modern tech like .NET Core, but the conversation doesn’t end there. If you’ve worked on a Kentico site recently, you likely know that whenever you needed to make any customizations to the administration interface, you were required to do so by building out your UI and backend logic using Web Forms. Compare that to Xperience, where your customizations are all built using React, a modern and widely adopted Javascript framework.
One of the biggest benefits of being on a modern tech stack like .NET Core and React, is the fact that more developers are familiar with these technologies and will be better equipped to build and maintain sites that are built using them. I would also wager that it’s easier to find new developers with React experience than it is finding ones with Web Forms experience, so easier hiring can also be a great potential downstream effect of moving to a platform like Xperience.
If you’ve ever worked on a brand new platform that didn’t have great documentation or had a small number of people building with it, you know the pain of feeling stuck with nowhere to go. Thankfully, the Xperience community and platform are mature enough to provide you with everything you need to build out excellent digital experiences without the dreadful feeling of being alone.
The first place you can turn to would be the extremely thorough documentation about the platform. Nearly everything you would need to know about using the administration interface as a content administrator, or building out websites or email channels and all the components that go along with each, can be found within the Xperience Documentation site.
If you happen to strike out with finding what you need in the documentation, the next best place to look would be the Kentico Community Portal. This is a great resource due to the information that can be found within the blog posts, as well as the Q&A section of the site. If you can’t find an existing question that matches whatever it is you’re running into, you can create an account and ask away!
In the unlikely event that both options above don’t pan out, you can always join the Kentico Xperience Community Slack Organization. The members of this Slack Organization are quick to provide their thoughts and ideas when questions are asked in their respective channels.
As you can hopefully deduce from the points above, there’s a lot to love about the Xperience platform. Regardless of if you’ve worked on Kentico projects in the past, I would highly recommend giving Xperience a closer look if you haven’t already. As someone who has helped develop a couple different types of projects in recent months, I’ve been able to do a deep dive into Xperience, and I’m incredibly excited to continue building projects with it for years to come.
Check out this video to hear BizStream team members share their experiences and insights on using Xperience by Kentico.
Want more info about how we can help you with your Kentico project? Learn more
We love to make cool things with cool people. Have a project you’d like to collaborate on? Let’s chat!
Stay up to date on what BizStream is doing and keep in the loop on the latest in marketing & technology.