← Graph

Event-Driven Rails Discussion Panel

talk 28 connections

Panel at wroclove.rb 2023 framed as 'something between a discussion and a confrontation'. Moderator Andrzej Krzywda with panelists Scott Bellware and Nathan Ladd (behind Eventide / MessageDB) and Paweł Pacana (rails_event_store / Arkency). Opens with a show of hands — only a minority of the audience uses event sourcing. Topics: Scott's critique of DDD as a celebrity-geek cult that subjugates developers with over-elaborate patterns and hijacks pre-existing vocabulary (e.g. 'aggregate' vs the earlier 'partition', 'fixture' hijacked by Rails); whether Arkency and Eventide would write similar code given the same requirements (probably yes, modulo labeling); why aggregates should not emit events (mistaken turn of a non-code design concept into a code pattern); the immediate benefit of event-driven architecture is productivity via loose coupling and cohesion at the 'subatomic' level, and event sourcing is merely a side effect of pub/sub; Scott/Nathan's Brightworks team runs ~400 repos for 15 developers on the Neuron venture-capital product; Rails is used as a web server that they leave as fast as possible by recording commands on a message queue; test setup code as the true quality signal (tests needing inventory data to test pricing reveals hidden Active Record coupling, which factory_bot conceals); microservices as a misunderstood term — the 'micro' originally meant 'no IBM/Microsoft/Oracle', not 'HTTP everywhere'; web services / CORBA / SOAP were all the same failure mode reinvented; the preferred term is 'autonomous components' and both teams actually use one shared database with multiple schemas; ORMs are the 'worm with no separation between organs'; closing agreement that the real battle is Rails Way vs Design Way and that Eventide should not be crammed into legacy apps.

date
2023-03-31
type
panel
talk Event-Driven Rails Discussion Panel
about
Extensive opening debate on whether DDD is worth using or is a celebrity-geek cult.
talk Event-Driven Rails Discussion Panel
about
Event Sourcing concept
Both camps self-identify as event-sourcing practitioners and debate its framing.
talk Event-Driven Rails Discussion Panel
about
Central topic: event-driven architecture as the productivity win, of which event sourcing is a side effect.
talk Event-Driven Rails Discussion Panel
about
Scott argues pub/sub is the primary pattern and event sourcing is a derivative.
talk Event-Driven Rails Discussion Panel
about
Aggregate Root concept
Discussion of why aggregates should not be a code pattern that emits events.
talk Event-Driven Rails Discussion Panel
about
Coupling concept
Scott's central design claim is about coupling/cohesion at the subatomic level.
talk Event-Driven Rails Discussion Panel
about
Active Record concept
Critique of callbacks and ORM-hidden coupling revealed by test setup code.
talk Event-Driven Rails Discussion Panel
about
Eventide documentation will be updated to prefer 'autonomous components' over 'microservices'.
talk Event-Driven Rails Discussion Panel
about
Scott's core critique of DDD, React, Tailwind, DevOps, Rails etc.
talk Event-Driven Rails Discussion Panel
about
Scott frames software design as obedience to universal structural laws.
talk Event-Driven Rails Discussion Panel
about
ROM tool
Panel agrees ROM suffers the same 'entangled worm' problem as Active Record when used for business logic.
talk Event-Driven Rails Discussion Panel
about
Scott ties event-driven architecture to TDD via testability/transparency and setup-code quality signal.
talk Event-Driven Rails Discussion Panel
about
Arkency's rails_event_store is one of the two tools represented on the panel.
talk Event-Driven Rails Discussion Panel
about
Eventide project
Eventide is one of the two tools represented on the panel.
talk Event-Driven Rails Discussion Panel
about
Paweł references the e-commerce reference application Arkency uses to teach DDD/CQRS/event sourcing in Rails.
asked_at
Event-Driven Rails Discussion Panel talk
Audience Q&A question during the panel.
authored
Event-Driven Rails Discussion Panel talk
Panelist representing Eventide.
role: panelist
person Nathan Ladd
authored
Event-Driven Rails Discussion Panel talk
Panelist representing Eventide; also gave the Test Bench talk earlier the same day.
role: panelist
person Paweł Pacana
authored
Event-Driven Rails Discussion Panel talk
Panelist representing rails_event_store and Arkency.
role: panelist
authored
Event-Driven Rails Discussion Panel talk
Arkency moderator who introduced the panel and steered the questions.
role: moderator
from_talk
Event-Driven Rails Discussion Panel talk
Scott and Nathan's position repeated from their 2018 Explore DDD talk and expanded on the panel.
from_talk
Event-Driven Rails Discussion Panel talk
Core claim from Scott during the event-driven architecture answer.
from_talk
Event-Driven Rails Discussion Panel talk
Scott's heuristic explained during the callbacks/testing discussion.
from_talk
Event-Driven Rails Discussion Panel talk
Scott's historical reframing during the microservice clarification.
from_talk
Event-Driven Rails Discussion Panel talk
Nathan's explicit warning during the closing exchange.
from_talk
Event-Driven Rails Discussion Panel talk
Scott's closing framing of the panel's deeper disagreement.
from_talk
Event-Driven Rails Discussion Panel talk
Joint position both camps reached at the end of the panel.
talk Event-Driven Rails Discussion Panel
presented_at
Panel held at wroclove.rb 2023 on 2023-03-31.

Provenance

Read by
3 extractions