Event Sourcing is a persistence design pattern. It is often mentioned alongside CQRS and DDD.
In short, it is the practice of storing the events that lead up to the current state instead of
storing the state itself, as one would do in a CRUD system with a normalized database. The assumption
is that it is always possible to re-create the state from the events, but not the other way around.
Especially when Event Sourcing is combined with CQRS architecture, it enables a whole new way of
thinking about data in your applications. It enables point-in-time data and the possibility to
process old events against new features retroactively.
In this course, the Event Sourcing principles and patterns are introduced, and we build an entire
CQRS application from scratch to demonstrate how things piece together. We are not using a ready-made
framework for this, but we are trying to take away the magic by building our own.
At the end of this course, you should be familiar with event sourcing and how it fits with CQRS architecture.
With 20 years in .NET development, Hannes has always been passionate about performance, databases, distributed systems and large-scale applications. When it comes to architecture, his opinions have become a bit more nuanced, and the "it depends" card, however boring, gets played in many technical discussions. Hannes has always had a passion for sharing knowledge. It doesn't matter whether it is one-to-one while pair programming, on a conference stage giving a talk or when he's helping people succeed in their careers as a coach. In his free time, when he's not building LEGO® castles with his three kids, he likes to stream his guitar building on Twitch and spends too much time playing online chess and doing all-around geeky stuff. You can always lure him into a chat over a glass of great Whisky.