Recent posts

On API design principles

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.

Read more →

From the archive

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.

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 code. Updated weekly.

Elsewhere

Occasional thoughts on design topics. Past essays here.

Dashboard