Notes on system reliability
Naming is one of the hardest problems in software, yet we spend less time on it than we should. Let's talk about why it matters and how to get better at it.
Naming is one of the hardest problems in software, yet we spend less time on it than we should. Let's talk about why it matters and how to get better at it.
Distributed systems fail in ways that are hard to predict. After years of debugging production incidents, certain patterns keep recurring. This post explores a few.
Performance optimization is a tempting distraction. Every line of code that exists to optimize one specific case is a line that must be maintained and understood forever.
Occasional thoughts on engineering practices, tooling, and how we think about code. No sponsors, no tracking, no ads.
Thoughts on writing. Updated monthly.
Occasional thoughts on design topics. Archives here.