Core content is available without JavaScript or WebGL.

Books

  • Designing Data-Intensive Applications Martin Kleppmann

    Read

    The CAP/PACELC framing and the chapter on stream processing get re-applied every time I think about the Kalshi WAL+halt-state coordination problem — what consistency guarantees actually matter versus what can safely tolerate eventual.

  • Reading

    Working through the tree-walking interpreter half. The gap between 'I understand parsing in principle' and 'I can implement a correct recursive descent parser from scratch' is larger than expected and worth closing.

  • Asynchronous Programming in Rust Carl Fredrik Samson

    Reading

    The executor and waker internals finally make the async/await desugaring feel concrete rather than magical. Relevant to every Axum handler I write.

  • The Pragmatic Programmer (20th Anniversary Edition) Hunt and Thomas

    Queued

    Re-reading after a decade. Expecting the 'tracer bullet' and 'broken windows' concepts to land differently after years of production systems work.

Papers

  • Read

    The argument that reliability functions implemented at lower layers are redundant and potentially harmful resonates every time I see a framework that does automatic retry at the wrong level.

  • Read

    The interleaved thought-action-observation loop maps directly onto how the Claude Code agent sessions work in practice. Reading the paper after using the pattern helped clarify where the pattern breaks down.

Posts

  • Prompt Caching and Long Context Windows in Production Anthropic

    Read

    Cache breakpoints and the 5-minute TTL behavior changed how I structure multi-turn agent sessions — front-loading stable context before volatile prompts is now a default pattern.

The theme for Q2 is depth over breadth. The quarter started with a backlog of books half-read and papers bookmarked but not processed. The goal was to finish fewer things more completely rather than starting more things.

DDIA is the most-reached-for technical reference I own. Reading it cover-to-cover rather than as a lookup resource surfaced connections I had been missing — in particular the relationship between consensus algorithms, replication lag, and the kinds of state coordination problems that show up in multi-agent systems.

Crafting Interpreters is genuinely fun in a way that most technical books are not. Nystrom writes like he enjoys the material, and the progression from simple to complete is well-paced. I am doing the exercises, not just reading, which is slower but the difference in retention is obvious.

The papers this quarter were chosen because they have direct application to active work: the end-to-end arguments paper for API design decisions, ReAct for agent architecture clarity. Reading foundational papers rather than just blog summaries of foundational papers is a habit worth building.