"Event Driven Services
1. Receive and React (or not) to facts
2. Publish new facts (immutable events)
3. Invert the control flow"
How is this different from "objects receive (or ignore) messages, send new messages, invert the control flow"?
Except of course for the new and shiny.
"Mutable State Needs to be Contained (within the service)"
-> (mutable) state is contained within objects
"Use the Event Stream as the Consensus Fabric"
-> TeaTime, David Reed's Multi Version Concurrency Control
etc.
Have we really not understood OO at all so that we have to reinvent it all the time? Or maybe this should be seen as a validation of those principles, because we keep coming back to them even when we don't know it.