Things broken on purpose
Theo M. · May 24
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.
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.
If a config file has more than a dozen options, half of them aren't being used. The other half are being used in ways the original author didn't predict.
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.
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.
I split a 4000-line file into 12 smaller ones this week. The smaller files weren't actually easier to understand. The 4000-line file was a problem of structure, not of length.
← back to index