Falsehoods Software Developers Believe About Writing Articles:<p>1. Using a cliched headline style adds authority to your article.<p>In all seriousness, this article is just a list of unsupported assertions. I agree with many of them because of my own experience. But those with which I disagree, there is nothing to convince me. A much more useful article would explain nuance, risks, consequences, handling strategies.<p>For example, "Events will arrive in order". What causes that not to happen? Does the number of events, technology used affect it? What are the consequences of believing they will arrive in order, and then discovering they don't? What are the tradeoffs in designing the system to make it happen less frequently vs tolerating them arriving in any order?
Isn't message ordering a fundamental property / guarantee of the underlying messaging system protocol?<p><a href="https://en.wikipedia.org/wiki/Atomic_broadcast" rel="nofollow">https://en.wikipedia.org/wiki/Atomic_broadcast</a><p>Chalk me up to believing a falsehood, what's the failure case where such a protocol breaks down? Is this a "More than 50% of nodes in byzantine fault failure mode" situation, or a realistic scenario?