Field notes from the review team
Learn to ship code that survives
The mistakes every team makes — in the code we write and the code we generate — and how to catch them before they ship. Friendly, concrete, ten minutes at a time.
Principles
The heuristics and laws behind durable engineering
When the Measure Becomes the Target
A team hits 90% coverage and the bugs keep coming. Velocity doubles and delivery doesn't. Goodhart's law explains both — and what it costs to ignore it.
Your New Teammate Types Very Fast
Every team has quietly hired a colleague who writes confident, fluent code at inhuman speed and never remembers yesterday. The question is whether you review them like one.
Vibe Coding, Engineering, and the Debt Nobody Invoices
Shipping code you don't understand now takes one afternoon. The bill arrives later, in a currency called comprehension. On Naur, vibe coding, and why 'it works' isn't 'it's done'.
The Boy Scout Rule Has a Speed Limit
Leave the code better than you found it — yes. But the noblest rule in software has a failure mode, and it looks like a one-line bugfix that arrives as a 600-line PR.
The Science of the Small Pull Request
A 40-line PR gets three thoughtful comments. An 1,800-line PR gets 'LGTM'. That's not laziness — it's arithmetic. Here's what batch size does to review quality, and how to slice.
Naming Is Design: The Name Comes First
We treat naming as the finishing touch on code. It's the opposite: a name is your first abstraction, and a bad one is usually a design decision you haven't made yet.
Your Working Memory Has a Budget, and Your Code Is Spending It
The bottleneck in software isn't the compiler or the network. It's the four or so things a human can hold in mind at once. Good code is memory management for people.
Code Is Read Far More Than It Is Written
Every line of code is written once and read dozens of times. The economics are lopsided, and once you see them, you never optimize for the writer again.