Reading
A rough record of what I’m reading. Not a review site — I just like keeping track. Updated when I finish something.
Currently reading
- Operating Systems: Three Easy Pieces · rereading
- The Goal · in progress
- Designing Data-Intensive Applications · reference
2026
- Empire of the Summer Moon · finished
- The Making of a Manager · finished
- A Philosophy of Software Design · finished
2025
- The Psychology of Computer Programming · finished
- Domain Modeling Made Functional · finished
- The Pragmatic Programmer, 20th anniversary · finished
- Accelerate · finished
- Systems Performance (2nd ed.) · reference
- The Manager's Path · finished
- Programming Rust · reference
2024
- Database Internals · finished
- Concurrency in Go · finished
- Staff Engineer · finished
- TCP/IP Illustrated, Vol. 1 (2nd ed.) · reference
- The Checklist Manifesto · finished
- The Design of Everyday Things · finished
Papers I keep revisiting
- MapReduce: Simplified Data Processing on Large Clusters (Dean & Ghemawat, 2004) — still the clearest paper I’ve read about distributed computation primitives.
- The Google File System (Ghemawat, Gobioff, Leung, 2003) — the reasoning around failure modes is masterful.
- Spanner: Google’s Globally-Distributed Database (Corbett et al., 2012) — for the TrueTime section alone.
- Dynamo: Amazon’s Highly Available Key-value Store (DeCandia et al., 2007) — the tradeoffs discussion is older than most of my career and still relevant.
- End-to-End Arguments in System Design (Saltzer, Reed, Clark, 1984) — I reread this every couple of years and always learn something.
- A Note on Distributed Computing (Waldo et al., 1994) — the original “the network is not transparent” paper.
- Out of the Tar Pit (Moseley & Marks, 2006) — the phrase “complexity is what makes large systems hard” lives rent-free in my head.
I keep a longer list in Zotero but these are the ones I end up searching for by name.
Not books, but
- Programming Language Theory lecture notes — Ray Toal’s material, excellent.
- Dave Beazley’s course notes — if you program in Python and haven’t read his stuff, you’re missing out.
- The small web in general — more a collection of blogs than a text, but that’s the point.