#eventsourcing — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #eventsourcing, aggregated by home.social.
-
In this #InfoQ podcast, Johannes Schickling explains why he moved beyond the traditional three-tier web stack to a local-first architecture while building Overtone.
Learn how client-side event sourcing with SQLite compares to CRDTs, and the trade-offs architects should consider.
🎧 Listen now (transcript included) 👉 https://bit.ly/4pIHM6N
-
In this #InfoQ podcast, Johannes Schickling explains why he moved beyond the traditional three-tier web stack to a local-first architecture while building Overtone.
Learn how client-side event sourcing with SQLite compares to CRDTs, and the trade-offs architects should consider.
🎧 Listen now (transcript included) 👉 https://bit.ly/4pIHM6N
-
CQRS, async with retries and dead-lettering, event sourcing, projections, workflows. That feature list usually means a platform team.
I built it as an e-commerce shop on Tempest + Ecotone. The entire messaging layer: about a dozen small classes of business logic. No worker command, no repository, no queue wiring.
The Order aggregate IS the Tempest database model. One class, both frameworks.
-
CQRS, async with retries and dead-lettering, event sourcing, projections, workflows. That feature list usually means a platform team.
I built it as an e-commerce shop on Tempest + Ecotone. The entire messaging layer: about a dozen small classes of business logic. No worker command, no repository, no queue wiring.
The Order aggregate IS the Tempest database model. One class, both frameworks.
-
Requirements change, but your events are immutable and your history lives forever. So how do you evolve them without breaking anything?
I just published the second and final part of my two-part series on event design: "Evolving Your Events Over Time." It walks through the whole toolbox of event evolution, from a free rename to rebuilding the whole store.
Feel free to check it out!
-
Requirements change, but your events are immutable and your history lives forever. So how do you evolve them without breaking anything?
I just published the second and final part of my two-part series on event design: "Evolving Your Events Over Time." It walks through the whole toolbox of event evolution, from a free rename to rebuilding the whole store.
Feel free to check it out!
-
We released 3.17.1 of event-sourcing-bundle! See here for the changelog: https://github.com/patchlevel/event-sourcing-bundle/releases/tag/3.17.1
#PHP #DDD #EventSourcing #Symfony -
We released 3.17.1 of event-sourcing-bundle! See here for the changelog: https://github.com/patchlevel/event-sourcing-bundle/releases/tag/3.17.1
#PHP #DDD #EventSourcing #Symfony -
RE: https://floss.social/@monospace/116923591603748773
We (should) do this for configuration, why not for the application data, too? #EventSourcing
-
RE: https://floss.social/@monospace/116923591603748773
We (should) do this for configuration, why not for the application data, too? #EventSourcing
-
In part 13 of my event sourcing series, we take a look at how to undo bi-temporal events (why and how):
After this post, there will be a summer break.
-
In part 13 of my event sourcing series, we take a look at how to undo bi-temporal events (why and how):
After this post, there will be a summer break.
-
We just published *Cutting Your Events the Right Way*, the first part of a two-part series on event design.
It takes the same customer data, models it as one big event and as several small ones, and works out when each cut is the right call.
Read it here: https://patchlevel.dev/blog/cutting-your-events-the-right-way
#EventSourcing #DDD #PHP #SoftwareArchitecture #EventDriven #TechBlog
-
We just published *Cutting Your Events the Right Way*, the first part of a two-part series on event design.
It takes the same customer data, models it as one big event and as several small ones, and works out when each cut is the right call.
Read it here: https://patchlevel.dev/blog/cutting-your-events-the-right-way
#EventSourcing #DDD #PHP #SoftwareArchitecture #EventDriven #TechBlog
-
Back to bi-temporal events in part 12 of my event sourcing blog post series: https://www.planetgeek.ch/2026/07/07/event-sourcing-set-and-remove-based-bi-temporal-events/
This time, we look at set-and-remove-based bi-temporal events - the second variant of bi-temporal events in our system. You'll see why they are needed, and what additional problems this kind of event brings to the table.
-
Back to bi-temporal events in part 12 of my event sourcing blog post series: https://www.planetgeek.ch/2026/07/07/event-sourcing-set-and-remove-based-bi-temporal-events/
This time, we look at set-and-remove-based bi-temporal events - the second variant of bi-temporal events in our system. You'll see why they are needed, and what additional problems this kind of event brings to the table.
-
Version 3.20.0 of patchlevel/event-sourcing is out! You can now keep reading old messages whose header classes were removed, and the destructive CLI commands accept a `--force` flag so you can run them from scripts and pipelines.
I wrote a blog post about the release, feel free to check it out!
https://patchlevel.dev/blog/what-is-new-in-php-event-sourcing-3-20
-
We launched patchlevel.dev a couple of weeks ago! Our open source PHP event-sourcing ecosystem was scattered across
separate MkDocs sites, a blog on our consultancy site, and GitHub READMEs.Now everything lives in one place: the event-sourcing library, the Symfony and Laravel integrations, and all supporting
libraries side by side. Plus unified search across docs and blog, and docs that stay in sync with every release.Have a look: https://patchlevel.dev
-
We launched patchlevel.dev a couple of weeks ago! Our open source PHP event-sourcing ecosystem was scattered across
separate MkDocs sites, a blog on our consultancy site, and GitHub READMEs.Now everything lives in one place: the event-sourcing library, the Symfony and Laravel integrations, and all supporting
libraries side by side. Plus unified search across docs and blog, and docs that stay in sync with every release.Have a look: https://patchlevel.dev
-
This is coming up soon! Join me on Monday for my Ted Talk at OpenValue in Munich:
https://www.meetup.com/openvaluemuenchen/events/315218662And you can check out my event-sourced travel app at http://jittertravel.com/calendar
-
This is coming up soon! Join me on Monday for my Ted Talk at OpenValue in Munich:
https://www.meetup.com/openvaluemuenchen/events/315218662And you can check out my event-sourced travel app at http://jittertravel.com/calendar
-
My answer to a lot of questions I get about #EventSourcing seems to be “well, what do you do now?” And then I add, “with event-sourcing, it’s probably easier to fix/recover/adapt/etc.”
-
My answer to a lot of questions I get about #EventSourcing seems to be “well, what do you do now?” And then I add, “with event-sourcing, it’s probably easier to fix/recover/adapt/etc.”
-
We released 3.19.2 of event-sourcing! See here for the changelog: https://github.com/patchlevel/event-sourcing/releases/tag/3.19.2
#PHP #DDD #EventSourcing -
We released 3.19.2 of event-sourcing! See here for the changelog: https://github.com/patchlevel/event-sourcing/releases/tag/3.19.2
#PHP #DDD #EventSourcing -
In part 11 of my event sourcing series, I discuss consistency and why we don't use aggregates or dynamic consistency boundaries to solve it:
-
In part 11 of my event sourcing series, I discuss consistency and why we don't use aggregates or dynamic consistency boundaries to solve it:
-
A lot has happened since our last release post: eight minor releases for patchlevel/event-sourcing, from 3.12 to 3.19.
Instant retry command bus, subscription cleanup, auto initialized aggregates, PHP 8.5 and Symfony 8 support and much more.
Feel free to check it out!
-
Event sourcing is easy. Just store what happened to a thing as events, and when you need the thing's state, project the events. Unless it is not because there are misplaced or duplicated events in the event stream. In the tenth part of my event sourcing series, we'll look at why events can be misplaced and how to handle them.
https://www.planetgeek.ch/2026/06/16/event-sourcing-temporally-misplaced-or-duplicated-events/ -
Event sourcing is easy. Just store what happened to a thing as events, and when you need the thing's state, project the events. Unless it is not because there are misplaced or duplicated events in the event stream. In the tenth part of my event sourcing series, we'll look at why events can be misplaced and how to handle them.
https://www.planetgeek.ch/2026/06/16/event-sourcing-temporally-misplaced-or-duplicated-events/ -
Part nine in my event sourcing post series is about mixing bi-temporal and uni-temporal events in the same event stream. Why, how, and the trade-offs.
https://www.planetgeek.ch/2026/06/09/event-sourcing-non-bi-temporal-events-in-a-bi-temporal-stream/
-
Part nine in my event sourcing post series is about mixing bi-temporal and uni-temporal events in the same event stream. Why, how, and the trade-offs.
https://www.planetgeek.ch/2026/06/09/event-sourcing-non-bi-temporal-events-in-a-bi-temporal-stream/
-
If you're following my ongoing blog post series on event sourcing and have any questions, feel free to ask here or in the post comments.
The question does not have to be about event sourcing. I'm especially happy to answer questions about the F# samples. -
If you're following my ongoing blog post series on event sourcing and have any questions, feel free to ask here or in the post comments.
The question does not have to be about event sourcing. I'm especially happy to answer questions about the F# samples. -
Join me in Gembloux, Belgium on 9 June at the Belgian #Java User Group for my Ted Talk on #EventSourcing! Gonna squeeze a year of learnings into 45 minutes (we'll see how that goes).
Details here: https://www.meetup.com/belgian-java-user-group/events/314996280/
-
Join me in Gembloux, Belgium on 9 June at the Belgian #Java User Group for my Ted Talk on #EventSourcing! Gonna squeeze a year of learnings into 45 minutes (we'll see how that goes).
Details here: https://www.meetup.com/belgian-java-user-group/events/314996280/
-
We released 3.17.0 of event-sourcing-bundle! See here for the changelog: https://github.com/patchlevel/event-sourcing-bundle/releases/tag/3.17.0
#PHP #DDD #EventSourcing #Symfony -
In part eight of my event sourcing blog post series, it's time to look at bi-temporal event sourcing. At least we start with the very basics. Why we need it and how it works.
https://www.planetgeek.ch/2026/06/02/event-sourcing-the-not-so-simple-bi-temporal-basics/ -
In part eight of my event sourcing blog post series, it's time to look at bi-temporal event sourcing. At least we start with the very basics. Why we need it and how it works.
https://www.planetgeek.ch/2026/06/02/event-sourcing-the-not-so-simple-bi-temporal-basics/ -
New blog post: My Work in Progress Ruby stack ismaelcelis.com/posts/2026-0... #eventsourcing #cqrs
My WIP Ruby stack -
New blog post: My Work in Progress Ruby stack ismaelcelis.com/posts/2026-0... #eventsourcing #cqrs
My WIP Ruby stack -
Приручаем недетерминизм агентных систем
Агентные системы ломаются не на сложных задачах и не на плохих моделях. Главная причина — недетерминизм LLM: температура, апдейты моделей, дрейф мира. Как отлаживать то, что не воспроизводится? Как перезапустить упавший пайплайн не с нуля? Как вообще понять поведение системы, если каждый запуск чуть-чуть другой? Event Sourcing — паттерн, где состояние не снапшот, а иммутабельный лог событий. Недетерминизм он не убирает, но даёт инструменты для работы с ним.
-
Build your own or use an out-of-the-box event sourcing library. That's the question I tackle in part seven of my event sourcing series:
https://www.planetgeek.ch/2026/05/26/event-sourcing-why-we-built-our-own-library/I'll look back at our architectural decisions when we started over 10 years ago and how we likely would decide in today's landscape.
-
Build your own or use an out-of-the-box event sourcing library. That's the question I tackle in part seven of my event sourcing series:
https://www.planetgeek.ch/2026/05/26/event-sourcing-why-we-built-our-own-library/I'll look back at our architectural decisions when we started over 10 years ago and how we likely would decide in today's landscape.
-
Getting back into working on the online version of my TDD Game using #EventSourcing has been really enlightening. Especially that tests really need to follow the COMMAND generates EVENT, and set up the context with _only_ EVENTs.
-
Getting back into working on the online version of my TDD Game using #EventSourcing has been really enlightening. Especially that tests really need to follow the COMMAND generates EVENT, and set up the context with _only_ EVENTs.
-
In the sixth part of my blog post series on event sourcing, we'll take a look at event versioning and migration. I show 4 different approaches with their trade-offs. Today, a deep dive is included into zero downtime migration of event streams.
-
In the sixth part of my blog post series on event sourcing, we'll take a look at event versioning and migration. I show 4 different approaches with their trade-offs. Today, a deep dive is included into zero downtime migration of event streams.
-
I implemented the Event Sourcing and CQRS architectures in typescript here:
-
Excited to see how we can use #AI to develop a #Java App with #EventSourcing / #EventModeling! Thankfully @adymitruk will help me out and explain some ground rules 😅
Join us: https://youtube.com/live/9Tt33UZYA6M -
Excited to see how we can use #AI to develop a #Java App with #EventSourcing / #EventModeling! Thankfully @adymitruk will help me out and explain some ground rules 😅
Join us: https://youtube.com/live/9Tt33UZYA6M -
I have been iterating on Event Sourcing and CQRS architectures for nearly a decade. When I first started with this pattern around 2016 and 2017, the implementation was considerably more complex. Over the years I have stripped it back again and again, and what I have arrived at now is something I'm genuinely happy with: a small, focused TypeScript library backed by DynamoDB that does exactly what it needs to and nothing more: https://coderbyheart.com/es-and-cqrs-on-aws-simplified #eventsourcing #cqrs #aws
-
I have been iterating on Event Sourcing and CQRS architectures for nearly a decade. When I first started with this pattern around 2016 and 2017, the implementation was considerably more complex. Over the years I have stripped it back again and again, and what I have arrived at now is something I'm genuinely happy with: a small, focused TypeScript library backed by DynamoDB that does exactly what it needs to and nothing more: https://coderbyheart.com/es-and-cqrs-on-aws-simplified #eventsourcing #cqrs #aws
-
It is _fascinating_ to go back over a year ago and watch a recording of myself struggling with concepts (#EventSourcing in this case) that now seem (mostly) second nature. Live coding (and retaining the recordings) has been one of the best things I have ever done. It’s also funny how I’ve rediscovered concepts (decisions generate events) that only now am I incorporating into my Ted Talks.
-
RE: https://mastodon.social/@venkats/116568410481331830
I’m not only presenting two talks (one is a game, guess what it is), but also thrilled to do a workshop on my current passion: #EventSourcing and #DomainDrivenDesign #Java