Patterns in distributed systems
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.
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.
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.
I write about software architecture, distributed systems, and the craft of programming. Posts are infrequent but hopefully worth the wait.
Thoughts on design. Updated sporadically.
Occasional writing on technical topics. Past essays here.