Greg Young - CQRS and Event Sourcing - Code on the Beach 2014
Code on the Beach4 HN recommenders · 2016–2022
170K views · talk · evergreen · Uploaded 2014-09-08
Greg Young's Code on the Beach 2014 talk on CQRS and event sourcing. He argues mature domains are built on facts that occurred rather than current state, and covers the business and technical benefits.
HN developers recommend it as the talk that changed how they model systems, and as a clear intro to event sourcing's motivations.
38:47RailsConf 2014 - All the Little Things by Sandi Metz
Confreaks
1:01:39"Simple Made Easy" - Rich Hickey (2011)
Strange Loop Conference
25:06"Making Impossible States Impossible" by Richard Feldman
elm-conf
40:20"Testing Distributed Systems w/ Deterministic Simulation" by Will Wilson
Strange Loop Conference
1:00:19How To Design A Good API and Why it Matters
Google TechTalks
31:44The Value of Values with Rich Hickey
InfoQ
1:04:04Overwatch Gameplay Architecture and Netcode
GDC Festival of Gaming
1:02:26Solving Problems the Clojure Way - Rafal Dittwald
Clojure/north
5 comments from Hacker News
The following talk about event sourcing (not listed in the article)•, really made an impact on me: Event Sourcing - Greg Young [VIDEO] •: Not that I really expected it to be I guess.
Greg Young also cautions "Do not tell me you've built an event sourced system"* (or something along those lines) meaning that you should be careful to apply the pattern only to the part(s) of the system that makes sense (due to the increased complexity of ES) * I think it's in this talk [VIDEO]
I agree with you it's tough to sell CQRS, it's like trying to explain to someone that their business should use a database in one line. For me event-sourcing is a historical layer below your existing database that allows you to replay the sequence of events that got your database to its current state. If I had to businessify it, maybe it would be 'Wolkenkit is a framework that allows you to save and replay your entire business's history so you never miss a key insight again.' From a technical perspective, engineers can focus on the product and organically build and destroy the data structures around a changing business instead of trying to find the perfect data-structures that will inevitably be incorrect as the business grows and evolves. You get regression tests for free, and you get backups for free which may be nice-to-haves when the business is small, but absolute requirements once you have real customers paying real money. Not sure how I would squeeze that in an elevator pitch though. Greg Young's presentation on event-sourcing is pretty great, you may find some inspiration there: [VIDEO]
For a fun introduction to this concept and the motivations behind it, you may watch Greg Young's talk [VIDEO]
Not about dev tools per se, but this talk by Greg Young on event sourcing & CQRS forever changed how I think about modeling systems, preserving history, and supporting multiple read models/versioning. Really clear walkthrough of the types of problems that benefit from an event sourced system, how event sourcing addresses them, and exploration of new use cases it enables. [VIDEO]