Azure

Rubber Duck Thursdays - Exploring GitHub Models
GitHubChris explores GitHub Models as an AI prototyping playground, demonstrates Copilot on the command line for learning Linux commands, and shows off a Cosmos DB-backed leaderboard for the OctoSnap game.
Chaos Engineering for Cloud native Apps
Chaos engineering is the discipline of proactively experimenting on distributed systems to build confidence in their ability to withstand production failures. Chris is joined by Ashish Balgath (Cloud Solution Architect at Thoughtworks) to explore how to introduce fault-injection experiments incrementally — from a developer's local machine all the way to production — using tools such as Chaos Monkey and fault-injection simulator tools.

ToolUp Days #15
Chris and Matt pick up inside GitHub Codespaces, getting the Player State service running locally on the first attempt thanks to Dapr's environment-variable secret store and Codespaces secrets. They then wire up the World Events Engine with Azure Storage Queue bindings and Table Storage state before hitting a stubborn .NET minimal API routing bug — becoming the cliffhanger that sets up the next session.

Beyond Monitoring: The Rise of Observability Platform
Cloud with ChrisAs systems grow in complexity across distributed architectures and microservices, traditional monitoring is no longer sufficient to maintain reliability and user experience. Observability goes beyond monitoring by correlating logs, metrics, and traces to rapidly pinpoint root causes across hybrid and multi-cloud landscapes. In this episode, Chris is joined by Samir Pradka, Enterprise Architect at Artos, to explore how organisations can build an observability platform incrementally, leverage AIOps for predictive analytics, and implement self-healing infrastructure using tools like Ansible and Azure Resource Manager.

ToolUp Days #14
Chris and Matt solve a recurring ToolUp Days pain point — inconsistent developer environments — by setting up GitHub Codespaces with a custom dev container. They extend a community .NET template to include Go, configure Dapr component files for local Azure Storage access, and leverage Codespaces secrets as injected environment variables to avoid storing credentials in source code. By the end of the session they have a fully reproducible, cloud-hosted development environment that spins up in seconds.

ToolUp Days #13
Chris and Matt spend this episode tracking down why the World Events Engine keeps crashing on startup in Azure Container Apps — tracing the root cause to a missing GitHub Container Registry credentials block in the Infrastructure as Code and a GitHub Actions token permissions gap. The session also covers Dapr component naming conventions, storage queue message formatting, container app log analysis, and planning a dedicated GitHub Codespaces episode.

Tools of a Software Architecture for Everyone!
Cloud with ChrisSoftware architecture is not just the domain of dedicated architects — the tools, practices, and communication patterns it relies on apply to every engineer on every team. In this episode, Chris is joined by John Kilminster, a software architect and Azure MVP, who walks through the essential toolbox he has built up over years in the role. Covering C4 diagrams, Architecture Decision Records, Tech Radars, Docs as Code, and Spotify's Backstage developer portal, this episode delivers practical guidance for any team looking to improve how they document, communicate, and align on technical decisions.

ToolUp Days #12
Chris and Matt deploy the World Events Engine to Azure Container Apps — encountering and fixing a real-world GitHub Actions deployment bug caused by parallel runs generating duplicate container names. The episode covers Dapr storage queue bindings, service invocation between microservices, random bar-type modifier logic, and a viewer-prompted conversation about using GitHub Codespaces to standardise the development environment.

Automate Azure Role Based Access Control (RBAC) using Github
Azure RBAC is a critical security control — but managing custom role definitions manually is error-prone, hard to audit, and doesn't scale. In this episode, Chris is joined by Marcel Lupo, DevOps MVP and Solutions Architect, who demonstrates how GitHub Actions can automate the full lifecycle of custom Azure RBAC role definitions. This session goes beyond typical developer workflows to show how GitHub can serve as the governance backbone for your Azure security posture — with role definitions version-controlled, reviewed via pull requests, and deployed through automated pipelines.

ToolUp Days #11
The series officially rebrands from ToolUp Tuesday to ToolUp Days, giving Chris and Matt the flexibility to keep a consistent cadence. This episode focuses on rethinking the game's data model — simplifying the player state object, introducing a BarType enum, and scaffolding both a player creation API and a bar management controller, with GitHub Copilot generating much of the boilerplate in real time.