<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>m7y.me - Software Engineering, Platform Engineering &amp; Leadership</title>
    <link>https://m7y.me/</link>
    <description>Recent content on m7y.me - Software Engineering, Platform Engineering &amp; Leadership</description>
    <generator>Hugo</generator>
    <language>en-au</language>
    <copyright>Privacy | © 2026 m7y.me |</copyright>
    <lastBuildDate>Sat, 11 Apr 2026 00:00:00 +1000</lastBuildDate>
    <atom:link href="https://m7y.me/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Stop Claude Code&#39;s /chrome from opening the wrong browser</title>
      <link>https://m7y.me/post/2026-04-11-claude-code-chrome-picking-wrong-browser/</link>
      <pubDate>Sat, 11 Apr 2026 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2026-04-11-claude-code-chrome-picking-wrong-browser/</guid>
      <description>Claude Code&amp;rsquo;s /chrome keeps opening Brave even though Edge is your default, Edge is running, and the extension is only installed in Edge. Turns out there&amp;rsquo;s a hard-coded browser priority list in the binary that ranks Brave above Edge - and no config override exists. Here&amp;rsquo;s the fix that actually works.</description>
    </item>
    <item>
      <title>Getting Started with Azure Event Grid Simulator</title>
      <link>https://m7y.me/post/2026-04-04-getting-started-with-azure-event-grid-simulator/</link>
      <pubDate>Sat, 04 Apr 2026 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2026-04-04-getting-started-with-azure-event-grid-simulator/</guid>
      <description>A walkthrough of AzureEventGridSimulator - install it, configure topics and subscribers, publish events to a locally running Azure Function, and explore filtering, retry, dead-lettering, and the built-in dashboard. No Azure subscription required.</description>
    </item>
    <item>
      <title>Azure Log Retention Gotchas</title>
      <link>https://m7y.me/post/2026-04-01-azure-log-storage-annoyances/</link>
      <pubDate>Wed, 01 Apr 2026 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2026-04-01-azure-log-storage-annoyances/</guid>
      <description>Compliance says keep your logs for six years. Azure says sure, just navigate this maze of export limitations, append blob quirks, and lifecycle management gaps. Here&amp;rsquo;s what you&amp;rsquo;ll actually run into.</description>
    </item>
    <item>
      <title>Privacy</title>
      <link>https://m7y.me/privacy/</link>
      <pubDate>Sun, 29 Mar 2026 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/privacy/</guid>
      <description>Privacy policy</description>
    </item>
    <item>
      <title>The Chainsaw and the Axe</title>
      <link>https://m7y.me/post/2026-03-27-the-chainsaw-and-the-axe/</link>
      <pubDate>Fri, 27 Mar 2026 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2026-03-27-the-chainsaw-and-the-axe/</guid>
      <description>Most development teams right now have two types of developer: the ones polishing the axe and the ones ripping through forests with a chainsaw. The person paying for the tree to come down doesn&amp;rsquo;t care which tool you use.</description>
    </item>
    <item>
      <title>Part III: SQL Server Integration Testing with Testcontainers</title>
      <link>https://m7y.me/post/2026-01-07-sql-server-integration-testing-with-testcontainers/</link>
      <pubDate>Wed, 07 Jan 2026 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2026-01-07-sql-server-integration-testing-with-testcontainers/</guid>
      <description>Take your containerised SQL Server setup to the next level by using Testcontainers for .NET to write robust integration tests. Spin up real SQL Server instances on-demand, run your tests, and tear them down automatically.</description>
    </item>
    <item>
      <title>Architecture Decision Records That People Actually Write and Read</title>
      <link>https://m7y.me/post/2025-12-23-architecture-decision-records/</link>
      <pubDate>Tue, 23 Dec 2025 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2025-12-23-architecture-decision-records/</guid>
      <description>Most teams either skip documenting architecture decisions entirely or create heavyweight documents everyone ignores. ADRs fix this - but only when they&amp;rsquo;re lightweight enough to write during the decision, structured enough to answer &amp;lsquo;why did we do that?&amp;rsquo; six months later, and stored where people actually look. Here&amp;rsquo;s a practical approach with a template that sticks.</description>
    </item>
    <item>
      <title>Software Development: Engineering or Science?</title>
      <link>https://m7y.me/post/2025-01-28-software-engineering/</link>
      <pubDate>Tue, 28 Jan 2025 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2025-01-28-software-engineering/</guid>
      <description>A look at why software development isn&amp;rsquo;t engineering - it&amp;rsquo;s a scientific journey through complexity. Explore how the Cynefin framework exposes why Agile thrives where Waterfall fails, why requirements shift like ecosystems, and why adaptability beats rigid blueprints. Learn why software isn&amp;rsquo;t built - it&amp;rsquo;s discovered.</description>
    </item>
    <item>
      <title>Allen Holub @ YOW! Brisbane 2024</title>
      <link>https://m7y.me/post/2025-01-23-yow-brisbane/</link>
      <pubDate>Thu, 23 Jan 2025 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2025-01-23-yow-brisbane/</guid>
      <description>A brief summary of Allen Holub&amp;rsquo;s &amp;ldquo;Getting Buy-In: Overcoming Larman&amp;rsquo;s Law&amp;rdquo; at the YOW! Brisbane conference December 2024.</description>
    </item>
    <item>
      <title>Deploying AnythingLLM as an Azure Container Instance</title>
      <link>https://m7y.me/post/2024-10-02-azure-container-instance-anythingllm/</link>
      <pubDate>Wed, 02 Oct 2024 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2024-10-02-azure-container-instance-anythingllm/</guid>
      <description>Some notes on deploying AnythingLLM in an Azure Container Instance using Bicep, ensuring persistent storage. AnythingLLM allows you to use multiple LLMs, using your existing API keys, with one UI.</description>
    </item>
    <item>
      <title>Enabling HTTPS on Azure Container Instances with Caddy</title>
      <link>https://m7y.me/post/2024-09-23-azure-container-instance-https/</link>
      <pubDate>Mon, 23 Sep 2024 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2024-09-23-azure-container-instance-https/</guid>
      <description>Learn how to deploy an Azure Container Instance (ACI) container group with HTTPS enabled using Caddy. This guide walks through deploying a Hello World app and securing it with SSL using a Bicep template.</description>
    </item>
    <item>
      <title>Azure Backup Services: A Helpful Analogy</title>
      <link>https://m7y.me/post/2024-09-16-azure-backup-services-analogy/</link>
      <pubDate>Mon, 16 Sep 2024 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2024-09-16-azure-backup-services-analogy/</guid>
      <description>This article uses the analogy of a professional photographer&amp;rsquo;s studio to explain Azure&amp;rsquo;s various backup and recovery services, including Azure Backup, MARS Agent, MABS, DPM, and Azure Site Recovery. It highlights the key differences between each service and when to use them.</description>
    </item>
    <item>
      <title>Azure Private Networking: A Helpful Analogy</title>
      <link>https://m7y.me/post/2024-09-11-azure-private-networking-analogy/</link>
      <pubDate>Wed, 11 Sep 2024 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2024-09-11-azure-private-networking-analogy/</guid>
      <description>Struggling to remember Azure&amp;rsquo;s private networking concepts? This article offers a refreshing take on Private Links, Endpoints, DNS Zones, and Zone Groups using a relatable analogy. Perfect for developers who need a clear, memorable explanation to navigate Azure&amp;rsquo;s complex networking features and implement secure cloud solutions.</description>
    </item>
    <item>
      <title>Columbo &amp; the Ideal Team Player 🕵️</title>
      <link>https://m7y.me/post/2024-06-04-columbo-and-the-ideal-team-player/</link>
      <pubDate>Tue, 04 Jun 2024 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2024-06-04-columbo-and-the-ideal-team-player/</guid>
      <description>Have you ever wondered, as I have, what Columbo can teach us about being an effective Software Consultant? 🕵️ Yes? Then wonder no more. In this article, I explore the ideas in Patrick Lencioni&amp;rsquo;s &lt;em&gt;The Ideal Team Player&lt;/em&gt; and show how Columbo embodies the traits of being humble, hungry, and smart. These traits can help create a productive environment, drive continuous improvement, and help build high-performing teams.</description>
    </item>
    <item>
      <title>SonarQube with Docker Compose</title>
      <link>https://m7y.me/post/2024-05-15-sonarqube-with-docker-compose/</link>
      <pubDate>Wed, 15 May 2024 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2024-05-15-sonarqube-with-docker-compose/</guid>
      <description>How to set up a SonarQube server using Docker Compose. I cover the configuration of both the database and the SonarQube server, and provide step-by-step instructions for integrating and scanning backend and frontend projects using SonarScanner for .NET and SonarScanner. This guide is perfect for developers looking to experiment with SonarQube locally.</description>
    </item>
    <item>
      <title>Easier Code Debugging with SQL Server Backups</title>
      <link>https://m7y.me/post/2024-04-21-debugging-with-sql-server-backups/</link>
      <pubDate>Sun, 21 Apr 2024 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2024-04-21-debugging-with-sql-server-backups/</guid>
      <description>Speed up your debugging workflow by restoring SQL Server backups to quickly reproduce issues. A practical guide to using BACKUP and RESTORE commands to reset your local database to a known state.</description>
    </item>
    <item>
      <title>Part II: Initialising SQL Server with Docker Compose</title>
      <link>https://m7y.me/post/2024-04-06-sql-server-init-docker-compose/</link>
      <pubDate>Sat, 06 Apr 2024 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2024-04-06-sql-server-init-docker-compose/</guid>
      <description>This article explores three effective methods for initialising a SQL Server container using Docker Compose: execution of SQL scripts, leveraging mssql-tools, and restoring from a bacpac.</description>
    </item>
    <item>
      <title>Part I: Microsoft SQL Server with Docker Compose</title>
      <link>https://m7y.me/post/2024-04-05-sql-server-with-docker-compose/</link>
      <pubDate>Fri, 05 Apr 2024 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2024-04-05-sql-server-with-docker-compose/</guid>
      <description>A step-by-step guide to running Microsoft SQL Server in Docker Compose for local development. Covers configuration for both Windows and Mac (including ARM/Rosetta), health checks, persistent volumes, and team-friendly defaults.</description>
    </item>
    <item>
      <title>SQL Server High Dpi Settings</title>
      <link>https://m7y.me/post/2021-01-03-sql-server-high-dpi-settings/</link>
      <pubDate>Sun, 03 Jan 2021 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2021-01-03-sql-server-high-dpi-settings/</guid>
      <description>A quick fix for SQL Server Management Studio looking awful on high DPI screens. Mostly a note to my future self.</description>
    </item>
    <item>
      <title>Keep your dev loop as short as possible with SQL Server Snapshots</title>
      <link>https://m7y.me/post/2019-12-05-debugging-with-sql-server-snapshots/</link>
      <pubDate>Thu, 05 Dec 2019 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2019-12-05-debugging-with-sql-server-snapshots/</guid>
      <description>SQL Server snapshots let you quickly save and restore your local database state - handy when switching branches or debugging scenarios that need complex data setups.</description>
    </item>
    <item>
      <title>Creating an Azure Event Grid Simulator</title>
      <link>https://m7y.me/post/2019-02-02-creating-an-eventgrid-simulator/</link>
      <pubDate>Sat, 02 Feb 2019 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2019-02-02-creating-an-eventgrid-simulator/</guid>
      <description>I built an Azure Event Grid Simulator so I could run integration tests locally without needing a real Event Grid instance. It&amp;rsquo;s on GitHub.</description>
    </item>
    <item>
      <title>Locally Debugging an Event Grid Triggered Azure Function with Postman</title>
      <link>https://m7y.me/post/2018-12-18-debug-eventgrid-triggered-azure-function/</link>
      <pubDate>Tue, 18 Dec 2018 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2018-12-18-debug-eventgrid-triggered-azure-function/</guid>
      <description>How to locally debug an Azure Function with an Event Grid trigger using Postman. The trick is the aeg-event-type header, which took me ages to find in the docs.</description>
    </item>
    <item>
      <title>Readify Consultant Toolbelt</title>
      <link>https://m7y.me/post/2018-09-12-readify-consultant-toolbelt/</link>
      <pubDate>Wed, 12 Sep 2018 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2018-09-12-readify-consultant-toolbelt/</guid>
      <description>A curated list of open source .NET libraries and tools created by Readify consultants - from Autofac and Serilog to Octopus Deploy and GuardAgainst.</description>
    </item>
    <item>
      <title>The CallerArgumentExpression Attribute in C# 8.0</title>
      <link>https://m7y.me/post/2018-08-06-caller-argument-expression-attribute/</link>
      <pubDate>Mon, 06 Aug 2018 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2018-08-06-caller-argument-expression-attribute/</guid>
      <description>A look at the CallerArgumentExpression attribute coming in C# 8.0 and how it could simplify guard clause libraries like GuardAgainst.</description>
    </item>
    <item>
      <title>Using an Azure function to get Octopus deployment notifications in Slack</title>
      <link>https://m7y.me/post/2018-03-29-octopus-deploy-slack-notifications/</link>
      <pubDate>Thu, 29 Mar 2018 00:00:00 +1000</pubDate>
      <guid>https://m7y.me/post/2018-03-29-octopus-deploy-slack-notifications/</guid>
      <description>Learn how to integrate Octopus Deploy with Slack for real-time deployment notifications using Azure Functions. This guide covers setting up Octopus subscriptions, converting Octopus events to Slack messages, and securing your webhook integration.</description>
    </item>
    <item>
      <title>About</title>
      <link>https://m7y.me/about/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://m7y.me/about/</guid>
      <description>Paul McIlreavy - software development leader and platform engineer in Brisbane. 25 years building software across .NET, Azure, Docker, and AI.</description>
    </item>
    <item>
      <title>Photostream</title>
      <link>https://m7y.me/post/photostream/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://m7y.me/post/photostream/</guid>
      <description>A selection of my most okayest photos.</description>
    </item>
  </channel>
</rss>
