2 ms·
The phrase that should strike fear into the heart of any engineer who has to work at scale (any kind of scale, not just software): "Correlated failures". A soft
by jerf 7y ago
The phrase that should strike fear into the heart of any engineer who has to work at scale (any kind of scale, not just software): "Correlated failures". A software bug that affects only one of them. The political possibility mentioned elsewhere. Some computer virus never "intended" for a satellite manages to get into one of them for some reason, most likely a very bizarre one that nobody would have ever guessed could happen but still somehow did. Some hardware component that turns out to fail all at the same time (more or less), used by all of a particular constellation. Or most likely of all, something I can't even think of to put here as an example, but still it somehow turns out that a particular failure ends up having as a side effect greatly increasing the chance of failures in the rest of the system despite all the efforts to prevent that. (The "ones we can't even think of" end up with elevated probabilities precisely because we don't think to prevent them and thus put no engineering into preventing them.)
All of these outcomes are low probability, sure, but they are all vastly higher probability than sufficient simultaneous independent failures to take down the system. It's why despite all the incredible software engineering that goes into Google and AWS, they still go down sometimes. Almost no conceivable set of independent events can take those things down, but correlated failures still can, do, and will continue to do so.