Build Systems, Not Willpower. Engineering a Life That Holds Under Pressure
Willpower depletes and systems don’t — the same principle that makes good software resilient is the one that carried me through the hardest periods of my life.
Willpower depletes and systems don’t — the same principle that makes good software resilient is the one that carried me through the hardest periods of my life.
I’ve been sitting on this one for ages. Every so often someone asks how a tool I once built called Social Opinion got started, or how I ended up in Twitter’s NYC office talking to…
I work across multiple locations. Scotland, England, client sites, my campervan, and sometimes Europe. That means I need a setup that travels without compromise. A proper second screen, a decent keyboard, and access to my…
Sometimes I get messages asking if I take sponsors. It’s not something I had considered but after some thought, it makes sense. I’m opening up a few sponsorship slots on the blog. A quick bit…
Last updated: 28 July 2026 I’ve been building out an AI agent, Iron Mind AI, a personal trainer agent, incrementally using the Microsoft Agent Framework. Each post in this series adds a new capability: function…
Last updated: 28 July 2026 Retrieval-Augmented Generation is a pattern, not a framework, and the gap between a RAG tutorial and a RAG pipeline that stays healthy in production is substantial. This series covers what…
Microsoft awarded me the Most Valuable Professional Award for the 8th year in a row. The disk was shipped and each year it still means something. I don’t take it for granted. Eight years is…
I shut down a SaaS product a few years ago. Not because the idea was wrong, and not because the market wasn’t there. Because the platform underneath it changed ownership, repriced its API overnight, and…
I’ve been using Claude Code heavily across AI engineering work: RAG pipelines, .NET MCP servers, content automation, agentic workflows. The way I use it now looks nothing like how I started. Most write-ups on Claude…