Latest posts

On API design principles

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.

Read more →

From the archive

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.

About this site

I write about software architecture, distributed systems, and the craft of programming. Posts are infrequent but hopefully worth the wait.

Thoughts on design. Updated weekly.

Elsewhere

Occasional writing on systems topics. Past essays here.

Log in