Recent writing

What makes code readable

Most codebases grow in directions their authors never anticipated. The pressure to optimize early is real, but constraints often produce more elegant solutions than freedom ever could.

Continue reading →

The cost of context switching

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.

Read more →

From the archive

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.

About this site

Occasional thoughts on engineering practices, tooling, and how we think about code. No sponsors, no tracking, no ads.

Thoughts on writing. Updated sporadically.

Elsewhere

Occasional writing on technical topics. Past essays here.