Assuming the network is reliable, fast, secure and free is a recurring cause of distributed-system failure.
Deutsch's list of eight is a durable checklist of the assumptions that repeatedly cause distributed-system failures: reliability, latency, bandwidth, security, topology, administration, transport cost and heterogeneity.
In practice
- A prototype that works flawlessly on the developer's machine falls over in the field, where the connection drops for four seconds every hour.
- A payments integration tested against a fast, reliable sandbox fails in production against a bank whose API is neither.
- Further reading
- Wikipedia
- Subject
- Technology & Software
- Essay
- The programmers' folklore, and technology's place in society