Engineering
21 entries
A totally unscientific comparison of building an RTS twice with Spec Kit
I wanted to get a bit more hands on with Spec Kit, what better way than building a Command & Conquer inspired game? Doing it twice of course!
What does AI Native actually mean?
"AI Native" is the phrase of the moment, and nobody agrees what it means. My definition comes down to one uncomfortable question: could your team delete its codebase and rebuild the software inside a week?
Specs.md: agile ceremony, rebuilt for agents
I went into a spec-driven framework expecting waterfall in an agile costume. What I found mapped almost exactly onto Scrum ceremony — intents, work items, runs — with one of the people in the room swapped for an agent.
Disassembling slop
Slop isn't bad AI code. It's code that is cheap to produce and expensive to verify, a trade LLMs knocked out of balance. Name the imbalance and you can act on it, instead of just asking people to be more careful.
From vibe to spec
The methodologies fighting for attention such as vibe coding, spec-driven development, structured prompt-driven development, keep getting framed as rival camps. In fact, they're stages of one pipeline, and the real leverage is in the transition point between them.
Tested by accident
I accidentally deleted my website this weekend. The forced rebuild was the first real-pressure test of the standards-first experiment I wrote about a few days ago. The standards held — and revealed what is still unfinished.
Slop is a standards problem
AI slop is real. The diagnosis is wrong. Slop is what AI does when no one sets the standard — and the same technology can elevate the bar instead, if you choose to use it that way.
Evolving Agile in the age of AI agents
The agile practices that survived AI-assisted development weren't the process ones — they were the philosophical ones. A look at what changed and what stayed when building a real product with AI agents.
Goal-Driven Development with AI Agents
Starting with a real problem — the "did we get cinnamon sticks?" moment in the kitchen — and figuring out the solution as you go. Part 1 of a series on building a real product with AI agents.
If Your Meeting Needs People From Five Teams, Something's Broken
When delivering one idea requires five teams in a room, that's not a planning problem — it's a structural one. On value streams and why cross-functional engineering teams are only halfway to the goal.
Part 2 — The Handoff (From the AI's Point of View)
The second part of a documentation experiment, written from the AI's perspective. GPT inherits a codebase cold, reads the principles doc, and uses it to constrain a feature decision — validating the thesis that the right documentation shapes choices, not just describes code.
What's Left When the Code Becomes the Source of Truth
I wrote 786 lines of documentation, then deleted 83% of it. Here's what survived — and why it's the only documentation that matters.
AI Can Explain Your Code. Stop Documenting the Obvious
AI can now explain what a system does and how it works. That changes what documentation is for — and what's still worth writing down.
Why Your Server Is Paying for Your CSS Choices
Server-side rendering makes some previously invisible costs very visible. This post explores how styling can end up on the server's hot…
Folding the Laundry: A Kanban Story
Kanban explained through household laundry: visualise the work, cap what's in progress, and deliver in small finished batches. Simple rules that apply equally to software delivery and a pile of clean clothes on the spare-room bed.
Teaching AI to Design What I Mean, Not Just What I Say
My experiments trying to take back control of AI-generated UI
iframes vs Web Components — which one actually performs better in 2025?
After 102 automated Playwright tests, Web Components load 4.5× faster than iframes with identical memory use. A data-driven guide to when each isolation mechanism is the right call.
From Drift to Drive: Helping Teams Move Towards Strategic Outcomes
Teams rarely drift because they're lazy. They drift because no one's holding the map up anymore.
Quiet Debt: The Hidden Cost of Ignoring the Small Stuff
Most of us are familiar with the classic definition of technical debt: the shortcuts, workarounds, and legacy code that get us out of a jam…
The Case for Slow Thinking in Engineering Teams
Engineering teams rush to close decisions and the fastest voice usually wins. The seven-second rule, System 1 vs System 2 thinking, and why slow deliberation paired with fast AI is a more powerful combination than either alone.
Finding time to make games
From January 2013: why my spare-time games kept stalling, the two rules I set myself to finally finish one, and what three abandoned projects taught me.