How to modularize a system and avoid 'Siamese twins'

How to modularize a system and avoid 'Siamese twins'

Siamese twin modules force a change in one place to ripple into another. How domain leakage and state-transfer events create a distributed monolith, and how contextual modularization with the right communication patterns cuts the connection, without cargo cult.

Event Sourcing in practice: Lessons from the trenches

Event Sourcing in practice: Lessons from the trenches

Event Sourcing can be introduced to legacy systems incrementally, no big rewrite required. Lessons from production: the migration event technique, upcasting old events, right-sizing aggregates, stream lifecycles, and payoffs in audits, analytics, and debugging.