Books
What I've written, and what I've read that stuck.
Books I've Written

The System Parables · Book 1
Beginnings at the Well
Thirty-five parables on how things get built
If you want to understand how systems actually work, not the code, the thing underneath it, this book teaches it through parables instead of manuals.
Nobody in the village was ever thirsty for water. They were thirsty for the morning it was costing them: the half day's walk, the barrels, the neighbour you had to ask and then remember asking. A Master sits beside a well and teaches four people who know nothing at all. A baker whose ordering system fails every Saturday. A student who has never written a line of code. A man whose job of eleven years no longer needs doing. A teacher whose school is going digital whether it is ready or not. Across thirty-five parables they learn why anything gets built, what happens when more people want it than it can serve, how two parties who have never met agree on how to speak, what a system remembers and what it costs to be certain, and why the slowest part of anything decides the speed of the whole. There is no code in this book. It names no tool, no company, no technology. What it teaches was true of aqueducts and post roads long before anyone thought to build these things out of electricity, and will still be true when today's tools are curiosities. Every chapter contains a moment where the four of them get the answer wrong before they get it right. Those are the parts worth reading twice.
Book details pageBooks That Shaped Me
Short notes on books that genuinely changed how I think or build. Not a comprehensive list, only the ones I keep returning to.
The Holy Bible
The book I read every day. Not because I have to, but because the Word of God grounds how I think about everything else: complexity, work, people, time. The foundation under all the other reading.
Designing Data-Intensive Applications
by Martin Kleppmann
The reference text for distributed systems. I return to it whenever I need to think clearly about consistency, replication, or storage.
The Pragmatic Programmer
by David Thomas, Andrew Hunt
The book that changed how I write code. Short, dense, evergreen.
A Philosophy of Software Design
by John Ousterhout
On complexity and how to manage it. Made me rethink how I structure modules.
Thinking, Fast and Slow
by Daniel Kahneman
Two systems of thinking. Once you see the framework you cannot unsee it.
Atomic Habits
by James Clear
On systems over goals. Practical and relentlessly applied.
Hands-On Machine Learning
by Aurélien Géron
The book that took me from ML curiosity to ML practice.
Updated occasionally as I finish or revisit