Event Sourcing in Elixir
Details
Speaker: Pedro Assumpcáo | https://github.com/pedroassumpcao | @pedroassumpcao
================================
Event Sourcing and CQRS are application architecture patterns that commonly are used together to leverage an immutable event-centric model. Differently than the CRUD model where only the current state is mutated, Event Sourcing relies on a series of stored events to drive the business logic and to build the current state of the application.
The main advantages of Event Sourcing are:
- application design and business logic speak the same language;
- audit log for free with all the changes the system had;
- temporal queries, where is possible build the application state in any point in time.
In this talk, I will cover a quick Event Sourcing and CQRS introduction, but the main part is about FootBroker (https://footbroker.tk), an online soccer fantasy game that it is running in production in a beta stage, and has its main pieces using Event Sourcing and CQRS patterns.
Based on the game needs, I will present:
- what parts are using Event Sourcing and why?
- what parts are not using Event Sourcing and why?
- the main architecture components that use GenStage, GenServer, and GenStateMachine;
- code examples for commands, aggregates, events, event handlers, and projectors;
- examples of stored events and projections (application state);
- business edge cases and how those were implemented;
At the end of the talk, you should have a good practical understanding of Event Sourcing and CQRS and its pros and cons.
See you there.
---
Pizza served at 6pm, talk will start at 6:15pm, please be on time.
We will greet you downstairs and send you up. Please do not be late as we cannot be downstairs once the meetup starts.
---
Follow us on Twitter: @ChicagoElixir (https://twitter.com/ChicagoElixir)
Subscribe to the Youtube Channel: ChicagoElixir on YouTube (https://www.youtube.com/channel/UCuBLulAIH2ow5l0PhMrJzfQ)
Visit our website: ChicagoElixir.com (https://chicagoelixir.com)
Want to speak at ChicagoElixir? Great! we are constantly looking for speakers. Submit your proposal here: https://bitly.com/SpeakAtChicagoElixir
