- conference (NDC London, Talk): Keynote: AI-Powered App Development
- conference (NDC London, Talk): Supercharging Local Development with Aspire
- conference (NDC London, Talk): Building Identity into LLM Workflows with Verifiable Credentials
- conference (NDC London, Talk): The Fun Side of Advanced TypeScript: An Interactive Coding Session
- conference (NDC London, Talk): Resilient by Design
These are the talks I attended on Day 5 of NDC London 2026!
Keynote: AI-Powered App Development
Our industry is currently changing faster than it has at any time since most of us joined it. For the first time, humans are not the only ones who can write useful, working code for complex real-world products. And for humans who can code, our potential productivity level has raised significantly as we’re now able to tackle a larger number and wider variety of problems (often in parallel).
In this technical keynote, Steve Sanderson from the GitHub Copilot coding agent team will share experiences, tips, and techniques that make the difference between success and frustration when working with coding agents. You’ll see demos of the latest and upcoming Copilot CLI features, and learn the underlying principles you can focus on instead of getting caught up in hype and FOMO. And more broadly, we’ll talk about how (or if) this changes our role in the world as software developers.
Supercharging Local Development with Aspire
It’s a tale as old as time - you join a new team, you want to be productive, but getting the local development environment up and running proves to be a fruitless task.
There’s an old wiki page, shell scripts in a random repository, and repository Readme’s referencing frameworks years out of date. The excitement of starting a new project soon turns to dread as the “Time-to-Login-Screen” stretches to days.
Enter Aspire - a new set of tooling from the .NET team that supercharges local development. In this talk, I’ll walk through the basic building blocks and technologies behind Aspire. I’ll cover examples of development dependencies and local insights and debugging through OpenTelemetry.
Finally, I walk through migrating a complex, multi-application, multi-framework, and multi-dependency example from Docker Compose and other tools to Aspire to provide one seamless experience for local development and debugging.
Building Identity into LLM Workflows with Verifiable Credentials
LLMs power everything from chatbots to autonomous agents, but their non-deterministic nature exposes you to spoofing, privilege escalation, and compliance pitfalls.
In this session, we’ll draw on the social engineering experiments I undertook while building conversational AI systems, and we’ll see how attackers could bypass security guardrails. We’ll explore:
- Real-world injection attacks and the vulnerabilities that make them possible
- Emerging identity patterns, from W3C Verifiable Credentials to on-chain verification
- Methods to protect against prompt manipulation and the often-overlooked elements in audit logs
- A roadmap to LLM-aware identity ecosystems, including policy-as-code enforcement and federated governance models
You’ll discover practical approaches to securing LLM workflows today while preparing for tomorrow’s decentralised identity architectures. Through demos and case studies, you’ll leave with actionable patterns for building trust into AI systems, and insight into where the ecosystem is heading.
The Fun Side of Advanced TypeScript: An Interactive Coding Session
TypeScript’s type system is uniquely powerful, but most developers only scratch the surface of what it can do.
In this code-driven session, you’ll explore some of the weirdest and coolest features of TypeScript — from the infer keyword and recursive types to using types for arithmetic and even recreating Wordle entirely with Typescript types.
You’ll discover fascinating tricks that might seem extreme and nerdy, and wonder when you’d ever need them. Spoiler: maybe rarely; but sometimes, these quirks can come in especially handy. More importantly, it’s just plain fun to explore the limits of TypeScript’s type system.
Resilient by Design
A truly resilient Azure infrastructure does more than withstand disruptions—it keeps your applications running smoothly, no matter what. Remember: failure is always an option, but there are ways to reduce its impact. In this session, we’ll move beyond basic engineering considerations to explore a comprehensive resilience strategy.
You’ll learn how well-designed architectures, thoughtful deployment practices, and solid operational methods can ensure high availability and safeguard your systems in the face of unexpected setbacks.
Here’s what we’ll cover:
-
Core Principles of Resilience: Understand the foundational concepts that support any robust Azure environment, focusing on practical steps to strengthen your cloud infrastructure.
-
Azure’s Resilience Toolkit: Discover the full range of Azure services and features that boost fault tolerance and uptime—beyond chaos experimentation.
-
Real-World Strategies: Draw insights from proven scenarios and best practices to build and maintain sturdy Azure solutions that stand up to real-life challenges.
Whether you’re new to Azure or looking to optimize an existing setup, this session will equip you with the know-how to anticipate and bounce back from disruptions. Ultimately, you’ll gain the confidence to architect Azure solutions that stay online and perform reliably over the long haul.