EventSourcing for beginners

4 x 4 hours remote workshop with Thomas Coopman

EventSourcing for beginners

No dates are scheduled for this workshop. Let us know if you think we should organize it near you, or if you'd like to book it on premise in your organisation.


Dealing with complex domains can be a challenge in traditional software environments. Event sourcing is a pattern that can help building complex domains.

There is a huge amount of material out on the internet about what event sourcing is. Furthermore, there are multiple frameworks and software packages for building event sourced systems. But how do you start from all of this? How do you know how, why or when to use event sourcing and any of the frameworks?

In this 2 day remote workshop we'll start from nothing to learn you the basic of event sourcing from the ground up. Step by step we'll be connecting more pieces until we have a fully event sourced example working where every piece is well known. In this way, you'll have the knowledge you need to evaluate, design or build your own event sourced systems.

The format of this workshop will be mostly practical excercises intermingled with smaller blocks of theory and Q&A.

Topics you’ll learn about

  • Modeling events from whiteboard to domain model
  • Event sourcing
  • CQRS
  • Projections
  • How to test your model
  • Read model
  • Write model

What will not be handled

  • Advanced topics like migrations,...
  • A specific framework or event store. This workshop is framework agnostic. You learn the basics, after this you can start using a framework if you want, you’ll be able to evaluate if the framework suits your needs

How will this work

Remote training can be harder in some ways. Because this is a coding workshop this is less of a disadvantage and we can even use being remote to our advantage in many ways. To have a great remote workshop these are some things we are going to do:

  • We will keep the group small so that one-on-one and pairing will be possible with the trainer.
  • We will switch between small blocks of theory and then implement this theory. The implementation part will be done on your own in a remote pair. The trainer will also be part of this group and will be able to join at any point.
  • At any point you can ask questions, these will be handled in group or one-on-one.
  • We feel that following a remote workshop can sometimes be more draining, so we’ll split the 2 day workshop over 4 half days spread over 2 weeks. So that the energy levels stay high.

Prerequisites

  • A laptop with a “Hello world” application with unit tests in a language that you’re proficient in.
  • You are comfortable reading C#/Java like syntax.
  • You have some knowledge of design patterns and tactical DDD patterns, but being a novice at DDD is fine.
Thomas Coopman

About Thomas Coopman

Thomas is a software consultant and engineer focused on the full stack: domain modelling, frontend & backend, and most importantly: people, practices, and processes. Thomas develops and teaches training programs for Aardling. He holds a Master of Informatics at the University of Leuven.

Thomas is a programming polyglot and loves to learn new languages. His latest language studies have taken him to Elixir, Elm, and OCaml, and he has a special affinity for functional programming languages. Thomas co-organises the DDD Europe conference and the Belgian Software Crafters community.

All workshops by Thomas Coopman
@tcoopman

No dates are scheduled for this workshop. Let us know if you think we should organize it near you, or if you'd like to book it on premise in your organisation.


Also check out