Quiet Stack
118810.cc

What I keep forgetting about timeouts

Sara K. · Feb 19

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.

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 write smaller commits than I used to. The commits are uglier in isolation and much easier to read in sequence.

Most retry logic I've removed turned out to be hiding a real bug. The retries made the failure invisible, and the bug compounded for months in the background.

← back to index