For the last few years, PHP community has been buzzing about ES/CQRS, pretty much there was a talk on every conference. Now it's time to see how it worked out for me in practice.

ES/CQRS is a different approach to building applications from what we all have been thought to do for years. I'm not going to introduce Event Sourcing and Command Query Responsibility Segregation (ES & CQRS) but speak about my experiences in developing & running it on production.

I have implemented it on few projects: in some I run it as a part of bigger application, while in some it's just the core and one where everything is event driven. The shift in architecture and mindset is pretty big: while code structures and logic became simple, amount of code and workflows get complicated to the point of 'where did I loose this input?'.

Not to go into too many details, I've had to learn lot of DDD practices that I feel have made me a better developer and use some of the knowledge gathered in this projects into 'everyday' code of projects that I work on.

Comments

Comments are closed.

Really really good talk. Speaker is very well heard and very interesting to listen to it.

Always a pleasure to hear Miro talking. Not easy topic at all. I would prefer a little bit of a code on this one.

Good speaker and interesting topic. Would like more talks on the subject!

Anonymous at 10:47 on 28 May 2017

Srdjan Vranac at 11:42 on 28 May 2017

The topic is interesting, there is a lot of ground to cover, so this is all good.
I think there was not enough emphasis on the situations when you have a high number of events and the problems and approaches when you need to replay them to get to current state, yes snapshots have been mentioned, but I believe there should be more to say on that.

As for the delivery, Miro has a lot of mileage there, and it is nice to see the evolution of his speaking skill, but for some reason he was just a bit of his game. Still this was a great talk and you should really go see it

James Titcumb at 13:08 on 28 May 2017

Really great talk. Nothing to comment/improve on I'm afraid, because it was really good. Thanks Miro!

Very interesting topic and the speaker knows how to keep attention. I was missing two-minute introduction into SCRS like we could hear on another DDD talk next day.

The story could be more rounded up, without jumping from one topic to another, I had a feeling that flow is missing. Anyhow great topic, a lot of things to learn and hear from a real practitioner. I liked this talk and kudos for the speaker.

Dusan Lukic at 17:59 on 29 May 2017

One of the best talks on the conference, very informative and well delivered.

Great sequel to intro Miro made on meetup month ago. Really liked the talk

Miro Svrtan (Speaker) at 20:50 on 30 May 2017

Thank you all for such flattering feedback!

@Vranac: This is a talk from my experience and not an overview of all possible cases. I didn't encounter a 'million event per aggregate ' problem so I could not have talked about that. And yes, I would really like to hear from someone who had that issue how they solved it (altough it still feels like a design flaw)

@Ivan Djurdjevac: Yeah, I'm not happy on the flow as well but it is hard to connect so many different things but will for sure look into how to make the transitions less 'jumpy'.

This was a great story. I really enjoyed the humor and storytelling style. I really agreed with Miro that stressing a firm understanding of testing was going to be required before going down the path. Only (minor) improvements I can think of were: It was slightly confusing switching back and forth between the TicketSwap and personal projects; The value object explanation could be improved, left out, or use some slides; Explaining the difference between an event listeners and process/saga. Great job!

Interesting talk but not so useful.