Writing
You can’t install an AI-SDLC
One human, one AI agent, nearly 500 production pull requests in four months. This series is the delivery process that made that safe: every rule in it dated, and traceable to something that went wrong.
More about the series
Over four months I built and shipped a production SaaS with an unusual team structure: one human and an AI agent as the primary implementer. Nearly 500 pull requests, hundreds of backlog items, and a delivery process that did not exist on day one, because it could not have. Nearly every rule in it is scar tissue: dated, and traceable to a specific incident where the agent, or I, did something that had to become a rule.
That is the series thesis: you can't install an AI SDLC, mine or anyone else's. The rules you need are functions of the failures your org, your stack, and your agents actually produce. What transfers is the loop: notice the failure, write the rule, harden it into code, audit compliance.
The series runs in two tracks. One covers process and governance: interrogation gates, review gates, agent identity, audits, and where the human must stay. The other covers the architecture underneath: codebases agents can navigate, decisions as data, enforcement as code, least-privilege operations. Alongside both, I draw on rolling out an AI-enabled SDLC at a global enterprise in a regulated industry, where the same questions arrive with compliance attached.
Links to the articles will appear here as they publish.
AI code review A/B testing series
A weekly series benchmarking frontier LLMs on code review of a pinned 40,000-line codebase against a known-bug register.
Series finale: Opus 5 flips the result, at a quarter of the cost
The series started with Fable beating Opus at code review. Opus 5 just flipped it: full like-for-like numbers, plus honest caveats about flakiness.
My cheap AI code-review trick broke in a week
Has pxpipe with Fable been nerfed? On silent model-capability drift between two Tuesdays.
The $3.44 frontier-grade code review
Running code review through the pxpipe image-compression proxy, and the failed attempt to reproduce the result.
GLM-5.2: dead last as one agent, competitive as a swarm
Testing an open-weight model on the benchmark: last place as a single agent, competitive as a ten-agent swarm at half the price.
An exhaustive deep code review lost to a quick one. Three times.
Testing Claude Sonnet 5 on launch day against the known-bug register.
A tool promised to cut my AI token bill by 60–95%. It cut 4%.
Headroom context compression versus the Anthropic prompt cache, and why a 4% saving is not a bug.
Fable 5 taken offline three days after I said I'd use it
Model availability as supply-chain risk, after a US export-control order took my chosen model offline.
Fable 5 vs Opus 4.8: the first 24 hours
The series opener. A/B testing Claude Fable 5 against Opus 4.8 on a full review of a 40,000-line codebase: zero false positives, consistent runs, and it caught a race condition I didn't know about.
Research
From Rules as Code to Mindset Strategies and Aligned Interpretive Approaches
Peer-reviewed journal article with QUT Law, co-authored with Mark Burdon, Anna Huggins, Nic Godfrey, Rhyle Simcock, Josh Buckley and Síobháine Slevin. Develops the rules-as-code work into mindset strategies and aligned interpretive approaches for legal and regulatory coding.
From Rules as Code To Legal and Regulatory Coding Strategies
Conference paper with QUT Law, co-authored with Mark Burdon, Anna Huggins, Rhyle Simcock, Nicholas Godfrey, Joshua Buckley and Síobháine Slevin. Coding an Australian statute and ASIC Regulatory Guide 274 into machine-executable form, showing the limits of plain-reading legal coding and proposing distinct legal and regulatory coding strategies.
Other writing
Motivating Your Dev Team With Real-Time Feedback...And A Fish Tank
Dev teams lack fast, visible feedback loops. Why an office marine aquarium, automated with Home Assistant and CI/CD, makes both a stunning centerpiece and a live testbed for DevOps practices.
I've Quit My Job and Gone to Greenland...
Trip report from the 2013 "North of Disko" expedition: sailing from Ireland to Greenland and putting up new climbing routes among the icebergs, including an E5 6a named after the expedition.