Milan Jovanovic Tech reposted this
I've been coding in .NET for years, but I never built an event-sourced system. Event sourcing has always intrigued me, though. The idea of capturing every change and having a complete history of your data - it's fascinating. So, I decided to dive in. Not as an expert but as a curious developer. When I first encountered event sourcing, it seemed complex. But stripped down, it's a surprisingly simple idea: store changes, not just the current state. Think of a bank account or wallet. Normally, we'd just save the balance. With event sourcing, we record every deposit and withdrawal. The balance is then calculated from these events. This shift from storing state to storing events is the essence of event sourcing. With events, you can now create projections to produce read models. You can do data analysis on the event streams to gain business nights. It's a very flexible approach. But event sourcing is also very complex. - Significant mindset shift and learning curve - Performance, snapshots, projections - Event schema evolution If you want to learn more about event sourcing, I wrote this introduction for .NET developers: https://lnkd.in/e3Gg85pK Did you ever use event sourcing in production? What was your experience? --- Do you want to simplify your development process? Grab my free Clean Architecture template here: https://bit.ly/4ep1EEU