
Talk Python To Me #548: Event Sourcing Design Pattern
23 snips
May 11, 2026 Chris May, Python developer and educator who teaches event sourcing and builds Everyday Superpowers resources. He explains event sourcing as immutable, replayable change streams vs CRUD. They cover performance tricks, read models for live UIs, versioning strategies, when to adopt or avoid event sourcing, and how AI can help generate event-driven code.
AI Snips
Chapters
Books
Transcript
Episode notes
Event Sourcing Is An Immutable Audit Trail
- Event sourcing stores every change as immutable events instead of mutating rows, letting you reconstruct history precisely.
- Chris May illustrated with a shopping cart: add/remove events record that a user removed two items even if final row looks identical to another user.
Serve Fast Reads With Read Models Or Caches
- Use read models or caches to serve fast current-state queries while keeping the event store as the source of truth.
- Michael Kennedy and Chris discussed options: operational DB, Valky/Redis or diskcache plus cache invalidation on writes.
Pair Event Sourcing With CQRS And Event Modeling
- Combine event sourcing with CQRS, vertical slice architecture, and event modeling diagrams to manage complexity and team communication.
- Chris highlights Martin Dilger's approach: events as base, read-models for queries, and event-model diagrams for clarity.




