
Software Development: Engineering or Science?
A look at why software development isn’t engineering - it’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’t built - it’s discovered.

Allen Holub @ YOW! Brisbane 2024
A brief summary of Allen Holub’s “Getting Buy-In: Overcoming Larman’s Law” at the YOW! Brisbane conference December 2024.

Deploying AnythingLLM as an Azure Container Instance
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.

Enabling HTTPS on Azure Container Instances with Caddy
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.

Azure Backup Services: A Helpful Analogy
This article uses the analogy of managing a digital photo collection to explain Azure’s various backup and recovery services, including Azure Backup, MARS Agent, MABS, DPM, and Azure Site Recovery. It also outlines supporting services like Recovery Services Vault and Backup Center, providing an understanding of which service to use in different scenarios.

Azure Private Networking: A Helpful Analogy
Struggling to remember Azure’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’s complex networking features and implement secure cloud solutions.

Columbo & the Ideal Team Player 🕵️
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’s The Ideal Team Player 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.

SonarQube with Docker Compose
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.

Easier Code Debugging with SQL Server Backups
Using SQL server backups to enhance debugging workflows in your development process.

Part II: Initialising SQL Server with Docker Compose
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.