As a software developer I find my clients and non programming friends quite interesting. They will expect the systems my kind and I make to be fool proof needless to say even intuitive and compensate for their shortcomings. So I stumbled upon this article by John D. Cook explaining why errors are inevitably common in software products. I couldn’t concur more.
Everyone would say that it’s important for their software to be correct. But in practice, correctness isn’t always the highest priority, nor should it be necessarily. As the probability of error approaches zero, the cost of development approaches infinity. You have to decide what probability of error is acceptable given the consequences of the errors.
It’s more important that the software embedded in a pacemaker be correct than the software that serves up this blog. My blog fails occasionally, but I wouldn’t spend $10,000 to cut the error rate in half. Someone writing pacemaker software would jump at the chance to reduce the probability of error so much for so little money.