The queues you did not know you had
Every fixed-size resource is a queue. Most of them are unmonitored, and that is where latency hides.
tech, developers, and the code underneath
A new major version every autumn, a five-year support window, and a migration that gets worse the longer you leave it.
Every fixed-size resource is a queue. Most of them are unmonitored, and that is where latency hides.
Users cannot see your architecture. They can see the six seconds it takes to do the thing they came for.
The chat log is where the incident is actually run. Four conventions make it useful rather than a wall of noise.
A release every six weeks, no exceptions, no marketing cycle. What that cadence actually produces.
Internal interfaces get none of the care external ones do, and they are the ones you'll live with longest.
Six lines at the top of a bash script are the difference between a tool and a trap.
Error rates get tracked as a percentage. Users experience them as a specific person having a specific bad day.
Timeboxed investigation is the cheapest way to buy certainty, and most teams do it in a way that produces neither certainty nor code.
The innovation-token argument is a decade old and still right, with one amendment nobody makes.
A checklist for the moment before you create a new deployable, when saying no is still free.
The single most useful performance visualisation, and the four shapes worth recognising in one.
Every team has a definition of done and most of them are a checklist nobody reads. Here is the version that changes behaviour.
Go ships every February and August, has done for a decade, and the predictability is worth more than any feature in it.
Most comments restate the code and rot. A few carry information the code cannot express, and those are worth defending.
What writing in public taught me about engineering, what I was most wrong about, and why the archive is the point.
Two years after entry into force, the substantive requirements arrive. What changes, what was delayed, and what to do now.
The workflows that survived contact with real work, the ones that did not, and what the whole thing actually changed.
Every line you remove is one that cannot break, cannot be misread, and does not need to be maintained.
A number, agreed in advance, that fails the build. The only mechanism that has ever kept a system fast.