Incremental adoption of types
The tools we reach for shape our thinking. I've spent the last decade in terminals and shells, and it's changed how I approach problem-solving in subtle ways.
The tools we reach for shape our thinking. I've spent the last decade in terminals and shells, and it's changed how I approach problem-solving in subtle ways.
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.
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.
A technical writer exploring systems thinking, code design, and the intersection of tools and thought.
Thoughts on craft. Updated sporadically.
Occasional writing on technical topics. Past essays here.