Today, I came across this tweet from Thomas Fuchs:
If civil engineering had the same standards as “software engineering”, the bridge you’re driving over every morning would have an uptime of 99.7%, with the rest of the time being collapsed twitter.com/facebook/statu…23:17 PM - 14 Mar 2019Facebook @facebookYesterday, as a result of a server configuration change, many people had trouble accessing our apps and services. We've now resolved the issues and our systems are recovering. We’re very sorry for the inconvenience and appreciate everyone’s patience.
So I started wondering about what makes software engineering different from civil engineering, and how we could make more reliable software. I replied with:
And then thomas came back with
- Are there things we can learn from civil engineering to make software more reliable?
- Are there inherent differences that make creating reliable software harder than creating reliable constructions?