Any Rails Event Store companies here in New York City?

996 views
Skip to first unread message

Gregory Everitt

unread,
Jul 21, 2019, 8:02:24 AM7/21/19
to Ruby on Rails: Talk
Hello everyone,

I'm working on a project which uses the Rails Event Store gem (RES), and I was wondering if anyone else in New York City has experience working with this. I'm using it to build an e-commerce site following Greg Young's Command Query Responsibility Segregation architecture (RES).

I'm curious is anyone else is using the RES gem or has used CQRS in a production project and would be interested in exchanging tips and discussing best practices.

Thank you,
Gregory R. Everitt
Software Engineer

San Ji

unread,
Aug 11, 2019, 12:51:27 PM8/11/19
to Ruby on Rails: Talk
I used that gem in the past, but I am not in New York City.

Just a little of caveat, you are pretty much locked in.
A lot of features of the gem deliberately designed to lock you in.

Take the event linking features for an example. Under the hood, the gem exploits relations of the relational database.
Once you use that feature you are pretty much locked in with a relational database, the choice to scale via sharding is gone too.
(You can shard a relational database, only if you can make a clean cut of relationships, not leaving a single relationship cross a shard boundary. You are forfeiting this choice once you start using "link_to_stream")
And no other tool would work with the data you have because no one else would implement it that way.

Instead of linking the event to the new stream you can simply build a table from multiple streams of events.
And it will work the same way, only this does not lock you in with the gem and leaving the choice open.

Last but not least CQRS can be done without event-sourcing if you use the gem you are forfeit the choice for not storing an event.
There is more than one way to implement the CQRS, and the way suggested by this gem is not a good one IMHO.

But we are Ruby as a community, just because I don't agree with someone doesn't mean it is totally bad.
I just dissatisfied with the choice I made, to use the gem in the past.
And I will simply go my way. (That's how it works.)
Reply all
Reply to author
Forward
0 new messages