Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Event Driven Development
Search
carnage
March 09, 2018
Technology
600
0
Share
Event Driven Development
carnage
March 09, 2018
More Decks by carnage
See All by carnage
Object re-orientation
carnage
2
540
More Secrets of Cryptography
carnage
0
440
Nuclear powered software securty
carnage
0
470
Microservices vs The distributed monolith
carnage
1
2.4k
Passwords and how to handle them
carnage
0
430
A storm is brewing
carnage
0
110
The secrets of cryptography
carnage
0
210
The secrets of cryptography
carnage
0
190
You attended talk: An introduction to event sourcing (short)
carnage
0
690
Other Decks in Technology
See All in Technology
ラズパイ & Picoで入門:Zephyr(RTOS)の環境構築からビルドまでの紹介
iotengineer22
0
150
Pythonでベイズモデリング
soogie
0
160
ワールドカフェ再び、そしてゴール・ルール・ロール・ツール / World Café Revisited, and the Goals-Rules-Roles-Tools
ks91
PRO
0
190
R&D 祭 2024 UE5で絵コンテ・作画の制作支援ツールをつくる話
olmdrd
PRO
0
200
PdM・Eng・QAで進めるAI駆動開発の現在地/aidd-with-pdm-eng-qa
shota_kusaba
0
260
The Making of AI Chips
pfn
PRO
0
580
AI時代に求められる思考のパラダイムシフト
nrinetcom
PRO
0
110
はじめてのAI-DLC
yoshidashingo
1
220
AIAgentと取り組むKaggle
508shuto
2
470
Directions Asia 2026 | Beyond Buildable AI Agents: Let’s Visualize Partner Value in the AI Era
ryoheig0405
0
130
React Compiler導入から21ヶ月、いま始めるならこうやる
astatsuya
2
280
Swift Sequence の便利 API 再発見
treastrain
1
290
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
120
Automating Front-end Workflow
addyosmani
1370
210k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
170
Ruling the World: When Life Gets Gamed
codingconduct
0
230
How to make the Groovebox
asonas
2
2.2k
Site-Speed That Sticks
csswizardry
13
1.2k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
250
Measuring & Analyzing Core Web Vitals
bluesmoon
9
830
Optimizing for Happiness
mojombo
378
71k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
140
Code Reviewing Like a Champion
maltzj
528
40k
Transcript
Event Driven Development Christopher Riley ConFoo 2018 1
Introduction
Introduction • Event sourcing 2
Introduction • Event sourcing • Event Driven Architecture 2
Introduction • Event sourcing • Event Driven Architecture • Task
Based UI 2
Introduction • Event sourcing • Event Driven Architecture • Task
Based UI • Event storming 2
What is an event? 2
What is an event? • Something which has happened in
the past 3
What is an event? • Something which has happened in
the past • Relevant to a domain expert 3
What is an event? • Something which has happened in
the past • Relevant to a domain expert • Not technical 3
What is an event? • Something which has happened in
the past • Relevant to a domain expert • Not technical • Raised in response to an input 3
Task based UI
A CRUD UI 4
A Task Based UI 5
Everything a company does is part of a process 5
Why are task based UI’s helpful to event based systems?
5
Event sourcing
A familiar model 6
Event sourcing example 7
What does an event sourced system actually look like? 7
Event sourcing architecture 8
Handling a command 9
Inside the model 10
Inside the model 11
Handling Events 12
Projections
Projections • Turn events into read models 13
Projections • Turn events into read models • Can be
eventually consistent 13
Projections • Turn events into read models • Can be
eventually consistent • Can be rebuilt 13
A projection 14
Process Managers
Process managers • Handle business logic around events 15
Process managers • Handle business logic around events • A
state machine 15
Process managers • Handle business logic around events • A
state machine • Keep track of failures 15
Process managers • Handle business logic around events • A
state machine • Keep track of failures • Be careful with replays 15
A Process Manager 16
Event Driven Architecture
Event Driven Architecture 17
Cross System Process 18
Conclusions
Thanks • @giveupalready • https://github.com/carnage • https://carnage.github.io 19