A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
Chapter 12, Mostly Harmless, HHGTTG
A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
Chapter 12, Mostly Harmless, HHGTTG
Great quote from Rick Cook.
Early on, i wrote code that meticulously caught every possible error. Then i learned that no matter how good you are, you make mistakes. So you test. But since error conditions are often difficult to test, some errors would slip through – in the error handling. In one piece of code (in C), the code masked off the low 3 bits of an integer, and used a switch for all eight cases. But C has a “default” clause. Now, there’s no way the value could be outside the range 0-7. And for some reason, i added a default. What to do? It’s an error. The program was long running, and after a few months, an error was in the log. Apparently, computers make mistakes. All i’ve tested. I’ve not yet gotten a chance to run such code on a fault tolerant computer. I suspect that there’s no fool-proof hardware.