Impotence(sic) of Bug Testing
Good article on the ethics of fault finding. But the commercial realities don't match. Buggy programs do not lead to commercial failure. The current pace of change means that (buggy) version 2 is replaced by (buggy) version 3 (with a much bally-hooed 2 extra bells and a whistle) before people can get too frustrated with version 2's many failures.
To add insult to injury, any commercially successful firm then has a Helpline where they charge the customer for reporting bugs, with no guarantee of a fix - which if it occurs will be in the next version, available RSN at a modest cost. Add a few (hundred) patches available through the net, and all responsibility can be evaded, as no two systems are likely to have the same configuration.
As an aside, safety-critical systems such as airliner avionics require quite sophisticated testing techniques. This is often because they are extremely fault-tolerant, so much so that there may be many, many bugs which are asymptomatic - only subtle tests and instrumentation of the code will show a markedly reduced efficiency as the back-up to the back-up to the back-up gets triggered. Related to this problem are the many parts of the system which cannot easily be tested: they are for contingencies that both may never occur in a system's lifetime, nor are easily simulated. For example how DO you test whether a Nuclear power plant will survive a magnitude 7 earthquake?