1. Agility to drive success
How can we do things faster? Time is money! Some of the challenges Adobe keeps hearing is: “Why can’t we do things faster?”. Clients note that backend and frontend are coupled together. Things can’t go faster because everything is a waterfall during development. Things must be done in a sequence. There is a lack of flexibility and agility: how can sequences be parallelized? How can clients get all of their project teams working in a concurrent path to reduce the overall lead time. Last, but not least, measuring, is there a way to understand performance?
The answer of Adobe
The way Adobe tackles this topic is by attempting to decouple the backend and frontend even further through new features in Quick Site Creation. We already had ‘Quick Site Creation’ as of last year, but the workflow for the front-end developer has improved further.
Quick Site has the ability to download theme sources.
This feature creates a simple zip file for a specific site containing everything a front-end engineer would need to work on and in the end deliver. What’s new is that when you download the themes, it takes the available site content with it as static pages. The setup contains a local proxy server to view changes directly on this static content without the hassle of having to setup or even know anything about AEM.
To deploy the changes to a managed AEM environment as a frontend engineer, Cloud Manager is the answer. Cloud Manager has a brand-new pipeline type called ‘Frontend Build & Deploy’ pipeline. As the name suggests, this pipeline allows to build and deploy only the frontend code to an environment of choice. In other words, separation of backend and frontend code deployment and as a side effect: reducing deploy time.
Another new feature is the ability to setup Adobe Analytics for a site with one click. All you need to enter is the report suite ID. Everything else is taken care off for you. Inside Adobe Analytics you get a dashboard with the most useful metrics visualized. Most metrics center around visitors, but more interestingly is to see how visitors interact with components. For example: you can see in breakdown what items visitors click on in the navigation component.
While easy, this feature is mainly aimed at micro sites. For fully fledged big sites, it’s still strongly recommended to create a Key Business Requirements document (what do we want to know) as well as a Solution Design Reference (how is the KBR implemented).
2. Data, Insights and personalization
Every experience needs to be personalized. How to do that? How to make all of these touchpoints personal? How to make all of this content relevant in the moment of experience? Experimentation is possible with A/B testing, but limited. How to scale that with hundreds of experiences. Last, as an author, you really have limited choices. How can authors contribute to that personalization?
The context hub has been around for a while now, but it has been underused. Those who did try to use it often either gave up or stuck to the bare minimum. Adobe has provided a fully operational reference implementation in WKND which makes it easier to implement this in your own site now that you have the proverbial cheat sheet.
Experience Fragments were launched a while ago, but up until now, they weren’t used for personalization. Targeting a specific campaign in AEM has become more integrated and now allows you to use Experience Fragments and variations for the purpose of personalization.
It has become very easy to add additional variations on top of the existing ones. Either through variations or through building blocks.
Personalization is not only important for regular sites, but also for commerce sites. Adobe has made a dashing integration between the recommendations configured in Adobe Commerce and bring those into any site which is connected to Adobe Commerce through the recommendations component in AEM.
By default, it takes over the suggested recommendations of Adobe Commerce, but you also have to ability to override this default behaviour and create your own range of suggestions based on the commerce integration.
3. Decoupled content and performance across all channels
Headless authoring can be limiting as experience delivery needs to expand from a few dozen experiences to hundreds and even thousands. Agility and scale end up being a trade-off. Personalization at scale is essentially compromised.
While GraphQL has massively improved the delivery capabilities of content fragments and headless content, it’s only half of the equation. The other half is management of these potentially massive amount of Content Fragments.
Managing semi structured or structured content at scale under the form of Content Fragments is simply put, a very hard thing to do within the current interface.
To solve this grievance, Adobe is moving away from the folder based interface and introduced a new search based interface which is aimed at finding Content Fragments fast.
The new interface allows to full text search, filter on several attributes (such as model, status and user), discover references easily and keep a birds eye view on translations. The folder based interface is not gone, but has moved to the background.
Currently, there is no way to tell how well this interface works with (hundreds of) thousands of Content Fragments, but conceptually it’s a vast improvement over the previous interface. Finding a content fragment will never be the same.
With a lot of content being consumed on mobile devices (over 60%) where you have potentially limited bandwidth, speed of your website has become more important than ever. Speed has truly become a differentiator.
From the performance point of view, WKND hits a perfect score on Lighthouse by following the best practices. The past year, there were many optimizations of the delivery of images where the right format and size of an image are served up for each device and screen. Another set of the optimizations is the increased usage of Content Delivery Network (CDN) at Adobe. The CDN allows to cache content and images at the edge, meaning close to the customer, which in turn saves on request-response times of resources and thus creates a faster loading experience.