#29 The Dark Side of Event Sourcing


We have 2 great talks scheduled for you tonight. Gien will be talking about F# in a brownfield project and Michiel about data conversion in an event sourced system.

Playing nice together: how to use F# in a brownfield project by Gien Verschatse

Like many companies, our main code base is a C# monolith. Although there is a lot of domain knowledge captured in it, using C# wasn't always the best choice to solve our domain problems. When we discovered F#, we realised that it was a better fit for some of the features we were currently implementing in C#. However, rewriting everything at once in F# would be ineffective. The manual says C# and F# play nice together. So we tried that out, pushing it as far as we could.

In this talk I will show you how we used F# in our existing C# monolith. I will talk about the positive and negative effects of our decisions, what I would do differently in the future and whether or not C# and F# do indeed play nice together.

About the speaker: Gien is a software developer with 7 years of experience, mainly in a .NET environment. She is a strong believer of continuously learning by deliberate practice and knowledge sharing, which is why she takes part in the organization of two Belgian communities, namely DDDBE and SoCraTesBE.

The Dark Side of Event Sourcing: Managing Data Conversion by Michiel Overeem

Evolving software systems often includes data schema changes, and those cause the need for data conversion. This is no different in event sourced systems.

Converting data between schemas while continuing the operation of the system is a challenge.

In this talk, we will look at the possible conversion operations, the techniques to execute them, and strategies for deployment with zero-downtime.

We will look at the possibilities and the trade-offs for designing and implementing upgrades for event sourced systems.

About the speaker: Michiel Overeem is a Lead Software Architect at AFAS (http://dev.afas.nl (http://dev.afas.nl/)) and part of the team that is responsible for their future ERP Cloud platform.

He started with the development of the HTML5 frontend, but switched to the .NET backend. Now he is responsible for the CQRS and Event Sourcing implementation, as well as the deployment, management and monitoring services of the platform. Not only does he loves to write code, he also loves to read and write papers. That is why he started a PhD. As a PhD candidate with Utrecht University (as part of the AMUSE project ( https://www.amuse-project.org/ ), he is also a researcher. The focus of his research is the upgrading of model-driven, cloud-based software.


18:30 - Drinks and food sponsored by Komma Board
19:45 - How to use F# in a brownfield project
21:00 - The Dark Side of Event Sourcing: Managing Data Conversion
22:00 - Foreseen end

Kindly hosted by Komma Board (https://www.kommaboard.be/)