What I keep forgetting about timeouts
Daniel C. · Jul 22
The team I learned the most from didn't have great tools. They had a great habit of reading each other's pull requests in full, including the parts that weren't theirs.
Latency budgets work better than latency targets. Targets are aspirational. Budgets force you to delete features when you go over.
I used to add a layer of abstraction the first time I saw a pattern repeat. Now I wait for the third. The waiting is uncomfortable, but the abstractions that survive that wait tend to last.
There's a kind of premature optimization that comes from imagining a future team. "What if someone needs to swap this out?" Often, no one does.
Most of the trouble I see in production comes from boundary cases someone promised would never happen. The code is fine. The plan is fine. The promise is what ages badly.
When a system surprises me, my first instinct used to be to fix the surprise. Now my first instinct is to figure out which mental model of mine was wrong, and update that.
← back to index