<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Developer Experience on Chris Reddington</title><link>https://chrisreddington.com/tags/developer-experience/</link><description>Recent content in Developer Experience on Chris Reddington</description><generator>Hugo</generator><language>en-gb</language><lastBuildDate>Fri, 10 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://chrisreddington.com/tags/developer-experience/index.xml" rel="self" type="application/rss+xml"/><item><title>Agentic memory: what agents should and shouldn't remember</title><link>https://chrisreddington.com/blog/agentic-memory-what-agents-should-remember/</link><pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/agentic-memory-what-agents-should-remember/</guid><description>&lt;p&gt;While building some of my own AI-agent based projects, I&amp;rsquo;ve run into the same frustrating loop. An agent would uncover something useful in the work itself (a hidden dependency, an awkward repo rule, a dead end I&amp;rsquo;d already ruled out), and then forget it all in the next session. I&amp;rsquo;d steer it back on course, start fresh later, and watch it head straight for the same mistake again. All that earlier momentum had gone.&lt;/p&gt;</description></item><item><title>Context engineering: more context isn't better context</title><link>https://chrisreddington.com/blog/context-engineering-more-isnt-better/</link><pubDate>Sun, 05 Apr 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/context-engineering-more-isnt-better/</guid><description>&lt;p&gt;I was in a customer presentation recently where I asked the room whether they were familiar with the term &lt;strong&gt;prompt engineering&lt;/strong&gt;. Almost everyone raised their hand. This wasn&amp;rsquo;t a surprise, given how it&amp;rsquo;s been used &lt;a href="https://github.blog/developer-skills/github/how-to-write-better-prompts-for-github-copilot/"&gt;over the last 3 years&lt;/a&gt; to make sure that being specific, giving examples, and setting clear instructions are part of the conversation around AI tools.&lt;/p&gt;
&lt;p&gt;But then I asked whether they were familiar with &lt;strong&gt;context engineering&lt;/strong&gt;. Only a few people raised their hand, and even fewer were using it as a deliberate way to think about how they work with AI agents. I genuinely expected more people to have heard of it given how much the term has grown over the past year, even if they weren&amp;rsquo;t applying the principles just yet.&lt;/p&gt;</description></item><item><title>The DevRel randomisation trap (and how to stop it)</title><link>https://chrisreddington.com/blog/devrel-randomisation-trap/</link><pubDate>Tue, 31 Mar 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/devrel-randomisation-trap/</guid><description>&lt;p&gt;There&amp;rsquo;s a word that came up in my dissertation research that I&amp;rsquo;m all too familiar with: &lt;em&gt;randomised&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;As in, &amp;ldquo;our DevRel team gets randomised constantly.&amp;rdquo; As in, whichever stakeholder has the most urgent request this week determines what the team works on. As in, there&amp;rsquo;s no clear prioritisation framework that makes it possible to say yes to some things and no to others with a clear rationale, so the team ends up trying to do everything and not fully realising the value of it all. If you&amp;rsquo;re in DevRel, you&amp;rsquo;ll possibly recognise this pattern.&lt;/p&gt;</description></item><item><title>From tactics to strategy: the DevRel measurement gap</title><link>https://chrisreddington.com/blog/devrel-tactics-to-strategy/</link><pubDate>Sun, 22 Mar 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/devrel-tactics-to-strategy/</guid><description>&lt;p&gt;A pattern I see across DevRel is that teams can usually tell you what they did by using metrics like video views, blog traffic, event attendance, stars on GitHub repositories, community growth and Net Promoter Scores. The visible metrics are rarely the hard part.&lt;/p&gt;
&lt;p&gt;The harder part is working out whether those metrics tell you anything meaningful about impact (tied back to product adoption and improving the developer experience). Many of us practitioners have known that for a long time. DevRel has plenty of vanity metrics: numbers that are easy to collect, easy to report, and easy to mistake for evidence that something important changed. That doesn&amp;rsquo;t make them useless, but they they don&amp;rsquo;t tell the full story on their own.&lt;/p&gt;</description></item><item><title>The feedback loop: how DevRel bridges community and product</title><link>https://chrisreddington.com/blog/devrel-feedback-loop/</link><pubDate>Sun, 22 Mar 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/devrel-feedback-loop/</guid><description>&lt;p&gt;There&amp;rsquo;s a phrase you likely hear in DevRel and developer-focused companies: &amp;ldquo;voice of the developer.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;It captures something real, but I think it&amp;rsquo;s too small for the job many teams are doing in reality. I&amp;rsquo;ve been in product meetings where &amp;ldquo;the community wants X&amp;rdquo; landed with a thud, because nobody in the room knew which developers that meant or what they were actually stuck on. Product teams need patterns, examples, and enough context to decide &lt;em&gt;what&lt;/em&gt; should change.&lt;/p&gt;</description></item><item><title>Why developer communities are not brand communities</title><link>https://chrisreddington.com/blog/devrel-communities-not-brand-communities/</link><pubDate>Sat, 21 Mar 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/devrel-communities-not-brand-communities/</guid><description>&lt;p&gt;I&amp;rsquo;ve spent a good chunk of my career working with developer communities (whether that&amp;rsquo;s external communities, or internal ones inside companies), and I&amp;rsquo;ve seen this pattern several times. A program would launch with strong company branding, get some early traction, and then eventually decline. Developers were using the technology and showing up. But they were showing up for the product and each other, not because of a deep attachment to the brand behind the program.&lt;/p&gt;</description></item><item><title>Company context: the conditions that shape DevRel strategy</title><link>https://chrisreddington.com/blog/devrel-company-context-lifecycle/</link><pubDate>Thu, 19 Mar 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/devrel-company-context-lifecycle/</guid><description>&lt;p&gt;I&amp;rsquo;ve seen DevRel teams borrow someone else&amp;rsquo;s playbook and assume it&amp;rsquo;ll work for them too.&lt;/p&gt;
&lt;p&gt;A team sees what a well-regarded DevRel organisation does, the community programs, the content formats, the event strategy, the metrics, and tries to replicate it. It doesn&amp;rsquo;t work as well. Sometimes it doesn&amp;rsquo;t work at all. The conclusion drawn is often something about execution quality or budget. Rarely is the conclusion about context.&lt;/p&gt;
&lt;p&gt;But context is often exactly the issue.&lt;/p&gt;</description></item><item><title>The four pillars of DevRel (and the foundation they rest on)</title><link>https://chrisreddington.com/blog/devrel-four-pillars-authentic-foundation/</link><pubDate>Mon, 16 Mar 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/devrel-four-pillars-authentic-foundation/</guid><description>&lt;p&gt;When I started reviewing the literature on Developer Relations for my dissertation, I expected to find prior academic research that reflected what DevRel teams do. The field has conferences, frameworks, books, and more opinion pieces than I can count.&lt;/p&gt;
&lt;p&gt;What I found (at least academically) was thinner than I expected. The most structured practitioner account came from &lt;a href="https://doi.org/10.1007/978-1-4842-7164-3"&gt;Lewko and Parton&amp;rsquo;s 2021 book&lt;/a&gt;, which maps DevRel activities across four primary domains: Developer Education, Developer Marketing, Developer Success, and Developer Programs, with Developer Experience at the centre as the goal that the whole system is working towards. In my &lt;a href="https://chrisreddington.com/blog/devrel-developer-experience/"&gt;previous post&lt;/a&gt;, I explored why DX sits at the centre. This post moves one layer out: if DX is the centre, these four pillars are the main ways DevRel teams shape it in practice.&lt;/p&gt;</description></item><item><title>Developer experience: prerequisite and product of DevRel</title><link>https://chrisreddington.com/blog/devrel-developer-experience/</link><pubDate>Sat, 14 Mar 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/devrel-developer-experience/</guid><description>&lt;p&gt;I&amp;rsquo;ve written before about &lt;a href="https://chrisreddington.com/blog/devrel-value-creation/"&gt;how DevRel creates value and what that looks like in practice&lt;/a&gt;, and &lt;a href="https://chrisreddington.com/blog/devrel-value-co-creation-not-marketing/"&gt;why DevRel is better understood as value co-creation than as marketing&lt;/a&gt;. My second post described Developer Experience (DX) as the &amp;ldquo;value-in-use&amp;rdquo; dimension of value co-creation: the value a developer actually experiences when using the product. This post picks up from there and focuses on developer experience specifically: what it actually means, why it sits at the centre of DevRel strategy, and the nuance I think most writing on DevRel misses.&lt;/p&gt;</description></item><item><title>Developer Relations is more than marketing. It's co-creation.</title><link>https://chrisreddington.com/blog/devrel-value-co-creation-not-marketing/</link><pubDate>Thu, 12 Mar 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/devrel-value-co-creation-not-marketing/</guid><description>&lt;p&gt;A question that framed my early MBA dissertation research is &amp;ldquo;Why does Developer Relations (DevRel) get described so differently depending on who you ask?&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Ask a senior marketing leader, and you&amp;rsquo;ll often hear something like: &amp;ldquo;DevRel is a specialised form of developer marketing.&amp;rdquo; It&amp;rsquo;s a framing that Tessa Kriesel challenges in &lt;a href="https://www.advocu.com/post/more-than-marketing-tessa-kriesel-on-the-true-role-of-devrel"&gt;More Than Marketing&lt;/a&gt;, and one I&amp;rsquo;ve heard plenty of people in the industry either defend or push back against.&lt;/p&gt;
&lt;p&gt;I understand where the idea comes from. DevRel involves content, community, events, and advocacy. It contributes to awareness and whether developers decide to use the product. For organisations trying to draw an org chart, marketing is one of the closest boxes on the page.&lt;/p&gt;</description></item><item><title>How does Developer Relations (DevRel) create value? What 13 interviews revealed.</title><link>https://chrisreddington.com/blog/devrel-value-creation/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/devrel-value-creation/</guid><description>&lt;p&gt;What does value creation in Developer Relations actually look like?&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m not asking what DevRel &lt;em&gt;does&lt;/em&gt;, as there&amp;rsquo;s plenty of descriptions of DevRel activities out there. Nor what it &lt;em&gt;should&lt;/em&gt; do, as there&amp;rsquo;s no shortage of opinion there either. But what does value creation (the specific mechanism by which a DevRel team contributes something meaningful to its organisation and its developer community) actually look like in practice?&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve spent a large part of my career in and around Developer Relations, so I&amp;rsquo;ve been thinking about this question for a while. Back in 2024, I decided to stop thinking about it and actually research it.&lt;/p&gt;</description></item><item><title>GitHub Copilot SDK demo: Creating "Flight School"</title><link>https://chrisreddington.com/video/2026-02-05-copilot-sdk-flight-school/</link><pubDate>Thu, 05 Feb 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2026-02-05-copilot-sdk-flight-school/</guid><description>&lt;p&gt;Chris Reddington demonstrates &amp;ldquo;Flight School,&amp;rdquo; a custom Next.js application built to personalize his learning journey using the GitHub Copilot SDK.&lt;/p&gt;
&lt;p&gt;Key topics covered:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Agentic workflows&lt;/strong&gt; — leveraging the Copilot SDK to generate daily coding challenges based on a GitHub profile&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AI-powered evaluation&lt;/strong&gt; — evaluating solutions against test cases with automated feedback&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Project export&lt;/strong&gt; — automatically exporting completed projects to new GitHub repositories&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Personalized learning&lt;/strong&gt; — habit tracking, dynamic learning topics, real-time skill customization, and integration with the GitHub MCP server for enhanced developer growth&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rubber Duck Thursdays - Let's build with GitHub Copilot SDK</title><link>https://chrisreddington.com/video/2026-01-29-rubber-duck-thursdays/</link><pubDate>Thu, 29 Jan 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2026-01-29-rubber-duck-thursdays/</guid><description>&lt;p&gt;Join us for Rubber Duck Thursdays! A lighthearted and informal stream where we live code on some projects. This week we explore how to bring the power of GitHub Copilot into your apps with the GitHub Copilot SDK, building hands-on examples and discussing patterns for integrating AI-powered coding assistance directly into developer tools and workflows.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - It's time to build!</title><link>https://chrisreddington.com/video/2026-01-08-rubber-duck-thursdays/</link><pubDate>Thu, 08 Jan 2026 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2026-01-08-rubber-duck-thursdays/</guid><description>&lt;p&gt;Chris showcases Timestamp (gh.io/timestamp), an open-source countdown timer app that evolved from the 2025 holiday streams into a fully extensible project with multiple themes, comprehensive testing, and GitHub automation.&lt;/p&gt;
&lt;h2 id="timestamp--open-source-countdown-timer"&gt;Timestamp — Open Source Countdown Timer&lt;/h2&gt;
&lt;p&gt;The app is built with vanilla TypeScript and Vite, featuring:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multiple themes&lt;/strong&gt; — contribution graph (GitHub-style squares that fill as midnight approaches), fireworks celebration (powered by fireworks.js), and a scaffoldable ring theme&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;World map wall clock&lt;/strong&gt; — an interactive SVG map using Natural Earth public domain data with day/night visualization&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Time zone support&lt;/strong&gt; — countdown to midnight in any city worldwide with a drop-down and map selector&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Light/dark mode&lt;/strong&gt; — system-aware theme switching with per-theme styling&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Accessibility&lt;/strong&gt; — built-in reduced motion support, keyboard navigation, and WCAG considerations&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="copilot-custom-instructions-vs-agents-vs-prompt-files"&gt;Copilot Custom Instructions vs Agents vs Prompt Files&lt;/h2&gt;
&lt;p&gt;Chris shares key lessons learned from structuring his Copilot configuration:&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Let's build our way into 2026!</title><link>https://chrisreddington.com/video/2025-12-18-rubber-duck-thursdays/</link><pubDate>Thu, 18 Dec 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-12-18-rubber-duck-thursdays/</guid><description>&lt;p&gt;In the last European-timezone-friendly stream of 2025, Chris builds a New Year countdown app from scratch — and reveals a GitHub contribution graph-themed countdown he built earlier.&lt;/p&gt;
&lt;h2 id="building-a-countdown-app-from-scratch"&gt;Building a Countdown App from Scratch&lt;/h2&gt;
&lt;p&gt;Chris scaffolds a new project using Vite with vanilla TypeScript and Tailwind CSS v4, using GitHub Copilot to generate the initial countdown logic, HTML structure, and styling. The app counts down to midnight on New Year&amp;rsquo;s with large digits and subtle animations.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Let's build down tech debt</title><link>https://chrisreddington.com/video/2025-12-11-rubber-duck-thursdays/</link><pubDate>Thu, 11 Dec 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-12-11-rubber-duck-thursdays/</guid><description>&lt;p&gt;Chris reviews the latest GitHub changelog and explores the major VS Code December release, then continues building custom agents for a game MCP server project.&lt;/p&gt;
&lt;h2 id="github-changelog-highlights"&gt;GitHub Changelog Highlights&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;CodeQL 2.23.6&lt;/strong&gt; adds Swift 6.2.1 and new C# security queries&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GPT-5.1 Codex Max&lt;/strong&gt; now in public preview for GitHub Copilot across VS Code, GitHub.com, and GitHub Mobile&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Workflow dispatch inputs&lt;/strong&gt; limit increased from 10 to 25&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Copilot code generation metrics&lt;/strong&gt; now available in the enterprise insights dashboard&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enterprise teams&lt;/strong&gt; limits increased over 10x — up to 2,500 teams and 5,000 users per team&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dependabot-based dependency graphs for Go&lt;/strong&gt; now provide more complete transitive dependency trees&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;npm classic tokens revoked&lt;/strong&gt; — replaced with session-based and CLI token management&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Repository custom properties&lt;/strong&gt; now support GraphQL management and a URL type with built-in validation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub MCP server&lt;/strong&gt; adds tool-specific configuration, lockdown mode for untrusted contributors, and default content sanitization against prompt injection&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub Enterprise Server 3.19&lt;/strong&gt; GA with rule set history import/export, SSH/TLS cipher configuration, and OpenTelemetry metrics&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Auto model selection&lt;/strong&gt; GA in VS Code for all Copilot plans&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="vs-code-december-release--agent-features"&gt;VS Code December Release — Agent Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Agent HQ&lt;/strong&gt; for managing multiple coding agents — background, cloud, or local — working simultaneously&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Background agents with git worktrees&lt;/strong&gt; for isolated workspaces, enabling multiple agents to work in parallel without file conflicts&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Custom agents for organizations&lt;/strong&gt; — share agents at the org level via &lt;code&gt;.github-private&lt;/code&gt; repositories&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sub-agents via run sub agent&lt;/strong&gt; — delegate tasks to specialized sub-agents with their own context windows to avoid context bloat&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Claude skills support&lt;/strong&gt; — reuse existing Claude Code skills within VS Code agents&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Session management improvements&lt;/strong&gt; — integrated sessions view, compact and side-by-side layouts, and persistent local agent sessions&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="live-coding--custom-agents-and-background-agents"&gt;Live Coding — Custom Agents and Background Agents&lt;/h2&gt;
&lt;p&gt;Chris demonstrates the new VS Code agent features by continuing work on a tic-tac-toe game with an MCP server backend. He creates a testing specialist agent using a TDD workflow, experiments with background agents running in git worktrees, and explores sub-agent delegation for specialized tasks like code quality review.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Let's build with custom agents (again!)</title><link>https://chrisreddington.com/video/2025-12-04-rubber-duck-thursdays/</link><pubDate>Thu, 04 Dec 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-12-04-rubber-duck-thursdays/</guid><description>&lt;p&gt;Chris continues building custom agents for the SDLC, exploring the awesome-copilot repository for inspiration and live-building a GitHub Actions workflow agent with plan mode.&lt;/p&gt;
&lt;h2 id="topics-covered"&gt;Topics Covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub Changelog Roundup&lt;/strong&gt; — Blocking repo admins from installing GitHub Apps now GA, Copilot Spaces with public spaces and code view support, secret scanning updates for November 2025, GitHub Enterprise Server 3.19 RC, assigning issues to Copilot via GraphQL and REST APIs, and Claude Opus 4.5 availability across more IDEs.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agent Inspiration from awesome-copilot&lt;/strong&gt; — Reviewing partner-built agents and the awesome-copilot repository for ideas including test writers, security reviewers, tech debt analyzers, documentation generators, PR review assistants, and onboarding guides.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agent Consolidation&lt;/strong&gt; — Discussing whether to keep agents separate or consolidate them based on shared tool access, output formats, and domain overlap.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Building a GitHub Actions Agent&lt;/strong&gt; — Using plan mode to design a custom agent for authoring and updating GitHub Actions workflows, including monorepo build order awareness and minimal permissions guidance.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub Actions Instructions File&lt;/strong&gt; — Creating a companion instructions file with repository-specific CI/CD conventions, build order, environment variables, and recommended practices for workflow definitions.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Plan Mode Workflow&lt;/strong&gt; — Demonstrating the iterative plan-then-implement workflow where Copilot asks clarifying questions before generating code, and switching between plan and agent modes.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rubber Duck Thursdays - Let's build with custom agents</title><link>https://chrisreddington.com/video/2025-11-27-rubber-duck-thursdays/</link><pubDate>Thu, 27 Nov 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-11-27-rubber-duck-thursdays/</guid><description>&lt;p&gt;Chris explores Copilot custom agents and custom instructions, restructuring project context files and creating meta instruction files for a more effective AI-assisted development workflow.&lt;/p&gt;
&lt;h2 id="topics-covered"&gt;Topics Covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub Changelog Roundup&lt;/strong&gt; — Enterprise bring-your-own-key for Copilot, linter integration with Copilot code review (ESLint, PMD), GitHub Actions cache size exceeding 10 GB, Claude Opus 4.5 in public preview, and secret scanning updates.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Custom Instructions Deep Dive&lt;/strong&gt; — Restructuring &lt;code&gt;copilot-instructions.md&lt;/code&gt; to include monorepo tech stack details, build order, service boundaries, security guidelines, and testing conventions using recommended practices from the docs.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Meta Instruction Files&lt;/strong&gt; — Creating instruction files that teach Copilot how to write better custom instructions and custom agents, pulling in recommended practices from the GitHub and VS Code documentation.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Plan Mode for Agent Design&lt;/strong&gt; — Using Copilot&amp;rsquo;s plan mode to iterate on ideas before implementation, demonstrating how follow-up questions help refine requirements like rubber duck debugging.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Context Engineering&lt;/strong&gt; — Discussion on supplying the right context to Copilot, balancing context window size, and the importance of being requirements-driven for high-quality code generation.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Community Q&amp;amp;A&lt;/strong&gt; — Topics including sustainable engineering pace, avoiding burnout, handling merge conflicts, and the fundamentals of software quality.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rubber Duck Thursdays - Let's build</title><link>https://chrisreddington.com/video/2025-11-20-rubber-duck-thursdays/</link><pubDate>Thu, 20 Nov 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-11-20-rubber-duck-thursdays/</guid><description>&lt;p&gt;Chris catches up on several weeks of GitHub releases and then returns to the turn-based game MCP server project to fix a dependency upgrade issue.&lt;/p&gt;
&lt;h2 id="topics-covered"&gt;Topics Covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub Changelog Roundup&lt;/strong&gt; — Managing Copilot coding agent tasks in VS Code, new OIDC token claims for GitHub Actions, GPT-5.1 and Codex models, configuring the coding agent as a bypass actor for rulesets, MCP registry and allowlist controls in VS Code Stable, plan mode and isolated sub-agents in public preview, Gemini 3 Pro, and CodeQL updates.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MCP Server for Games&lt;/strong&gt; — Revisiting the tic-tac-toe MCP server project and demonstrating how tool calls allow natural language game interaction with a backend API.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fixing Dependency Upgrades with Copilot&lt;/strong&gt; — Using agent mode across multiple models (Codex, Gemini 3 Pro) to diagnose and resolve a type check failure caused by a Dependabot SDK version bump.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rubber Duck Thursdays - Time to build!</title><link>https://chrisreddington.com/video/2025-09-04-rubber-duck-thursdays/</link><pubDate>Thu, 04 Sep 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-09-04-rubber-duck-thursdays/</guid><description>&lt;p&gt;Join us for Rubber Duck Thursdays! A lighthearted and informal stream where we live code on some projects.&lt;/p&gt;
&lt;p&gt;In this stream, we explore adding a 3D visualization to the turn-based game MCP server using Three.js, built with help from Copilot coding agent. We demo switching between 2D and 3D views of tic-tac-toe games while playing against the MCP server, and discuss the iterative process of prompting Copilot — including the importance of specifying requirements like piece orientation and camera controls.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Let's keep building!</title><link>https://chrisreddington.com/video/2025-08-28-rubber-duck-thursdays/</link><pubDate>Thu, 28 Aug 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-08-28-rubber-duck-thursdays/</guid><description>&lt;p&gt;Join us for Rubber Duck Thursdays! A lighthearted and informal stream where we live code on some projects.&lt;/p&gt;
&lt;p&gt;In this stream, we recap the turn-based game MCP server and demo the elicitation feature for gathering user preferences, then shift gears into a deep dive on GitHub Actions. Starting from an empty repository, we build workflows from scratch — covering YAML structure, event triggers (issues, issue_comment, push, pull_request, workflow_dispatch), jobs running in parallel, job dependencies using the &lt;code&gt;needs&lt;/code&gt; property, conditional steps with &lt;code&gt;if&lt;/code&gt;, and matrix strategies for cross-platform builds across multiple OS and Node.js versions.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Build for the love of code</title><link>https://chrisreddington.com/video/2025-07-24-rubber-duck-thursdays/</link><pubDate>Thu, 24 Jul 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-07-24-rubber-duck-thursdays/</guid><description>&lt;p&gt;In this episode, we recap the latest GitHub changelog including GitHub Spark entering public preview and coding agent support for instructions.md files. We introduce the &lt;a href="https://gh.io/love-of-code"&gt;Build for the love of code&lt;/a&gt; hackathon, prototype a rubber duck debugging app with GitHub Spark, and build an MCP server from scratch using TypeScript while exploring tools, prompts, and resources.&lt;/p&gt;
&lt;h2 id="topics-covered"&gt;Topics covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub changelog recap&lt;/strong&gt; — M2 Pro hosted runners, GitHub Issues quality-of-life updates, Azure endpoint deprecation for GitHub Models, PR files changed improvements, Copilot code review policy changes, GitHub Spark public preview for Copilot Pro Plus, coding agent support for instructions.md custom instructions, and base branch selection for coding agent tasks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Build for the love of code hackathon&lt;/strong&gt; — Introduced the &lt;a href="https://gh.io/love-of-code"&gt;gh.io/love-of-code&lt;/a&gt; hackathon running July 16 to September 22 with six categories: hardware projects, AI agents, terminal tools, games, web apps, and wildcard entries. Brainstormed duck-themed project ideas with Copilot.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub Spark prototyping&lt;/strong&gt; — Used GitHub Spark (now in public preview) to rapidly prototype a rubber duck debugging web app with animated duck companions and different debugging personalities.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Building an MCP server from scratch&lt;/strong&gt; — Scaffolded a TypeScript MCP server project from an empty repository, covering server initialization with the MCP SDK, registering tools with Zod schema validation, defining prompts and resources, and setting up repository foundations including dev containers, Dependabot configuration, and GitHub Actions CI workflows.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Github-Informatiker verrät seine 4 besten KI-Prompts</title><link>https://chrisreddington.com/media/grunderszene-prompts/</link><pubDate>Tue, 22 Jul 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/media/grunderszene-prompts/</guid><description>&lt;h2 id="context"&gt;Context&lt;/h2&gt;
&lt;p&gt;Featured in a Gründerszene profile where I shared my 4 best AI prompts that help me focus on higher-value tasks requiring human judgment and creativity. The article explores how I use AI tools daily in my role at GitHub to automate repetitive work.&lt;/p&gt;
&lt;h2 id="key-quotes"&gt;Key Quotes&lt;/h2&gt;
&lt;p&gt;On using AI to enhance productivity:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;KI hilft Github-Informatiker Reddington dabei, seine Rolle effizienter und effektiver zu erfüllen. „Ich habe immer noch die Kontrolle und treffe letztlich die Entscheidungen&amp;quot;, sagt er.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Copilot agent mode, coding agent and MCP servers</title><link>https://chrisreddington.com/video/2025-07-10-rubber-duck-thursdays/</link><pubDate>Thu, 10 Jul 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-07-10-rubber-duck-thursdays/</guid><description>&lt;p&gt;In this episode, we review the latest GitHub changelog including remote MCP server support for coding agent and Copilot code review on mobile. We use the Playwright MCP server with Copilot agent mode to debug and fix UI issues in the Octo Arcade project, discuss the differences between ask, edit, and agent modes in VS Code, and explore MCP server concepts like tools, prompts, and resources.&lt;/p&gt;
&lt;h2 id="topics-covered"&gt;Topics covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub changelog recap&lt;/strong&gt; — Agents page for Copilot coding agent, CodeQL Rust support, improved repository creation experience, dependency auto-submission for Python, Copilot code review on GitHub Mobile, remote MCP server support for coding agent, and delegating tasks via the GitHub MCP server.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Playwright MCP server for UI debugging&lt;/strong&gt; — Used Copilot agent mode with the Playwright MCP server to debug and fix game sizing issues in the Octo Arcade project, including viewport overflow, header overlap, and mobile responsiveness for pong, brick breaker, and matching games.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ask vs Edit vs Agent mode&lt;/strong&gt; — Walked through the practical differences between VS Code Copilot modes: ask for conversational code suggestions that must be manually applied, edit for targeted file changes, and agent mode for autonomous multi-step workflows that can run builds, tests, and use MCP tools.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MCP server concepts&lt;/strong&gt; — Explored MCP server fundamentals including the three main primitives: tools (executable functions), prompts (predefined conversation templates), and resources (contextual data for the AI).&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rubber Duck Thursdays - Let's build</title><link>https://chrisreddington.com/video/2025-07-03-rubber-duck-thursdays/</link><pubDate>Thu, 03 Jul 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-07-03-rubber-duck-thursdays/</guid><description>&lt;p&gt;In this stream, Chris returns from vacation to catch up on weeks of GitHub updates and demonstrates adding internationalization to apps using Copilot coding agent, custom VS Code chat modes, and agent mode in Xcode.&lt;/p&gt;
&lt;h2 id="topics-covered"&gt;Topics Covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub Changelog Review&lt;/strong&gt; — Updates including model evaluations CLI for GitHub Models, remote GitHub MCP server in public preview, Copilot coding agent now available for business users, GitHub Models pay-as-you-go billing, Claude Sonnet 4 and Opus 4 GA, CodeQL updates for Go and Swift, Actions Runner Controller release, and Copilot code review with custom instructions support&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Custom Chat Modes in VS Code&lt;/strong&gt; — Creating a custom planning mode in VS Code Insiders to generate implementation plans and create GitHub issues, integrating the GitHub MCP server as a tool within the chat mode&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Remote GitHub MCP Server&lt;/strong&gt; — Setting up and authenticating with the new remote GitHub MCP server, eliminating the need for local Docker containers and personal access tokens via OAuth&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Copilot Coding Agent for Internationalization&lt;/strong&gt; — Assigning a GitHub issue to Copilot to add English, French, and Spanish language support to the Copilot Airways Next.js web app, reviewing the AI-generated pull request&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Xcode Agent Mode&lt;/strong&gt; — Demonstrating agent mode in Xcode to add internationalization to a Swift iOS version of the Copilot Airways app with a language selector&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Issue Creation with Copilot&lt;/strong&gt; — Using Copilot on github.com to draft well-structured GitHub issues from natural language descriptions&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rubber Duck Thursdays - Let's build with agents</title><link>https://chrisreddington.com/video/2025-06-19-rubber-duck-thursdays/</link><pubDate>Thu, 19 Jun 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-06-19-rubber-duck-thursdays/</guid><description>&lt;p&gt;In this episode, we recap the latest GitHub changelog updates including Copilot coding agent availability for pro users and the new Playwright MCP browser capability. We update Copilot custom instructions and setup steps for a GitHub Action project, use the Playwright MCP server to build interactive UI features on a trend radar app, and leverage Copilot coding agent to identify and fix technical debt.&lt;/p&gt;
&lt;h2 id="topics-covered"&gt;Topics covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub changelog recap&lt;/strong&gt; — Copilot coding agent for Copilot Pro users, GitHub Actions fine-grain permissions, upgraded Llama models, improved PR file experience, Dependabot minimum package age configuration, and Copilot coding agent Playwright MCP browser support.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Copilot custom instructions and setup steps&lt;/strong&gt; — Updated custom instructions for a validate-file-exists GitHub Action project and created a Copilot setup steps YAML to configure the coding agent environment with Node.js and dependencies.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Playwright MCP server for UI development&lt;/strong&gt; — Used the Playwright MCP server with Copilot coding agent to build drag-and-drop functionality and point editing on a trend radar web app, demonstrating how the agent can interact with a running application.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Technical debt with Copilot coding agent&lt;/strong&gt; — Prompted Copilot to identify technical debt in the project, then created GitHub issues for package metadata fixes, documentation inconsistencies, and input validation improvements. Copilot coding agent autonomously submitted a PR addressing all three items with new tests.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rubber Duck Thursdays - Copilot coding agent and Copilot agent mode</title><link>https://chrisreddington.com/video/2025-06-05-rubber-duck-thursdays/</link><pubDate>Thu, 05 Jun 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-06-05-rubber-duck-thursdays/</guid><description>&lt;p&gt;In this stream, Chris returns after Microsoft Build to dive deep into Copilot coding agent, demonstrating how to assign GitHub issues to Copilot and review the resulting pull requests.&lt;/p&gt;
&lt;h2 id="topics-covered"&gt;Topics Covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Microsoft Build Recap&lt;/strong&gt; — Highlights from the event including Copilot coding agent announcements, agent mode availability in Eclipse, Xcode, and IntelliJ editors, and GitHub Models updates&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub Changelog Review&lt;/strong&gt; — Three weeks of updates including Claude Sonnet 4 and Opus 4 in GitHub Copilot, Copilot Spaces, GPT-4o Copilot model update, coding agent on GitHub Mobile, secret scanning pattern expansions, and GitHub Enterprise Server 3.17&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Copilot Coding Agent Deep Dive&lt;/strong&gt; — Live demo with Copilot Airways app showing how to assign issues to Copilot, review AI-generated pull requests for refactoring and CI/CD deployment, and iterate through code review comments&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MCP Integration with Notion&lt;/strong&gt; — Demonstrating Model Context Protocol by connecting Copilot coding agent to a Notion MCP server to pull requirements from external tools and implement features automatically&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Issue Scoping Best Practices&lt;/strong&gt; — Structuring GitHub issues with overview, problem statement, acceptance criteria, implementation details, and file pointers for optimal Copilot coding agent results&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Copilot Code Review&lt;/strong&gt; — Using automated code review on pull requests with actionable suggestions for code quality&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Extend GitHub Copilot coding agent with custom MCP tools</title><link>https://chrisreddington.com/video/2025-06-01-copilot-coding-agent-mcp/</link><pubDate>Sun, 01 Jun 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-06-01-copilot-coding-agent-mcp/</guid><description>&lt;p&gt;This video demonstrates an end-to-end MCP-powered workflow with the GitHub Copilot coding agent, using the &amp;lsquo;Copilot Airways&amp;rsquo; travel guide as the demo application.&lt;/p&gt;
&lt;p&gt;Key topics covered:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Creating a GitHub Issue from Copilot Chat&lt;/strong&gt; on GitHub.com: asking Copilot to formulate a structured issue from a verbal description, including a link to the Notion document for traceability between the product team&amp;rsquo;s requirements and the engineering backlog&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Assigning the issue to Copilot coding agent&lt;/strong&gt; directly from the Copilot Chat interface—no need to navigate away to the Issues tab&lt;/li&gt;
&lt;li&gt;How the &lt;strong&gt;Notion MCP server&lt;/strong&gt; is configured to give Copilot access to external product documentation, bridging the gap between the product team&amp;rsquo;s tools and the engineering workflow&lt;/li&gt;
&lt;li&gt;Inspecting the &lt;strong&gt;session view&lt;/strong&gt; to see multiple MCP tool calls used to fetch information from Notion, which were then incorporated into Copilot&amp;rsquo;s implementation plan and code changes&lt;/li&gt;
&lt;li&gt;How &lt;strong&gt;MCP servers and their associated tools are provisioned within GitHub Actions&lt;/strong&gt; when Copilot is being set up for a coding agent task—visible in the workflow run logs&lt;/li&gt;
&lt;li&gt;Navigating a large pull request using &lt;strong&gt;Copilot&amp;rsquo;s PR change summary&lt;/strong&gt; to gain the right context before diving into a detailed code review&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Assign issues to GitHub Copilot from the GitHub mobile app</title><link>https://chrisreddington.com/video/2025-05-27-copilot-coding-agent-mobile/</link><pubDate>Tue, 27 May 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-05-27-copilot-coding-agent-mobile/</guid><description>&lt;p&gt;The GitHub Copilot coding agent isn&amp;rsquo;t just a desktop experience—you can assign issues and track Copilot&amp;rsquo;s progress directly from the GitHub Mobile app or a mobile browser, making it useful during a commute or whenever you&amp;rsquo;re away from your laptop.&lt;/p&gt;
&lt;p&gt;The video demonstrates the following mobile-first workflow using the &amp;lsquo;Copilot Airways&amp;rsquo; demo repository:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Navigating the &lt;strong&gt;issues backlog&lt;/strong&gt; and assigning a GitHub Pages deployment task to Copilot directly from the &lt;strong&gt;GitHub Mobile app&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Copilot acknowledging the assignment with the 👀 emoji reaction and immediately creating a pull request&lt;/li&gt;
&lt;li&gt;Switching to &lt;strong&gt;github.com in a mobile browser&lt;/strong&gt; to open the pull request and tap &amp;lsquo;View session&amp;rsquo;&lt;/li&gt;
&lt;li&gt;Reviewing how Copilot explored existing CI workflow files, formed a plan, updated configuration files, and modified the existing workflow to add the GitHub Pages deployment step&lt;/li&gt;
&lt;li&gt;Copilot running &lt;strong&gt;linters, builds, and tests&lt;/strong&gt; as quality checks during the agentic loop to ensure the CI pipeline remains healthy&lt;/li&gt;
&lt;li&gt;Using the &lt;strong&gt;&amp;lsquo;Approve and Run&amp;rsquo;&lt;/strong&gt; button on mobile to authorize GitHub Actions execution against the AI-generated changes&lt;/li&gt;
&lt;li&gt;Marking the pull request as ready for review and merging once checks pass—all without touching a laptop&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Copilot Agent Mode is now available in GitHub Copilot for Xcode</title><link>https://chrisreddington.com/video/2025-05-23-copilot-xcode-agentmode/</link><pubDate>Sat, 24 May 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-05-23-copilot-xcode-agentmode/</guid><description>&lt;p&gt;GitHub Copilot for Xcode has added agent mode, bringing the same agentic capabilities available in Visual Studio Code to native Apple platform development. This video covers the key features and a practical demonstration.&lt;/p&gt;
&lt;p&gt;Topics and demos include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The new &lt;strong&gt;ask/agent mode toggle&lt;/strong&gt; in the Copilot chat pane within Xcode—ask mode for back-and-forth conversation, agent mode for autonomous task execution that can invoke tools and run terminal commands&lt;/li&gt;
&lt;li&gt;Configuring &lt;strong&gt;Model Context Protocol (MCP)&lt;/strong&gt; via the Xcode settings page: navigating to the MCP tab, editing the configuration JSON, and reviewing available tools based on what&amp;rsquo;s already configured&lt;/li&gt;
&lt;li&gt;Adding the &lt;strong&gt;GitHub MCP server&lt;/strong&gt; to give Copilot access to GitHub repository data (issues, pull requests, etc.) directly from within Xcode&lt;/li&gt;
&lt;li&gt;Using agent mode to &lt;strong&gt;look up open issues and summarize the state of work&lt;/strong&gt; across the repository, helping prioritize what to tackle next&lt;/li&gt;
&lt;li&gt;A hands-on fix: identifying that instant (on-first-keystroke) form validation creates a poor user experience in an iOS app, writing a clear instruction with explicit expectations for Copilot to follow, and watching it explore workspace files and apply the targeted change&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Verifying the fix in the iOS simulator&lt;/strong&gt;: confirming that input fields no longer show red validation errors on first load, and that error messages appear correctly when invalid data is entered&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Assigning Copilot ad-hoc tasks through Copilot chat</title><link>https://chrisreddington.com/video/2025-05-22-copilot-coding-agent-adhoc-tasks/</link><pubDate>Thu, 22 May 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-05-22-copilot-coding-agent-adhoc-tasks/</guid><description>&lt;p&gt;The GitHub Copilot coding agent isn&amp;rsquo;t limited to work assigned from GitHub Issues—you can also delegate tasks directly from a Copilot Chat session in Visual Studio Code while actively working in the codebase.&lt;/p&gt;
&lt;p&gt;The video walks through the following workflow on the &amp;lsquo;Copilot Airways&amp;rsquo; demo app:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Opening Copilot Chat in &lt;strong&gt;ask mode&lt;/strong&gt; in Visual Studio Code and invoking the &lt;code&gt;@github&lt;/code&gt; chat participant&lt;/li&gt;
&lt;li&gt;Describing naming inconsistencies found across the codebase and asking Copilot to raise a pull request that standardizes the naming conventions across all implementations&lt;/li&gt;
&lt;li&gt;Reviewing Copilot&amp;rsquo;s proposed plan (including documentation improvements to make conventions explicit) and confirming before it proceeds&lt;/li&gt;
&lt;li&gt;Copilot creating the pull request and returning a direct link within the chat session&lt;/li&gt;
&lt;li&gt;Viewing the &lt;strong&gt;session log&lt;/strong&gt; to see how Copilot mapped out the refactoring approach&lt;/li&gt;
&lt;li&gt;Letting Copilot work asynchronously in the background—running lint and build steps to verify code quality—while continuing with other work&lt;/li&gt;
&lt;li&gt;Returning to the pull request, using the &lt;strong&gt;&amp;lsquo;Approve and Run&amp;rsquo;&lt;/strong&gt; button to trigger GitHub Actions checks, and progressing to merge once all checks pass&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>How to get the most out of the Copilot coding agent</title><link>https://chrisreddington.com/video/2025-05-21-copilot-coding-agent-tips-tricks/</link><pubDate>Wed, 21 May 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-05-21-copilot-coding-agent-tips-tricks/</guid><description>&lt;p&gt;The GitHub Copilot coding agent works best when given rich context and a consistent environment. This video breaks down four concrete practices that help set Copilot up for success before a single line of code is written.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Write well-scoped GitHub Issues&lt;/strong&gt; — Can the issue be resolved in a single pull request? Does it include a clear problem description, acceptance criteria, pointers to the relevant files, and a loose implementation plan to follow?&lt;/p&gt;</description></item><item><title>The GitHub Copilot coding agent *NEW*</title><link>https://chrisreddington.com/video/2025-05-19-coding-agent-overview/</link><pubDate>Mon, 19 May 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-05-19-coding-agent-overview/</guid><description>&lt;p&gt;GitHub Copilot coding agent lets you assign GitHub Issues to Copilot, which works asynchronously in the background while you continue with other tasks. This overview video uses the &amp;lsquo;Copilot Airways&amp;rsquo; flight booking app to demonstrate the full workflow from issue assignment to merged pull request.&lt;/p&gt;
&lt;p&gt;The video covers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Assigning a GitHub Issue (adding form input validation) to Copilot with a single click&lt;/li&gt;
&lt;li&gt;How Copilot acknowledges the assignment, creates a pull request, and keeps the PR description updated as it progresses&lt;/li&gt;
&lt;li&gt;Viewing the Copilot session to understand how it explored the repository, formed a plan, and created a new GitHub Actions workflow file&lt;/li&gt;
&lt;li&gt;How Copilot runs tools such as linters, builds, and tests to self-verify code quality during the agentic loop&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;&amp;lsquo;Approve and Run&amp;rsquo; safety gate&lt;/strong&gt;, which requires explicit human approval before any GitHub Actions workflow executes against AI-generated code&lt;/li&gt;
&lt;li&gt;Adding review comments to the PR (requesting a CI workflow) and watching Copilot acknowledge and act on the feedback&lt;/li&gt;
&lt;li&gt;The final result: a form updated with real-time validation and an improved user experience, ready to merge&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rubber Duck Thursdays - Building from requirements with Agent Mode</title><link>https://chrisreddington.com/video/2025-05-15-rubber-duck-thursdays/</link><pubDate>Thu, 15 May 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-05-15-rubber-duck-thursdays/</guid><description>&lt;p&gt;In this stream, Chris walks through building a GitHub CLI extension in Go from scratch, taking a spec-driven and test-driven development approach powered by Copilot Agent Mode.&lt;/p&gt;
&lt;h2 id="topics-covered"&gt;Topics Covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub Changelog Review&lt;/strong&gt; — Model updates in GitHub Models (Mistral, Cohere, Llama), GPT-4.1 as the new default Copilot model, updated rate limits for unauthenticated requests, and the VS Code April release with MCP support and prompt files&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Microsoft Build Preview&lt;/strong&gt; — A look ahead at sessions and events for the following week&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Building gh-demo from Scratch&lt;/strong&gt; — Bootstrapping a new Go-based GitHub CLI extension using VS Code&amp;rsquo;s new workspace creation with Copilot, the Cobra library, and a spec-driven approach starting from a product requirements document&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Test-Driven Development with Copilot&lt;/strong&gt; — Writing tests first for a hydrate subcommand that reads JSON files to create GitHub issues, discussions, and pull requests, with content type filtering and label collection&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub Actions CI&lt;/strong&gt; — Creating a build, test, and lint workflow for the new CLI extension&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Custom Instructions&lt;/strong&gt; — Setting up a copilot-instructions.md file to guide Copilot&amp;rsquo;s behavior around path handling and project conventions&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rubber Duck Thursdays - Building with Agent Mode and MCP</title><link>https://chrisreddington.com/video/2025-04-10-rubber-duck-thursdays/</link><pubDate>Thu, 10 Apr 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-04-10-rubber-duck-thursdays/</guid><description>&lt;p&gt;A big announcements week — this episode unpacks Copilot Agent Mode going stable in VS Code and the launch of the official GitHub MCP server, then puts both to work building a real app from scratch.&lt;/p&gt;
&lt;p&gt;The GitHub Changelog segment covers the VS Code Copilot March release (agent mode GA, MCP support, next edit suggestions), the GitHub MCP server launch, Copilot Pro Plus tier, Copilot Code Review GA, security campaigns GA with automated issue creation, GitHub Issues and Projects improvements (sub-issues, issue types, 50K item limit), Helm support for Dependabot version updates, and more.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Sshh, let's talk about secrets.</title><link>https://chrisreddington.com/video/2025-04-03-rubber-duck-thursdays/</link><pubDate>Thu, 03 Apr 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-04-03-rubber-duck-thursdays/</guid><description>&lt;p&gt;This episode focuses on why secrets should never exist in source code and how GitHub&amp;rsquo;s newly unbundled security products help prevent and detect secret leaks.&lt;/p&gt;
&lt;p&gt;After the weekly GitHub Changelog review — covering the new GPT-4o Copilot completions model, repository ownership limits, GitHub Desktop updates, Copilot mobile multi-model support, and GitHub Issues dashboard improvements — Chris dives into the headline topic: GitHub Advanced Security splitting into two standalone products, Secret Protection ($19/month) and Code Security ($30/month), now available for GitHub Team plans without requiring Enterprise.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Creating a brickbreaker walkthrough</title><link>https://chrisreddington.com/video/2025-03-27-rubber-duck-thursdays/</link><pubDate>Thu, 27 Mar 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-03-27-rubber-duck-thursdays/</guid><description>&lt;p&gt;Chris live-codes a GitHub-themed brick breaker game walkthrough using Copilot agent mode, demonstrating how prompt framing and context shape AI-generated code. The session covers bootstrapping project structure from an existing Game of Life template, Copilot custom instructions, and the latest GitHub changelog including enterprise rulesets, Copilot edits in JetBrains, and dependency label improvements.&lt;/p&gt;
&lt;p&gt;In this episode, Chris sets out to build an educational walkthrough — similar to an existing Conway&amp;rsquo;s Game of Life sample — but for a brick breaker game styled with GitHub&amp;rsquo;s contribution graph colors. Using Copilot agent mode, he bootstraps the project structure by referencing the Game of Life walkthrough as context, then iterates on lesson pages focused on teaching prompt engineering for agent mode. The live coding demonstrates key concepts: how vague prompts produce incomplete results, how adding specific requirements (responsive containers, keyboard and mouse controls, bouncing physics) improves output, and how Copilot custom instructions (including a fun &amp;ldquo;talk like a pirate&amp;rdquo; experiment) modify agent behavior. Chris also briefly showcases the OctoSnap arcade concept and discusses ideas for making brick breaker use GitHub contribution data for brick colors and scoring. The changelog segment covers Mistral Small 3.1 in GitHub Models, upcoming GitHub Actions cache service changes, Copilot edits in JetBrains IDEs, enterprise custom properties and rulesets going GA, and Maven dependency labeling in the dependency graph.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Exploring GitHub Models</title><link>https://chrisreddington.com/video/2025-03-20-rubber-duck-thursdays/</link><pubDate>Thu, 20 Mar 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-03-20-rubber-duck-thursdays/</guid><description>&lt;p&gt;Chris explores GitHub Models as an AI prototyping playground, demonstrates Copilot on the command line for learning Linux commands, and shows off a new leaderboard system for the OctoSnap card game. The session also covers two weeks of GitHub changelog updates including fine-grained personal access tokens going GA, enterprise-owned GitHub Apps, instant semantic code search indexing, and Copilot updates across VS Code, JetBrains, Xcode, and Eclipse.&lt;/p&gt;
&lt;p&gt;Returning from a week off, Chris opens by demonstrating the GitHub CLI Copilot extension — using &lt;code&gt;gh copilot suggest&lt;/code&gt; and &lt;code&gt;gh copilot explain&lt;/code&gt; to translate natural language into shell commands, explain complex terminal commands, and learn Linux tooling interactively. He then showcases the OctoSnap leaderboard backed by Cosmos DB on Azure, and uses Copilot agent mode live to fix a bug where usernames with the &lt;code&gt;@&lt;/code&gt; symbol caused issues, including adding backend validation and tests. The second half focuses on GitHub Models, where Chris walks through the model catalog and playground, comparing models like GPT-4o and DeepSeek V3 for a computer science quiz scenario. He demonstrates system prompts, prompt presets, the prompt editor, quick actions for switching between cheaper and faster models, and how to generate integration code for JavaScript and Python. The changelog roundup covers Copilot custom instructions going GA, code referencing in JetBrains, enterprise-owned GitHub Apps, fine-grained PATs reaching general availability, actions performance metrics, and Copilot for Xcode chat becoming generally available.&lt;/p&gt;</description></item><item><title>Rubber Duck Thursdays - Building a scoring system</title><link>https://chrisreddington.com/video/2025-03-06-rubber-duck-thursdays/</link><pubDate>Thu, 06 Mar 2025 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2025-03-06-rubber-duck-thursdays/</guid><description>&lt;p&gt;Chris walks through building &amp;ldquo;OctoSnap,&amp;rdquo; a GitHub-themed memory card matching game using Next.js and JavaScript. The session dives deep into designing a scoring model with GitHub Copilot — covering difficulty multipliers, time-based rewards, and penalty mechanics — and reviews the latest GitHub changelog including new AI models, GitHub Advanced Security pricing changes, secret scanning push protection APIs, and code scanning improvements for GitHub Actions workflows.&lt;/p&gt;
&lt;p&gt;In this episode, Chris steps away from the Go-based CLI game extension built in previous weeks and introduces OctoSnap, a browser-based card matching game featuring artwork from the GitHub Octodex. He demonstrates the game across easy, medium, and hard difficulty modes, showing how image transformations like rotation and color filters increase challenge. The core focus is on iterating with Copilot to build a nuanced scoring system that balances mode difficulty multipliers, time duration bonuses, perfect play ratios, and random click penalties. Chris shares how he broke the problem into granular prompts for Copilot and visualized the scoring curves to ensure fair overlap between difficulty tiers. The changelog segment covers new models in GitHub Copilot and GitHub Models, GitHub Advanced Security being split into Secret Protection and Code Security standalone products, delegated alert dismissal, expanded CodeQL support for GitHub Actions and Go 1.24, and GitHub Mobile updates including Copilot chat and sub-issues.&lt;/p&gt;</description></item><item><title>Use GitHub Spark to create a podcast timer apps</title><link>https://chrisreddington.com/video/2024-11-04-github-spark-podcast-timer/</link><pubDate>Mon, 04 Nov 2024 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2024-11-04-github-spark-podcast-timer/</guid><description>&lt;p&gt;This is a demo video showcasing GitHub Spark. The video covers the following specific topics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GitHub Spark&amp;rsquo;s mobile-first design philosophy: building apps on the go using natural language&lt;/li&gt;
&lt;li&gt;Creating a podcast session timer app from a plain-language description&lt;/li&gt;
&lt;li&gt;Iteratively adding controls via natural language: start, pause, and reset for each timer segment&lt;/li&gt;
&lt;li&gt;Adding a reverse progress bar to give hosts a visual sense of remaining time&lt;/li&gt;
&lt;li&gt;Implementing a color-coded time indicator: green (&amp;gt;50% remaining), amber (25–50%), red (&amp;lt;25%)&lt;/li&gt;
&lt;li&gt;Triggering a red flashing alert when a timer reaches zero&lt;/li&gt;
&lt;li&gt;Using Spark&amp;rsquo;s built-in LLM integration to allow users to create timer segments from a natural language description (e.g. &amp;ldquo;two 5-minute stanzas and a 3-minute outro&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;Using the Spark sidebar to view and edit managed state (timer data) directly and see updates reflected in the app&lt;/li&gt;
&lt;li&gt;Renaming and starring the app to keep it accessible from the dashboard&lt;/li&gt;
&lt;li&gt;Sharing the finished app via a read-only or write-access link for collaboration&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Use GitHub Spark to create a travel log app</title><link>https://chrisreddington.com/video/2024-10-29-github-spark-travel-app/</link><pubDate>Tue, 29 Oct 2024 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2024-10-29-github-spark-travel-app/</guid><description>&lt;p&gt;This is a demo video showcasing GitHub Spark. The video covers the following specific topics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GitHub Spark&amp;rsquo;s positioning as an AI-native micro-app platform from GitHub Next: build, use, and share apps through natural language without managing deployments&lt;/li&gt;
&lt;li&gt;Building a city travel log app by describing it in plain language and receiving an immediately interactive app (no code shown)&lt;/li&gt;
&lt;li&gt;Using the built-in theme editor to switch light/dark mode and customise accent colours and border radii&lt;/li&gt;
&lt;li&gt;Iterating on the app via natural language: adding latitude/longitude capture for each city entry&lt;/li&gt;
&lt;li&gt;Using the data tab to view and manage stored state without any database or connection string configuration&lt;/li&gt;
&lt;li&gt;Extending the app to support editing and deleting entries, and plotting city ratings on an interactive map&lt;/li&gt;
&lt;li&gt;Adding AI-powered city suggestions: using Spark&amp;rsquo;s built-in LLM integration to recommend three destinations based on existing ratings&lt;/li&gt;
&lt;li&gt;Using the variant generator when a prompt is ambiguous (&amp;ldquo;make it more sunny and fun&amp;rdquo;), producing multiple distinct UI options to choose from&lt;/li&gt;
&lt;li&gt;Navigating the revision history sidebar to review, revert, or branch off prior states&lt;/li&gt;
&lt;li&gt;Renaming and starring the app for quick dashboard access&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GitHub Copilot Chat and o1-preview: Building a maze generator!</title><link>https://chrisreddington.com/video/2024-10-03-copilot-chat-o1-preview/</link><pubDate>Thu, 03 Oct 2024 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2024-10-03-copilot-chat-o1-preview/</guid><description>&lt;p&gt;This is a demo video showcasing GitHub Copilot and o1-preview. The video covers the following specific topics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Accessing the model picker in GitHub Copilot Chat within Visual Studio Code (GPT-4o, o1 mini, o1 preview)&lt;/li&gt;
&lt;li&gt;Writing a specific, multi-requirement prompt for o1-preview: a JavaScript maze generator with keyboard navigation, variable maze sizing, and a maze-solve button&lt;/li&gt;
&lt;li&gt;Understanding o1-preview&amp;rsquo;s extended internal reasoning, which produces longer response times but handles complex requirements more reliably&lt;/li&gt;
&lt;li&gt;Reviewing the generated code and copying it into the VS Code editor; initial iteration produces a working maze with BFS and DFS visualisation&lt;/li&gt;
&lt;li&gt;Iterating with a follow-up prompt to enhance the solution path display (black dot trail, no-path notification)&lt;/li&gt;
&lt;li&gt;Testing edge cases with a 50×50 maze and a distant starting position to observe depth-first search behaviour visually&lt;/li&gt;
&lt;li&gt;Comparing o1-preview output quality against the expectation for GPT-4o on the same multi-constraint task&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GitHub Models</title><link>https://chrisreddington.com/video/2024-08-01-github-models/</link><pubDate>Thu, 01 Aug 2024 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2024-08-01-github-models/</guid><description>&lt;p&gt;This is a demo video for the launch of GitHub Models. The video covers the following specific topics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GitHub Models on the GitHub Marketplace: a curated collection of top AI models available under your existing GitHub account entitlements&lt;/li&gt;
&lt;li&gt;Exploring GPT-4o in the interactive playground, including adjusting the system prompt and temperature parameter&lt;/li&gt;
&lt;li&gt;Side-by-side model comparison: switching from GPT-4o to phi-3 mini instruct and evaluating responses to the same prompt&lt;/li&gt;
&lt;li&gt;Navigating model detail pages (README, evaluation, and transparency tabs) to inform model selection&lt;/li&gt;
&lt;li&gt;Getting started in code using the built-in code samples and GitHub Codespaces, pre-configured with SDKs and no API key setup required&lt;/li&gt;
&lt;li&gt;Updating the streaming sample to target a specific model (phi-3 mini 4K instruct) and customising prompts&lt;/li&gt;
&lt;li&gt;Using GitHub Models from the GitHub CLI: generating first-year computer science quiz questions with an AI model call&lt;/li&gt;
&lt;li&gt;Combining GitHub CLI commands with model calls, such as summarising the last 10 commits of a repository using phi-3 mini instruct&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Code from your phone with Github Copilot Workspace</title><link>https://chrisreddington.com/video/2024-05-03-copilot-workspace-mobile/</link><pubDate>Fri, 03 May 2024 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2024-05-03-copilot-workspace-mobile/</guid><description>&lt;p&gt;This is a demo video for the technical preview of GitHub Copilot Workspace. The video covers the following specific topics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Accessing GitHub Copilot Workspace from the GitHub mobile app on a phone or tablet&lt;/li&gt;
&lt;li&gt;Entering a task using typed text or the device&amp;rsquo;s built-in voice dictation&lt;/li&gt;
&lt;li&gt;Reviewing, editing, and approving the AI-generated specification (current state and proposed state)&lt;/li&gt;
&lt;li&gt;Progressing from specification to plan and reviewing the proposed file changes on mobile&lt;/li&gt;
&lt;li&gt;Inspecting code diffs and making edits directly on the mobile interface&lt;/li&gt;
&lt;li&gt;Running unit tests from the built-in terminal to verify the implementation before raising a PR&lt;/li&gt;
&lt;li&gt;Creating a pull request with an AI-generated description from within the mobile workflow&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>How to use Copilot Workspace for inspiration</title><link>https://chrisreddington.com/video/2024-05-01-copilot-workspace-template-repo/</link><pubDate>Wed, 01 May 2024 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/2024-05-01-copilot-workspace-template-repo/</guid><description>&lt;p&gt;This is a demo video for the technical preview of GitHub Copilot Workspace. The video covers the following specific topics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Starting Copilot Workspace from a GitHub template repository as a creative springboard&lt;/li&gt;
&lt;li&gt;Generating a specification that outlines the current state (template) and proposed state (customised to-do app)&lt;/li&gt;
&lt;li&gt;Progressing from specification to a step-by-step implementation plan&lt;/li&gt;
&lt;li&gt;Using the live app preview pane alongside the plan and code for in-flow iteration&lt;/li&gt;
&lt;li&gt;Streaming code changes into the environment and installing new npm dependencies via the integrated terminal&lt;/li&gt;
&lt;li&gt;Using undo/redo to navigate through Copilot Workspace change history while the live preview updates in sync&lt;/li&gt;
&lt;li&gt;Switching to GitHub Codespaces to make direct code edits (layout, styling, form) that sync back into Copilot Workspace&lt;/li&gt;
&lt;li&gt;Sharing the in-progress workspace with collaborators via the share button&lt;/li&gt;
&lt;li&gt;Creating the repository from Copilot Workspace, which triggers a GitHub Actions build and deployment to production automatically&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Rapid Prototyping as a way to validate your idea</title><link>https://chrisreddington.com/video/rapid-prototyping-validate-idea/</link><pubDate>Thu, 17 Nov 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/rapid-prototyping-validate-idea/</guid><description>&lt;p&gt;Rapid prototyping is a structured approach to validating ideas quickly — before committing significant time, budget, or architecture to a direction that may not work. But not all rapid prototyping is the same.&lt;/p&gt;
&lt;p&gt;In this episode, Chris is joined by Andrew Greenstein, CEO of SF AppWorks and host of &amp;ldquo;The Next Great Thing&amp;rdquo; podcast, who outlines &lt;strong&gt;three distinct types of rapid prototyping&lt;/strong&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Design Sprints&lt;/strong&gt; — Jake Knapp&amp;rsquo;s 5-day sprint framework for validating concepts through lightweight prototyping and user testing, without writing production code.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Iterative Feature Building&lt;/strong&gt; — Incremental development cycles where small, shippable features are tested in production to learn what users actually value.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Platform Proof-of-Concepts (POCs)&lt;/strong&gt; — Short spikes to evaluate new technologies or platforms before making a long-term architectural commitment.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Kent Beck&amp;rsquo;s product triathlon&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>ClickOps over GitOps</title><link>https://chrisreddington.com/video/clickops-over-gitops/</link><pubDate>Thu, 27 Oct 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/clickops-over-gitops/</guid><description>&lt;p&gt;The gap between raw Kubernetes and a developer-friendly PaaS is where the most interesting tooling is being built today. GitOps gives teams a declarative, version-controlled way to manage their clusters — but the infrastructure expertise required can be a steep barrier. ClickOps offers a different angle: let developers click a dashboard, and let the platform handle the YAML.&lt;/p&gt;
&lt;p&gt;In this episode, Chris is joined by Laszlo Folgas, founder of Gimlet.io, to explore how you can combine the accessibility of a UI with the reliability of a GitOps-driven workflow.&lt;/p&gt;</description></item><item><title>ToolUp Days #15</title><link>https://chrisreddington.com/video/toolup-days-15/</link><pubDate>Fri, 21 Oct 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/toolup-days-15/</guid><description>&lt;p&gt;ToolUp Days is all about showing the thought process and decisions made when creating an application from scratch. Episode 15 continues the Codespaces-based development workflow from the previous session, validating the Dapr + Codespaces secrets pattern end-to-end and extending local debugging to a second microservice — before landing in a genuinely puzzling .NET minimal API routing problem.&lt;/p&gt;
&lt;h2 id="quick-context"&gt;Quick Context&lt;/h2&gt;
&lt;p&gt;The episode opens with conference highlights from South Coast Summit and some quick hiring news before getting into the technical work.&lt;/p&gt;</description></item><item><title>From 'It works on my machine' to 'It was written by a machine' - GitHub Codespaces &amp; Copilot</title><link>https://chrisreddington.com/talk/devoxx-belgium-2022-works-on-my-machine/</link><pubDate>Mon, 10 Oct 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/talk/devoxx-belgium-2022-works-on-my-machine/</guid><description/></item><item><title>ToolUp Days #14</title><link>https://chrisreddington.com/video/toolup-days-14/</link><pubDate>Fri, 07 Oct 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/toolup-days-14/</guid><description>&lt;p&gt;ToolUp Days is all about showing the thought process and decisions made when creating an application from scratch. In this episode, Chris and Matt tackle the messy reality of developer environment drift — different machines, multiple WSL variants, forgotten installs — and make the case for a Codespaces-first workflow backed by a declarative dev container.&lt;/p&gt;
&lt;h2 id="the-problem-environment-drift"&gt;The Problem: Environment Drift&lt;/h2&gt;
&lt;p&gt;After several sessions where progress stalled because neither host could reproduce their earlier setup, the team decides to invest time in a reproducible development environment. Chris has also recently migrated the project&amp;rsquo;s Azure resources to a new tenant, which becomes an unexpected validation of the earlier OpenID Connect and GitHub Actions work: apart from updating a single OIDC connection, the entire deployment pipeline continued working across a new subscription and tenant.&lt;/p&gt;</description></item><item><title>From 'It works on my machine' to 'It was written by a machine' - GitHub Codespaces &amp; Copilot</title><link>https://chrisreddington.com/talk/halfstack-on-thames-dev-experience/</link><pubDate>Fri, 23 Sep 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/talk/halfstack-on-thames-dev-experience/</guid><description/></item><item><title>Tools of a Software Architecture for Everyone!</title><link>https://chrisreddington.com/video/tools-of-a-software-architecture-for-everyone/</link><pubDate>Thu, 08 Sep 2022 19:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/tools-of-a-software-architecture-for-everyone/</guid><description>&lt;p&gt;Software 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 with a background in e-commerce and high-traffic systems, who walks through the practical toolbox he has assembled over years in the role.&lt;/p&gt;
&lt;p&gt;John begins by clarifying what a software architect actually does — it is less a progression from senior developer and more a shift to a different type of work: setting guard rails across teams, evaluating third-party options, providing cross-team context, and taking a longer-term, more holistic view of technical direction.&lt;/p&gt;</description></item><item><title>ToolUp Days #11</title><link>https://chrisreddington.com/video/toolup-days-11/</link><pubDate>Tue, 23 Aug 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/toolup-days-11/</guid><description>&lt;p&gt;This episode marks the official rebrand from &lt;strong&gt;ToolUp Tuesday&lt;/strong&gt; to &lt;strong&gt;ToolUp Days&lt;/strong&gt; — giving Chris and Matt the scheduling flexibility they need to maintain a consistent cadence. After recapping progress (multiple microservices built, GitHub Actions CI/CD in place, container images published, and Infrastructure as Code deployed), the pair set a concrete goal: reach a point where two players can independently make a decision, a &amp;ldquo;tick&amp;rdquo; happens, and there is a winner and a loser.&lt;/p&gt;</description></item><item><title>Code is Read</title><link>https://chrisreddington.com/video/code-is-read/</link><pubDate>Thu, 11 Aug 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/code-is-read/</guid><description>&lt;p&gt;What separates code that teams maintain with confidence from code that becomes an unmaintainable legacy burden? Chris is joined by Daniel Schreifler — developer, consultant, and author of &lt;em&gt;10 Days to Become a Better Developer&lt;/em&gt; — to explore why readability is the most foundational quality in software.&lt;/p&gt;
&lt;p&gt;The central argument: every act of development ultimately requires &lt;em&gt;changing&lt;/em&gt; code, and you cannot change code you cannot understand. Therefore, the prerequisite for the most common activity in software development is the ability to &lt;em&gt;read&lt;/em&gt; the code — making readability a first-class engineering concern, not an aesthetic preference.&lt;/p&gt;</description></item><item><title>Interfaces in Go</title><link>https://chrisreddington.com/blog/go-interfaces/</link><pubDate>Mon, 16 May 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/go-interfaces/</guid><description>&lt;p&gt;In this post, I&amp;rsquo;ll be talking about how to use interfaces in Go. This is a continuation of my learning using the Go language. I&amp;rsquo;ll use interfaces to create an application that interacts with several types of bank accounts.&lt;/p&gt;
&lt;h2 id="what-is-an-interface"&gt;What is an interface?&lt;/h2&gt;
&lt;p&gt;Let&amp;rsquo;s start with defining the concept of an interface. An interface is a set of methods that a type must implement.&lt;/p&gt;
&lt;p&gt;In essence, this is a contract that a concrete type must implement. This can be useful when you want to loosely couple your software, so that you&amp;rsquo;re not depending on a specific implementation (and can then future-proof yourself).&lt;/p&gt;</description></item><item><title>ToolUp Tuesday - #6</title><link>https://chrisreddington.com/video/toolup-tuesday-6/</link><pubDate>Tue, 03 May 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/toolup-tuesday-6/</guid><description>&lt;p&gt;Chris and Matt bring their game application components together in this ToolUp Tuesday session. They start by reviewing the existing services — the Go-based player decisions API and the .NET world event engine — and identify that the player state service may be redundant now that Dapr handles state management. After clarifying their data model through use case documentation in Markdown, they define the game loop: players enroll, world events fire on a tick schedule, players submit decisions, and the engine reconciles state. The bulk of the session focuses on integrating Dapr&amp;rsquo;s state management API into the .NET player state service, implementing save, get, and delete state operations backed by Azure Table Storage. They also tackle VS Code debugging configuration, setting up launch.json and tasks.json for multi-service debugging with Dapr sidecars. The session ends with inter-service communication via Dapr working, setting up the next episode for cross-service calls between Go and .NET.&lt;/p&gt;</description></item><item><title>Go Pointers - Using the &amp; and * operators</title><link>https://chrisreddington.com/blog/go-pointers/</link><pubDate>Sun, 01 May 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/go-pointers/</guid><description>&lt;p&gt;I&amp;rsquo;ll be transparent. The purpose of this post is to help with my own understanding of the Go &amp;amp; and * operators. It&amp;rsquo;s going to be a very short post, and I&amp;rsquo;m going to try to explain the concepts in a way that I can understand. I&amp;rsquo;ve used these operators in C previously, but whenever I&amp;rsquo;m using them - I always end up having to remember the syntax / which operator is which / what they do. For whatever reason, it doesn&amp;rsquo;t always come intuitively to me.&lt;/p&gt;</description></item><item><title>ToolUp Tuesday - #5</title><link>https://chrisreddington.com/video/toolup-tuesday-5/</link><pubDate>Thu, 21 Apr 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/toolup-tuesday-5/</guid><description>&lt;p&gt;Chris and Matt return for ToolUp Thursday (a scheduling exception) to refactor their Go player decisions API. Having separately studied Golang between sessions, they revisit the codebase with fresh eyes and immediately identify structural improvements — breaking a monolithic single-file approach into proper Go packages with separate folders for controllers, models, and routes. They compare two popular Go HTTP frameworks, Gorilla Mux and Gin, discussing trade-offs between simplicity and feature richness. Matt demonstrates his own Go project using Mux with Azure Container Apps, showcasing Go interfaces, dependency injection patterns, and the tenant service architecture. The conversation covers Go pointers, reference semantics, struct composition, and how Go&amp;rsquo;s implicit interface implementation differs from C# and .NET. They also explore unit testing and mocking challenges in Go, noting the ecosystem differences from .NET&amp;rsquo;s more integrated testing story. The session ends with planning to integrate a file-based data store and start connecting the player decisions API with the world event engine.&lt;/p&gt;</description></item><item><title>ToolUp Tuesday - #4</title><link>https://chrisreddington.com/video/toolup-tuesday-4/</link><pubDate>Tue, 05 Apr 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/toolup-tuesday-4/</guid><description>&lt;p&gt;Chris and Matt take on Go (Golang) for the first time on the ToolUp Tuesday live stream, building a player decisions REST API for their game application. They start with a recap of Go fundamentals — variables, types, structs, and pointers — before diving into HTTP routing with the Gin framework. The pair discuss Go project structure, comparing it to their .NET and C# backgrounds, and explore how Go handles packages, imports, and the module system. They work through setting up controllers, route handlers, and in-memory data structures, frequently mapping Go concepts back to familiar object-oriented patterns. Along the way, they troubleshoot Go environment issues including version upgrades and &lt;code&gt;GOPATH&lt;/code&gt; configuration. The session wraps with a working REST endpoint for player decisions, setting the stage for integrating state stores in future episodes.&lt;/p&gt;</description></item><item><title>ToolUp Tuesday - #3</title><link>https://chrisreddington.com/video/toolup-tuesday-3/</link><pubDate>Tue, 08 Mar 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/toolup-tuesday-3/</guid><description>&lt;p&gt;Chris and Matt tackle the world events engine, opening the project in Visual Studio for its stronger .NET development experience compared to VS Code. They connect the engine to the Player State models using .NET project references — acknowledging it as a pragmatic but temporary shortcut that will need refactoring into proper NuGet packages later.&lt;/p&gt;
&lt;p&gt;The episode dives into game design architecture, conceptualizing the engine as a state machine that loads current world state, applies player inputs and world events, and produces updated state. They design an action points system where players spend points to make decisions each turn, with costs varying by action type. The discussion also covers github.dev for browser-based editing, and they plan to build the player decisions API in Go for the next episode.&lt;/p&gt;</description></item><item><title>Feature Flags - The Art of the IF and Deployment</title><link>https://chrisreddington.com/video/feature-flags-art-of-if-and-deployment/</link><pubDate>Thu, 17 Feb 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/feature-flags-art-of-if-and-deployment/</guid><description>&lt;p&gt;Feature flags (also called feature toggles) are one of the most powerful — and most misunderstood — practices in modern software delivery. This session explores them from first principles through to production implementation.&lt;/p&gt;
&lt;h2 id="what-are-feature-flags"&gt;What are feature flags?&lt;/h2&gt;
&lt;p&gt;A mechanism to decouple &lt;em&gt;deployment&lt;/em&gt; (pushing code to production) from &lt;em&gt;release&lt;/em&gt; (enabling that code for users). Once separated, teams can deploy continuously, roll out incrementally, experiment in production, and roll back instantly — without touching infrastructure.&lt;/p&gt;</description></item><item><title>Using RegEx and VSCode's Find/Replace capability to add captions to markdown images</title><link>https://chrisreddington.com/blog/using-regex-markdown-caption-images/</link><pubDate>Sat, 05 Feb 2022 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/using-regex-markdown-caption-images/</guid><description>&lt;p&gt;If there&amp;rsquo;s an easy way to achieve something, then I&amp;rsquo;m all for it! You may have noticed that I&amp;rsquo;ve been putting a lot of effort into refactoring my site and open sourcing the original Cloud With Chris theme. I&amp;rsquo;ve now released that as the &lt;a href="https://github.com/cloudwithchris/hugo-creator"&gt;Hugo Creator theme&lt;/a&gt; for &lt;a href="https://gohugo.io/"&gt;Hugo&lt;/a&gt;. As part of the refactoring process into a reusable theme, I had to make several breaking changes. This meant that I&amp;rsquo;d need to update the contents of my site. I want to share a quick tip that I discovered to add captions to my images in Markdown.&lt;/p&gt;</description></item><item><title>CGN8 - Cloud Gaming Notes Episode 8 - Azure for Game Developers</title><link>https://chrisreddington.com/video/azure-for-game-developers/</link><pubDate>Wed, 06 Oct 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/azure-for-game-developers/</guid><description>&lt;p&gt;Chris Reddington and LaBrina Loving — Developer Advocate for Gaming at Microsoft — explore what it takes to get started with game development on Azure, regardless of your background. LaBrina brings twenty years of enterprise development experience, making her perspective especially relevant for developers considering a similar path.&lt;/p&gt;
&lt;h2 id="key-topics-covered"&gt;Key Topics Covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;LaBrina&amp;rsquo;s background&lt;/strong&gt;: Two decades in the Microsoft stack — .NET, SharePoint, Dynamics, and Azure since its early days in 2010. Her entry into gaming came through an interest in Unity for mixed reality and VR, before moving into a dedicated game developer advocacy role.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud adoption in game studios&lt;/strong&gt;: Game studios are at a similar inflection point to where enterprise organisations were several years ago — beginning to understand the power of cloud, moving workloads off dedicated servers, and realising the benefits of managed, scalable infrastructure.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enterprise skills transfer directly&lt;/strong&gt;: Software fundamentals — clean architecture, scalable design, testing, and DevOps practices — carry over to game development. There is more in common between the two disciplines than most developers expect.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Key technical differences&lt;/strong&gt;: Latency is paramount. Where enterprise applications rely on TCP connections, game networking commonly uses UDP and socket-based communication for real-time, low-latency responsiveness. Recognising this early avoids painful rewrites.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Getting started with Unity&lt;/strong&gt;: For .NET developers, Unity provides a natural on-ramp to game development, sharing the C# language and familiar tooling.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Accessibility of the cloud for games&lt;/strong&gt;: Azure&amp;rsquo;s managed services remove much of the infrastructure complexity for independent studios and game developers, letting teams focus on gameplay rather than operations.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Tales from the Real World - Architecting the Transformation</title><link>https://chrisreddington.com/video/architecting-the-transformation/</link><pubDate>Fri, 10 Sep 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/architecting-the-transformation/</guid><description>&lt;p&gt;Most organizations undergoing digital transformation are progressing through maturity stages — moving from localized, monolithic setups toward agile, cloud-native, data-driven platforms. But what is the architect&amp;rsquo;s role in guiding that journey, and how do you build a framework that is practical rather than theoretical?&lt;/p&gt;
&lt;p&gt;In this session, Asanka Abesinghe returns to discuss his experience architecting enterprise transformations, covering:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Six design principles&lt;/strong&gt; for digitally-driven organizations: decentralized, lean-agile, open standards, outside-in (customer-centric), cloud-native, and data-driven&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The architecture value stream&lt;/strong&gt; — how business architecture, information architecture, application architecture, and technology architecture each contribute to business outcomes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Maturity models as a GPS&lt;/strong&gt; — assessing where you are, setting a destination, and re-routing when the journey deviates&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The architect as elevator rider&lt;/strong&gt; — connecting the business penthouse with the engineering engine room, requiring both broad strategic thinking and hands-on technical depth&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;BizArch&lt;/strong&gt; — the case for a business architect role that bridges domain knowledge and technical execution, and why handoffs between business analysts and technical architects so often fail&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Asanka also shares references to his open-source maturity model specification (released under Creative Commons) and his &lt;em&gt;Architect to Architect&lt;/em&gt; blog series for those looking to go deeper.&lt;/p&gt;</description></item><item><title>CGN7 - Cloud Gaming Notes Episode 7 - Game Streaming and Cloud-Powered Gaming</title><link>https://chrisreddington.com/video/game-streaming/</link><pubDate>Wed, 01 Sep 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/game-streaming/</guid><description>&lt;p&gt;Chris Reddington and Lee Williams discuss game streaming — not live-streaming gameplay to an audience, but the technology that streams a game &lt;em&gt;to&lt;/em&gt; your device from cloud-hosted infrastructure. This episode of Cloud Gaming Notes explores why cloud makes this possible and what it means for both players and game creators.&lt;/p&gt;
&lt;h2 id="key-topics-covered"&gt;Key Topics Covered&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;What game streaming actually is&lt;/strong&gt;: The game runs on remote cloud infrastructure; only the video stream is sent to your device, with your inputs sent back in real time. Low latency is critical to a playable experience.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Why cloud enables this&lt;/strong&gt;: Economies of scale mean providers can amortise the cost of high-end GPU infrastructure across thousands of players, offering access via a subscription rather than requiring expensive local hardware.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Consumer behaviour shift&lt;/strong&gt;: Just as audiences moved from DVD libraries to Netflix and Spotify, gamers are increasingly comfortable with subscription-based access to game catalogues — Xbox Game Pass and Google Stadia as leading examples.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multi-device freedom&lt;/strong&gt;: Players can switch between PC, phone, tablet, and TV without hardware lock-in — the game experience follows the user, not the device.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Games as living services&lt;/strong&gt;: For game creators, streaming shifts the model from a one-time retail release to a continuously updated, platform-style service with DLC, in-game economies, and ongoing subscriptions (Minecraft and GTA Online as prime examples).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Development economics&lt;/strong&gt;: Building for a streaming platform reduces per-platform porting costs and enables constant iteration, removing the need for major new release cycles to reach players on different devices.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Getting into DevRel</title><link>https://chrisreddington.com/video/tales-from-real-world-get-into-devrel/</link><pubDate>Fri, 27 Aug 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/tales-from-real-world-get-into-devrel/</guid><description>&lt;p&gt;What is Developer Relations (DevRel), and how do you build a career in it? Chris is joined by Martin Woodward — Director of Developer Relations at GitHub, and the person who brought Git into Microsoft — who shares his journey from developer at banks and insurance firms, through building and selling an open source project to Microsoft, to leading developer community work at scale.&lt;/p&gt;
&lt;p&gt;Topics covered include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The open source contribution funnel&lt;/strong&gt; — from passive consumer to active contributor to project co-maintainer, and how to optimise each stage&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Community leadership vs DevRel&lt;/strong&gt; — the difference between volunteering for community and being paid to do it as your job&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Giving vs taking&lt;/strong&gt; — why it is okay to contribute to open source for selfish reasons, and when it is right to walk away to avoid burnout&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub Actions as a community case study&lt;/strong&gt; — how a simple, composable automation concept grew to over 9,000 marketplace actions and outpaced older CI/CD ecosystems&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Building a DevRel profile&lt;/strong&gt; — content creation, presenting at meetups and conferences, podcasting, and streaming as ways to practise and demonstrate skills&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Handling feedback and trolls&lt;/strong&gt; — assuming best intent, recognising deliberate emotional DDoS tactics, and the accountability that comes with a large community&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Positioning yourself for rare DevRel roles&lt;/strong&gt; — building your network, specialising in a domain, and creating a body of work before the opportunity arises&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Lessons Learned from Cultivating Open Source Projects and Communities</title><link>https://chrisreddington.com/video/lessons-learned-cultivating-open-source/</link><pubDate>Fri, 23 Jul 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/lessons-learned-cultivating-open-source/</guid><description>&lt;p&gt;Open source projects and communities are the backbone of modern software development, yet the human side of building and sustaining them is rarely discussed as openly as the technology itself. In this episode, Chris is joined by JJ Asghar, Developer Advocate at IBM (yes, his email really is &lt;a href="mailto:awesome@ibm.com"&gt;awesome@ibm.com&lt;/a&gt;), who shares hard-won lessons from over a decade cultivating open source projects and communities.&lt;/p&gt;
&lt;p&gt;JJ’s journey began tending the FAQ for CRUX, a stripped-down BSD-style Linux distribution, before moving on to the OpenStack-Chef project — building clouds at scale — and later contributing to and leading efforts in the Kubernetes, Tekton, and Istio ecosystems, with a current focus on OpenShift.&lt;/p&gt;</description></item><item><title>IoT Simulation, Azure IoT and real world learnings</title><link>https://chrisreddington.com/video/iot-simulation-azure-iot-and-real-world-learnings/</link><pubDate>Fri, 16 Jul 2021 15:30:00 +0000</pubDate><guid>https://chrisreddington.com/video/iot-simulation-azure-iot-and-real-world-learnings/</guid><description>&lt;p&gt;The Internet of Things (IoT) has evolved from a collection of smart gadgets into a powerful ecosystem where physical devices connect to cloud services to deliver real business value. In this episode, Peter Gallagher — Microsoft Azure MVP, Pluralsight Author, and organiser of multiple .NET and IoT meetup groups — shares his experience building and learning in the IoT space.&lt;/p&gt;
&lt;p&gt;Key topics covered include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Azure IoT Hub and Azure IoT Edge&lt;/strong&gt; — connecting, managing, and processing data from devices at the edge and in the cloud&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Digital Twins&lt;/strong&gt; — representing real-world assets as cloud-based models to enable monitoring, simulation, and analytics&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;IoT simulators&lt;/strong&gt; — practical tools for prototyping without physical hardware, with analogies to flight simulators and Formula One telemetry&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Raspberry Pi and maker culture&lt;/strong&gt; — getting hands-on with IoT devices as a gateway into the broader ecosystem&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Community and content creation&lt;/strong&gt; — Peter&amp;rsquo;s journey from lone .NET developer to meetup organiser, Pluralsight author, and co-host of the &lt;em&gt;IoT Live&lt;/em&gt; Twitch show&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Peter also highlights the breadth of languages IoT development touches — from C# and .NET to Node.js, VB, and Assembler — reinforcing that IoT is a diverse and ever-evolving space. Whether you are a seasoned cloud architect or a curious maker with a Raspberry Pi, this episode delivers practical guidance and genuine enthusiasm for what is possible when smart devices meet cloud power.&lt;/p&gt;</description></item><item><title>Why a Diverse Team is Crucial to Startup Success</title><link>https://chrisreddington.com/video/diverse-team-crucial-to-startup-success/</link><pubDate>Tue, 06 Jul 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/diverse-team-crucial-to-startup-success/</guid><description>&lt;p&gt;Diverse teams are not just a social imperative — they are a competitive advantage. In this episode, Melissa Jerkoys, co-founder of &lt;em&gt;Diversify Thinking&lt;/em&gt; and a 25-year veteran of the technology industry, joins Chris Reddington to explore why diversity is critical to startup and enterprise success.&lt;/p&gt;
&lt;p&gt;The conversation covers multiple dimensions of diversity:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Demographic diversity&lt;/strong&gt; — age, race, sex, and ethnicity, and how these shape team dynamics and customer empathy&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Personality diversity&lt;/strong&gt; — introvert versus extrovert, differing thinking styles, and how varied perspectives drive better decisions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Functional diversity&lt;/strong&gt; — engineering, design, copywriting, and other skill sets that together form a complete team&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Melissa shares her personal journey as a woman in technology who has consistently been the only woman in the room, the communities she built to support others in the same position, and the realisation that safe spaces alone do not solve the underlying problem. That insight led her and her co-founder to establish &lt;em&gt;Diversify Thinking&lt;/em&gt; — a grassroots effort to raise the level of action to meet the level of conversation.&lt;/p&gt;</description></item><item><title>40 - Failed lawyer stumbles into tech - Agile from the trenches</title><link>https://chrisreddington.com/video/agile-from-the-trenches/</link><pubDate>Fri, 25 Jun 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/agile-from-the-trenches/</guid><description>&lt;p&gt;Chris is joined by long-time friend Erin Davies — an Agile Coach who accidentally stumbled into tech after applying for what she thought was a buying and merchandising role at John Lewis. In this candid, wide-ranging conversation they cover:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Erin&amp;rsquo;s unconventional journey&lt;/strong&gt; — from studying law and sociology at Warwick, to a student union sabbatical role, to landing an IT grad scheme at John Lewis without realising it was IT&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agile in the real world&lt;/strong&gt; — what Agile coaching actually looks like on the ground, the gap between theory and practice, and why the people side of Agile is often harder than the process&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Women in tech&lt;/strong&gt; — honest anecdotes about being talked over at conferences, having a housemate insist she didn&amp;rsquo;t work in IT, and the subtle ways assumptions still shape experiences in the industry&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Imposter syndrome&lt;/strong&gt; — and how non-traditional backgrounds can become a genuine advantage&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Content creation &amp;amp; podcasting&lt;/strong&gt; — why Chris encourages everyone to just start, the lessons learned from 15+ months of Cloud With Chris, and Erin&amp;rsquo;s plans for her own podcast&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;An episode that&amp;rsquo;s as entertaining as it is insightful — grab a drink and enjoy.&lt;/p&gt;</description></item><item><title>39 - A discussion with John Lunn</title><link>https://chrisreddington.com/video/discussion-with-john-lunn/</link><pubDate>Fri, 18 Jun 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/discussion-with-john-lunn/</guid><description>&lt;p&gt;Chris sits down with John Lunn (aka jonnychipz) — technical architect at BT Enterprise, co-organiser of the Welsh Azure User Group, and creator of johnnychips.com. John shares his journey from M365 and unified comms into Azure cloud architecture, what sparked his commitment to the #100DaysOfCloud challenge, and his practical advice on navigating certifications, managing the overwhelming breadth of the cloud ecosystem, and why getting involved in the community is one of the fastest ways to grow. Whether you&amp;rsquo;re just starting out with Azure or thinking about launching a blog or YouTube channel, there&amp;rsquo;s plenty to take away here.&lt;/p&gt;</description></item><item><title>37 - Your Career and Your Mental Health</title><link>https://chrisreddington.com/video/your-career-and-your-mental-health/</link><pubDate>Fri, 04 Jun 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/your-career-and-your-mental-health/</guid><description>&lt;p&gt;Mental health and career development are more closely intertwined than people often appreciate. In this episode, Chris is joined by Glenn Small (Analytics Manager at AWS and long-time colleague from Microsoft) for an open and honest conversation about the pressures that working life places on mental wellbeing.&lt;/p&gt;
&lt;p&gt;Both Chris and Glenn share personal stories. Glenn describes how unchecked work stress early in his career spiralled into severe anxiety, paranoia, and ultimately a breakdown — and how reaching out for support from trusted people and professional help was the turning point that allowed him to recover and build lasting resilience. Chris reflects on his own experiences, including a particularly difficult period during the COVID-19 pandemic lockdowns when social isolation compounded the everyday pressures of a demanding role.&lt;/p&gt;</description></item><item><title>A livestream on Mental Health - Mental Health Awareness Week</title><link>https://chrisreddington.com/video/a-livestream-on-mental-health/</link><pubDate>Thu, 13 May 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/a-livestream-on-mental-health/</guid><description>&lt;p&gt;Mental health affects us all, yet stigma and misunderstanding remain barriers to open conversation. In this candid livestream recorded during Mental Health Awareness Week, Chris Reddington is joined by Andrew Nathan (Microsoft FastTrack for Azure) and Will Owen (formerly Microsoft, now Maersk) to share their personal mental health journeys.&lt;/p&gt;
&lt;p&gt;Topics discussed in this stream include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Personal experiences with depression, anxiety, and burnout in demanding tech roles&lt;/li&gt;
&lt;li&gt;The impact of COVID-19 isolation on mental wellbeing and personal identity&lt;/li&gt;
&lt;li&gt;Cognitive Behavioural Therapy (CBT) and medication as paths to recovery&lt;/li&gt;
&lt;li&gt;The pressure of relocating internationally and proving your value at work&lt;/li&gt;
&lt;li&gt;How overloading on work as a coping mechanism can become its own trap&lt;/li&gt;
&lt;li&gt;Why removing the stigma around mental health still matters in the tech community&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;None of the participants are healthcare professionals. This is a peer-to-peer conversation intended to normalise mental health discussions in tech. If you are struggling, please reach out to a qualified professional.&lt;/p&gt;</description></item><item><title>35 - A discussion on Azure Spring Cloud</title><link>https://chrisreddington.com/video/azure-spring-cloud/</link><pubDate>Fri, 23 Apr 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/azure-spring-cloud/</guid><description>&lt;p&gt;Spring, Spring Boot, and Azure Spring Cloud demystified. Chris is joined by Gitte Vermeiren (Microsoft FastTrack Engineer) to explore the Java microservices landscape on Azure. They cover:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Spring vs Spring Boot&lt;/strong&gt; — how Spring Boot is to Java what ASP.NET scaffolding is to .NET, and how &lt;code&gt;start.spring.io&lt;/code&gt; gets you up and running instantly&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Spring Cloud&lt;/strong&gt; — adding microservice concerns like service discovery, circuit breakers, and routing on top of Spring&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Azure Spring Cloud&lt;/strong&gt; — the fully managed platform that lets you run Spring Cloud applications without provisioning or managing the underlying infrastructure&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Comparing your options&lt;/strong&gt; — when to choose Azure Spring Cloud vs. Azure App Service vs. AKS, and understanding the trade-offs around simplicity, control, and learning curve&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Real customer reactions&lt;/strong&gt; — why Java developers with existing Spring workloads often describe Azure Spring Cloud as a game-changer&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Whether you&amp;rsquo;re coming from the Java world or just exploring Azure&amp;rsquo;s app hosting options, this episode offers a clear and approachable introduction.&lt;/p&gt;</description></item><item><title>Windows Terminal - What is it, and how can it make you productive with Azure?</title><link>https://chrisreddington.com/blog/windows-terminal-productive-azure/</link><pubDate>Thu, 08 Apr 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/blog/windows-terminal-productive-azure/</guid><description>&lt;p&gt;For some time now, I&amp;rsquo;ve been using Windows Terminal as my local terminal for interacting with my command-line tools for quite some time now. Whenever I&amp;rsquo;m demonstrating Kubernetes concepts or working with the Azure CLI, I&amp;rsquo;ll likely have had the Windows Terminal open at some point. I always get questioned about which terminal that is, and how people can get access to it. I recently put together a &lt;a href="https://chrisreddington.com/episode/cloud-drops-windows-terminal-productive-azure"&gt;Cloud Drop on How Windows Terminal can make YOU productive with Azure&lt;/a&gt;, so I figured it&amp;rsquo;s time to also write up a blog post on the same! Whether you&amp;rsquo;re a Developer, DevOps Engineer, Infrastructure Operations or Data Scientist, you&amp;rsquo;ve probably had to interact with a command-line terminal / shell at some point, so I hope this will be useful for you!&lt;/p&gt;</description></item><item><title>Cloud Drops - Using Microsoft Learn to get started with Azure</title><link>https://chrisreddington.com/video/cloud-drops-microsoft-learn-azure/</link><pubDate>Mon, 05 Apr 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/cloud-drops-microsoft-learn-azure/</guid><description>&lt;p&gt;Microsoft Learn at docs.microsoft.com is a free, gamified education hub covering Azure, GitHub, Microsoft 365, Dynamics 365, and more. Modules and learning paths award XP that accumulates across levels, letting you track progress toward specific roles and certifications. The platform also surfaces official certification exam pages alongside their mapped learning paths, and offers a renewal-assessment path so recertification no longer requires retaking the full exam. LearnTV rounds out the experience with a schedule-driven video broadcast channel for learners who prefer watching over reading.&lt;/p&gt;</description></item><item><title>Cloud Drops - How Windows Terminal can make YOU productive with Azure</title><link>https://chrisreddington.com/video/cloud-drops-windows-terminal-productive-azure/</link><pubDate>Sat, 03 Apr 2021 00:01:00 +0000</pubDate><guid>https://chrisreddington.com/video/cloud-drops-windows-terminal-productive-azure/</guid><description>&lt;p&gt;Windows Terminal is available in the Microsoft Store as both a stable release and a preview channel, and also via &lt;code&gt;winget&lt;/code&gt;. It unifies all your command-line environments — WSL Ubuntu, PowerShell Core, Windows PowerShell, and Windows Command Prompt — into a single tabbed window. The Azure Cloud Shell profile type uses device code authentication to spin up a managed Azure container with tools like kubectl, Terraform, and the Azure CLI pre-installed, plus a mounted Azure Storage file share to persist your files across sessions.&lt;/p&gt;</description></item><item><title>Cloud Drops - Git 101 - Why use Git, and how to get started</title><link>https://chrisreddington.com/video/cloud-drops-git-101/</link><pubDate>Tue, 30 Mar 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/cloud-drops-git-101/</guid><description>&lt;p&gt;Git is a distributed version control system — unlike centralised tools, every developer clones the full repository and history to their own machine, enabling productive offline work and independent branching without locking files.&lt;/p&gt;
&lt;p&gt;The core workflow starts with &lt;code&gt;git init&lt;/code&gt; to create a new repository in any folder, then &lt;code&gt;git add&lt;/code&gt; to stage changes and &lt;code&gt;git commit -m &amp;quot;message&amp;quot;&lt;/code&gt; to record them. &lt;code&gt;git status&lt;/code&gt; shows which files are staged, modified, or untracked, while &lt;code&gt;git log&lt;/code&gt; displays the full commit history. Once you create a remote repository on GitHub (or Azure DevOps, GitLab, Bitbucket), &lt;code&gt;git remote add origin &amp;lt;url&amp;gt;&lt;/code&gt; links it to your local repo, and &lt;code&gt;git push&lt;/code&gt; sends your commits up. Use &lt;code&gt;git pull&lt;/code&gt; to receive changes others have pushed, or &lt;code&gt;git clone &amp;lt;url&amp;gt;&lt;/code&gt; to bring down an entirely new repository. VS Code&amp;rsquo;s built-in Source Control panel provides a visual interface for all these operations, and the Git Credential Manager handles credential storage for private repositories across platforms.&lt;/p&gt;</description></item><item><title>Cloud Drops - How does Git work behind the scenes?</title><link>https://chrisreddington.com/video/cloud-drops-git-behind-scenes/</link><pubDate>Wed, 24 Mar 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/cloud-drops-git-behind-scenes/</guid><description>&lt;p&gt;After &lt;code&gt;git init&lt;/code&gt;, Git creates a &lt;code&gt;.git&lt;/code&gt; folder containing HEAD, config, description, and sub-directories including &lt;code&gt;branches&lt;/code&gt;, &lt;code&gt;objects&lt;/code&gt;, and &lt;code&gt;refs&lt;/code&gt;. The HEAD file holds a symbolic ref pointing to the current branch — for example &lt;code&gt;ref: refs/heads/master&lt;/code&gt; — and that ref only materialises as a file under &lt;code&gt;.git/refs/heads/&lt;/code&gt; after the first commit is made. Objects (commits, trees, blobs) are stored compressed in two-character subdirectories under &lt;code&gt;.git/objects/&lt;/code&gt; matching the first two hex characters of their SHA-1 hash. Use &lt;code&gt;git cat-file -p &amp;lt;hash&amp;gt;&lt;/code&gt; to inspect any object: a commit points to a tree, a tree lists blobs and sub-trees, and a blob holds the raw file content. Git deduplicates unchanged files across commits by reusing the same blob hash, saving space. After adding a GitHub remote and pushing, a new &lt;code&gt;refs/remotes/origin/main&lt;/code&gt; file appears, confirming that local and remote tip hashes match.&lt;/p&gt;</description></item><item><title>Cloud Drops - Introducing and Setting up Git LFS (Large File Storage)</title><link>https://chrisreddington.com/video/cloud-drops-git-lfs/</link><pubDate>Tue, 23 Mar 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/cloud-drops-git-lfs/</guid><description>&lt;p&gt;Storing large binary files directly in Git forces every developer to download the full history of those files on every clone — a growing pain as the number of assets increases. Git LFS solves this by replacing tracked files with small pointer files containing a version, an ID, and a size, while the actual content lives on the remote LFS server. Run &lt;code&gt;git lfs install&lt;/code&gt; once per machine, then &lt;code&gt;git lfs track &amp;quot;*.mp3&amp;quot;&lt;/code&gt; per repository to create a &lt;code&gt;.gitattributes&lt;/code&gt; entry. All subsequent &lt;code&gt;git add&lt;/code&gt;, &lt;code&gt;git commit&lt;/code&gt;, and &lt;code&gt;git push&lt;/code&gt; operations work exactly as normal; LFS handles the upload transparently. When cloning, pass &lt;code&gt;--config lfs.fetchExclude=&amp;quot;*.mp3&amp;quot;&lt;/code&gt; to skip downloading the large files and receive only the lightweight pointers instead.&lt;/p&gt;</description></item><item><title>Cloud Drops - Installing, Upgrading and Auto-Upgrading the Azure CLI</title><link>https://chrisreddington.com/video/cloud-drops-azure-cli/</link><pubDate>Wed, 10 Mar 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/cloud-drops-azure-cli/</guid><description>&lt;p&gt;The Azure CLI runs on Windows, macOS, Linux, Docker containers, and Azure Cloud Shell, giving you a consistent scripting interface across every environment. After installing, run &lt;code&gt;az login&lt;/code&gt; to authenticate via browser, then &lt;code&gt;az account set --subscription&lt;/code&gt; to pin your default subscription. Use &lt;code&gt;az group list&lt;/code&gt; to verify resource-group access. From version 2.11 onwards, &lt;code&gt;az upgrade&lt;/code&gt; handles in-place updates, and &lt;code&gt;az config set auto-upgrade.enable=yes&lt;/code&gt; configures automatic silent upgrades so your CLI stays current without manual intervention.&lt;/p&gt;</description></item><item><title>25 - A conversation on Mental Health</title><link>https://chrisreddington.com/video/a-conversation-on-mental-health/</link><pubDate>Tue, 09 Feb 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/a-conversation-on-mental-health/</guid><description>&lt;p&gt;Mental health is a topic that carries real stigma, yet touches almost everyone at some point. In this episode, Chris Reddington sits down with Andrew Nathan — a former Australian Special Forces soldier — for an honest, unscripted conversation about their personal mental health journeys.&lt;/p&gt;
&lt;p&gt;Andrew shares the impact of losing multiple friends to suicide, the devastating diagnosis at 35 that shattered his identity as an athlete and soldier, and how he found the courage to speak publicly about his experiences. Chris reflects on the challenges of living alone during the UK&amp;rsquo;s COVID-19 lockdown, the toll of isolation, and the months he stepped back from recording to focus on his own wellbeing.&lt;/p&gt;</description></item><item><title>V002 - Weekly Technology Vlog #2 (Show Updates, Azure Updates, CloudFamily.info)</title><link>https://chrisreddington.com/video/weekly-vlog-002/</link><pubDate>Mon, 11 Jan 2021 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/weekly-vlog-002/</guid><description>&lt;p&gt;This episode focuses on getting Cloud with Chris organised for 2021. Chris released a video exploring GitHub Codespaces and its potential as a cloud-hosted development environment, alongside a blog post on his journey contributing to open source Hugo themes. He previews an upcoming gaming and technology series, shares his Sessionize profile for receiving talk submissions, and notes that a regular content cadence is taking shape — vlogs on Mondays, blogs on Wednesdays, and technical videos on Fridays.&lt;/p&gt;</description></item><item><title>GitHub Codespaces, Visual Studio Code and Remote Containers</title><link>https://chrisreddington.com/video/github-codespaces-and-vscode-remote-containers/</link><pubDate>Fri, 08 Jan 2021 15:30:00 +0000</pubDate><guid>https://chrisreddington.com/video/github-codespaces-and-vscode-remote-containers/</guid><description>&lt;p&gt;Setting up a development environment—installing the right SDK versions, extensions, and tools—wastes hours and creates &amp;lsquo;works on my machine&amp;rsquo; problems. VS Code Remote Containers and GitHub Codespaces solve this with containerised, reproducible dev environments.&lt;/p&gt;
&lt;h2 id="what-youll-learn"&gt;What You&amp;rsquo;ll Learn&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;How the &lt;strong&gt;VS Code Remote Containers extension&lt;/strong&gt; connects your local editor to a Docker container running a full development environment&lt;/li&gt;
&lt;li&gt;The role of &lt;strong&gt;&lt;code&gt;devcontainer.json&lt;/code&gt;&lt;/strong&gt; as a manifest defining your development container&amp;rsquo;s configuration, extensions, and port forwarding&lt;/li&gt;
&lt;li&gt;How to bootstrap a .NET Core dev container using the &lt;strong&gt;microsoft/vscode-dev-containers&lt;/strong&gt; repository samples&lt;/li&gt;
&lt;li&gt;The difference between Remote Containers (local Docker) and &lt;strong&gt;GitHub Codespaces&lt;/strong&gt; (cloud-hosted containers accessible from a browser)&lt;/li&gt;
&lt;li&gt;Using the &lt;strong&gt;GitHub Codespaces VS Code extension&lt;/strong&gt; to connect your local IDE to a cloud-hosted Codespace&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;dotfiles convention&lt;/strong&gt;: GitHub Codespaces automatically applies your &lt;code&gt;~username/dotfiles&lt;/code&gt; repository to personalise every Codespace with your aliases, shell configuration, and shortcuts&lt;/li&gt;
&lt;li&gt;Live demo: editing, previewing, and committing changes to cloudwithchris.com (Hugo static site) entirely within a GitHub Codespace&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="developer-experience-impact"&gt;Developer Experience Impact&lt;/h2&gt;
&lt;p&gt;GitHub Codespaces eliminates onboarding friction—any developer with browser access can contribute to a project within minutes, with a pre-configured environment including the correct language runtime, VS Code extensions, and tooling. No local setup required.&lt;/p&gt;</description></item><item><title>GitHub Actions and Azure - Source Controlling our Code using Git</title><link>https://chrisreddington.com/video/github-actions-git/</link><pubDate>Sun, 29 Nov 2020 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/github-actions-git/</guid><description>&lt;p&gt;Before writing a single GitHub Actions workflow, you need a version-controlled project on GitHub. This episode scaffolds a .NET MVC web application with &lt;code&gt;dotnet new mvc&lt;/code&gt; inside a WSL Ubuntu environment, then uses VS Code&amp;rsquo;s Source Control panel to stage the generated files, write an initial commit, and push to a freshly created public GitHub repository — equivalent to running &lt;code&gt;git remote add origin&lt;/code&gt;, &lt;code&gt;git branch -M main&lt;/code&gt;, and &lt;code&gt;git push -u origin main&lt;/code&gt; from the command line.&lt;/p&gt;</description></item><item><title>4 - Hackathons</title><link>https://chrisreddington.com/video/hackathons/</link><pubDate>Sun, 12 Apr 2020 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/hackathons/</guid><description>&lt;p&gt;Hackathons are a powerful accelerator for learning, innovation, and community building — but what does it actually take to participate in, organize, or mentor at one? In this episode, Chris is joined by Maria Vrabie, an experienced hackathon participant, organizer, and mentor with a background at Microsoft.&lt;/p&gt;
&lt;p&gt;They explore the full spectrum of hackathon formats — from university weekend events and charity hack days to corporate open hacks run with enterprise customers. Maria shares candid stories from both sides of the organizer table, including the chaos of catering for hundreds of tired developers on a Sunday morning!&lt;/p&gt;</description></item><item><title>3 - DevOps in a Cloud World</title><link>https://chrisreddington.com/video/devops-in-cloud/</link><pubDate>Sun, 29 Mar 2020 00:00:00 +0000</pubDate><guid>https://chrisreddington.com/video/devops-in-cloud/</guid><description>&lt;p&gt;In this first-guest episode of Cloud with Chris, Abel Wang — Principal Developer Advocate and DevOps Lead at Microsoft — joins Chris Reddington for a wide-ranging conversation on what DevOps really means and how to put it into practice in a cloud-first world.&lt;/p&gt;
&lt;p&gt;Key topics covered in this episode:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Defining DevOps&lt;/strong&gt; — Microsoft&amp;rsquo;s framing of DevOps as the union of people, process, and products focused on continuously delivering &lt;em&gt;value&lt;/em&gt; to end users, not just shipping features&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Telemetry and data-driven decisions&lt;/strong&gt; — how telemetry revealed that only one-third of features built at Microsoft actually delivered the value users wanted (one-third were neutral and one-third were actively unwanted), and how measuring actual usage changed the team&amp;rsquo;s development approach&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Feature flags&lt;/strong&gt; — separating deployment from release, enabling safe experimentation with subsets of users, supporting rapid rollback, and keeping flag debt under control&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Database DevOps&lt;/strong&gt; — storing database schemas in source control, automating schema migrations, and breaking the traditional DBA bottleneck to support high-frequency deployments&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Site Reliability Engineering (SRE)&lt;/strong&gt; — embedding on-call responsibility directly in cross-functional product teams, using live-site incidents as the fastest way to ramp up new engineers&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shifting left&lt;/strong&gt; — moving quality, security, and reliability considerations earlier in the delivery pipeline to reduce the cost of fixing defects in production&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you are earlier in your DevOps journey or looking to level up specific practices like CI/CD pipelines, feature flags, or database automation, this episode is packed with practical insights drawn from real experience inside Microsoft engineering teams.&lt;/p&gt;</description></item></channel></rss>