Boring choices I keep making
Anya P. · Jul 22
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.
Every time I revisit a project after six months, I find at least one place where past-me wrote a comment that present-me has now stopped trusting. Comments rot faster than code.
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 write smaller commits than I used to. The commits are uglier in isolation and much easier to read in sequence.
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.
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.
← back to index