Event Sourcing in code, who needs frameworks!
You've heard about Event Sourcing, it sounds like a useful technique that can potentially make some really hard problems a lot easier. But where do you start? There are many talks about the theory and application of Event Sourcing, but what does it actually look like in code? And why is the Kotlin language such an excellent match for writing event sourced applications?
As Event Sourcing is a complicated topic we'll start with a short introduction to some of the key concepts like Event Sourcing, CQRS, command pattern and projections. Event Sourcing is not for everyone. It requires a significant shift in how you think about your data. Event Sourcing is also not always easy, so we'll point out some pitfalls and guide you on when it's worth using it and when you should stay away from it.
However, Event Sourcing is also super-valuable when it fits your needs! And if you approach it in the right way, it does not have to be as hard as you may think. With some live coding, we'll build up an event sourced model using the CQRS pattern. Along the way you'll get a taste of how these techniques work in code and how typical Kotlin constructs like data classes, immutability, lazy properties and functional style will help you to keep it all readable and easy to understand. You'll see that you don't need to start with a framework to do Event Sourcing. The Kotlin language provides a lot of the fundamentals that you need and that allows you to keep everything simple and in your own control.
Tech Lead, bridging strategy, technology & organization | Speaker on DDD, Code Quality, DevOps | Team Shaper | Cloud Solution Architect at Luminis
Amsterdam, NetherlandsView Speaker Profile