Field Notes
666158.cc

Boring choices I keep making

Theo M. · May 9

The fastest debugging trick I've learned is to write out, in one sentence, what the system is supposed to be doing. Half the time I notice the bug while writing the sentence.

I trust monorepos more in the second year than I did in the first. Most of the early friction goes away once the tooling catches up.

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.

Caches solve a problem and create three new ones: invalidation, observability, and the slow drift between what the cache thinks is true and what the source thinks is true.

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.

Latency budgets work better than latency targets. Targets are aspirational. Budgets force you to delete features when you go over.

← back to index