Writing
MM / Field noteTwo days at Umbraco UK and a growing list of things to try
Notes from the Umbraco UK Partner Summit and UMBUK26, covering AI governance, Cloud, MCP workflows, performance and catching up with the community.
I was lucky enough to attend both the Umbraco UK Partner Summit and UMBUK26, the Umbraco UK Conference, this week.
It’s the first Partner Summit I’ve attended, so I wasn’t entirely sure what to expect. The day kicked off with a keynote from Umbraco CTO Filip Bech-Larsen looking at the latest product updates and roadmap. There was a lot to catch up on!
At Umbraco Spark earlier this year, I was getting excited about the MCP developments and the reusable block library. Since then, there’s been plenty more happening around AI.
Between the releases, previews and roadmap announcements, there are MCP servers for interacting with Umbraco, Umbraco.AI bringing AI into the backoffice, an editor-facing copilot, and Umbraco Automate opening up possibilities for AI-powered workflows.
What interested me most was the governance side. Having AI available within the platform gives us tools to build useful functionality for editors, but we need to be careful about what we allow it to do and what access it has.
Seeing tools for managing that alongside the functionality was encouraging. I’ve been spending quite a bit of time looking at Umbraco security through my role on the Umbraco Community Security and Privacy Team, so I’m keen to explore how these controls work. In fact, I’ve already started having a play with them!
Umbraco Cloud is looking interesting again
Outside of AI, I was impressed with the announcements for Umbraco Cloud.
I’ve been involved with a few Cloud projects over the years and, in my experience, the development and CI/CD workflows have always felt slightly awkward. You had to change how you worked to accommodate Cloud, rather than Cloud fitting into how you already worked.
Our last project left a few battle scars, particularly around the deployment pipeline, so I’ve been keeping an eye on developments over the past couple of years.
Dedicated hosting resources, Redis and load balancing are now available, with autoscaling and improvements to the deployment process on the roadmap. The proposed artifact deployments are particularly appealing. Being able to use our existing CI/CD pipelines would address one of my biggest frustrations.
For the first time in a long time, I’m starting to think seriously about Umbraco Cloud as a hosting option again. There’s still some investigating to do before I’d be comfortable recommending it, but it’s back on my radar.
Day two: UMBUK26
Having a young one at home often means sleep is sacrificed in favour of daddy-and-son milk mornings. Easily the best part of my day, but it does mean my day starts much earlier than I’d like!
I made the most of an uninterrupted night’s sleep while I was away and woke up ready for day two.
I’ve been attending Umbraco conferences for nearly ten years now and I often arrive a little short on inspiration after a busy stretch at work. But the combination of inspiring talks and conversations with familiar faces and new people means I usually leave with renewed energy and plenty of ideas.
This time was no different.
Dean’s MCP workflow
My first talk of the day was Dean Leigh’s exploration of MCP and his journey building his own MCP workflow.
I’ve been having conversations at work about where MCP could fit into our agency workflows, so seeing how Dean had approached his own was very relevant. It was a cool session, and one that left me wanting to get back to some of those discussions with a few more ideas.
We caught up later in the day and talked more about how he’s using MCP and AI in his daily workflow. I won’t share the details of that conversation, but what he’s doing is absolutely incredible.
NFRs in the age of AI
Next up was my Head of Engineering, Carole Rennie Logan, talking about non-functional requirements in the age of AI-assisted engineering.
I’ve had quite a few conversations with Carole about this recently, so I was looking forward to seeing how it all came together.
With AI capable of implementing features from a specification, it’s surprisingly easy to focus on whether the functionality works and forget about everything else that makes it production-ready.
Performance, accessibility, security and all those other requirements that sometimes get left until later still need to be considered. And when you’re using AI to write the code, you need to be explicit about them.
It’s something I’m working through as I experiment with AI engineering workflows. How do we make sure these requirements are included in our specifications and checked during implementation, rather than relying on someone remembering to look for them afterwards?
A really good talk, and probably my favourite of the conference.
CSI: Umbraco
Jason Elkin’s CSI: Umbraco covered performance investigation and testing, with tools including MiniProfiler, Application Insights, BenchmarkDotNet, oha and k6.
I liked the idea of load testing locally during development. We tend to think about it when there’s already a performance problem, or when we’re preparing for a particularly busy launch. There’s no reason we couldn’t do more of it as part of normal development.
It got me thinking about my projects already in production too. Could I use Application Insights more effectively to spot problems before they’re reported? There’s an opportunity to be more proactive about performance.
Ghosts of Umbraco past
I always enjoy Joe Glombek’s talks. He’s a great storyteller and does what good comedians do: observes things in plain sight that you recognise as soon as he points them out.
This one looked at Umbraco coding practices that made sense once but now have better alternatives. It was a very interesting talk, with some of the most practical takeaways of the day.
It’s easy to fall into habits when you’ve been working with a platform for a long time. You learn how to do something, it works, and you carry on doing it that way. Meanwhile, Umbraco has moved on.
Joe covered examples involving caching, compositions, content querying and some of the newer APIs.
Content-tree traversal was one example. We’ve all seen code that gets a content node and then walks through its descendants looking for something. Depending on the size of the site and what you’re doing, that can be an inefficient way of finding content. Joe showed some alternative approaches using search.
His question to the audience, “would you approve this in a PR?”, was the part that stayed with me. I know the drawbacks of those patterns, but considering what I’d approve in someone else’s code made it a more philosophical question about my own judgement.
Passing tribal knowledge to your AI teammate
Marcin Zajkowski’s talk about passing tribal knowledge to your AI teammate connected with something I’m already finding in my own work: how much code we can produce without necessarily gaining the understanding we’d have from writing it ourselves.
Marcin referred to Chesterton’s Fence: if you come across something that looks unnecessary, understand why it’s there before removing it.
An engineer might dig through the history or ask someone who worked on it. But does an AI agent even know there’s a reason worth investigating?
We have knowledge in our projects that makes sense to the people who’ve worked on them for years but isn’t documented anywhere. If agents are going to make more changes to those systems, we need better ways of making that knowledge available.
I’ve been experimenting with repository instructions and architecture documentation, but there’s plenty more to explore here. Another one for the Monday list!
Until next time
What I haven’t covered is all the conversations between sessions.
I remember hearing at Codegarden that it’s the talks that aren’t recorded that you get the most from. There’s a lot of truth in that.
Catching up with familiar faces, hearing what people are working on and having conversations with people I’ve admired from a distance but never actually met. It’s a big part of why I love this community.
I feel connected again with the Umbraco community and have come away with plenty to try. Looking more closely at the AI governance tools and how we capture project knowledge should keep me busy for a while, before I even get to the performance notes.
First, though, I’ve got a weekend of playtime with the toddler before unpacking all those “try this on Monday” notes.
Until next time, Umbraco! 🙌