Experience Report: Event Sourcing without Responsibility

When building an event-sourced systems, it's a common reflex to construct projections to answer queries efficiently instead of sifting through the event stream. But have you really checked just how inefficient it is to just check the events? We might just be able to find a clever way to index the events on the fly, making do without CQRS and projections entirely. This talk is a report on a highly distributed application for configuration management in a large network of car shops among mobile devices that are only sporadically connected. We started out maintaining some carefully chosen projections. These were to be hard to maintain consistently, and, as it turned out, unnecessary: Just going through the events selectively was plenty fast enough. This might be your application, too. The talk also has some lessons on event synchronization in mostly-offline settings, and conflict management.

Michael Sperber is CEO of Active Group in Tübingen, Germany. Mike specializes in functional programming, and has been an internationally recognized expert in the field: He has spoken at the top conferences in programming languages, authored many papers on the subject as well as several books. Moreover, he is an expert on teaching programming.

picture of Mike Sperber

Mike Sperber