~/talk

Winemaking with Mutable Event Sourcing in Django with Chris Muthig

Talkat DjangoCon US 2025 · on Tuesday, 2025-09-09· at 10:50· Wolf Point Ballroom· [django, databases]
slides:none on file

A mutable event‑sourced system is built and running in production for wineries: events and aggregates live as Django models as event store backed by Postgres, events use ULIDs for ordering, and Pydantic serializes payloads. The code implements an aggregate repository decorator, optimistic locking, async composition tasks, and supports editing, deleting, and backdating actions while preserving an auditable event history. It validates contextual constraints during downstream replay, handles 200–400 aggregates snappily, and enforces label rules like the 85% regional composition requirement using ULID monotonic IDs.

AI-written summary · about

  1. 0:00Mutable event sourcing in Django
  2. 6:40Standard event sourcing shortcomings
  3. 11:59Delayed recording and corrections
  4. 16:56Event ordering in winemaking
  5. 23:15Mutable event sourcing concepts
  6. 30:15Editing event streams
  7. 33:04Receiving volume code walkthrough
  8. 37:19Backdating actions
  9. 40:07Editing and reapplying events
  10. 42:35Calculating blends
  11. 43:40Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.