You know that XKCD strip that pits programmers against bridge builders and aviation engineers?
Do you know why the latter two categories can be reasonably confident in the relative safety of what they make?
Because they're highly trained people who follow procedures, don't skimp on safety features, and when disaster strikes? They learn their lesson!
We programmers keep backups, do some testing... and that's pretty much it. We hate redundancy, fallbacks or procedures. Heck, we hate learning our craft. Then we have the guts to act surprised when the houses of cards we build fall over and suddenly nothing works because we were unprepared again. Just like the previous nine times.
Pro tip: never eliminate cash, analog radio or manual overrides.