Thursday, September 15, 2011

BUG

Glitch, bug, deviation, defect, error, are all synonyms of failure. A glitch in function or a bug in working, causes deviation from expected behavior, resulting in defects in output, and an error in decision making, that causes failure to accomplish the task. These are are all products of human mistakes, which are inseparable from humanity. As long as they are humans performing, we cannot eradicate errors. Not being perfect is one thing, but not striding towards perfection, yet another. Not making those little progresses, completely inexcusable.

See any field or activity of human life, though humans always err, mistakes was never made the norm. Mistakes are not to be tolerated, and not just corrections but preventive measures were built in to counter them. These are ingrained into our lives right from the childhood. A doctor leaving his forceps in a patient's stomach is made to dearly pay for it. If a building collapses, the builder is sent to jail. If you supply faulty material, you completely compensate. These are ways human society has ingrained into us to disincentivize carelessness and build reliability.

Everyone was accountable for their deliberate actions, as well as held responsible for their preventable errors, with few notable exceptions. In olden days, only the kings had such exemption. In modern days, they are a full breed, called software engineers. Whatever they do, they can get away with it, in the name of intrinsic fallibility of human nature. If such errors were to be tolerated, would a driver be let go for blinking for only few seconds on the highway. Or, such leeway made available to manufacturers of faulty clothes that fall apart on day one. Or a pilot be excused for reporting late and delaying air traffic while he was having a nap. This is not even a lethal mistake, but only a monetary one. If they are all made to pay for their mistakes, software engineers are let free. Tolerance to a bug, is the first step in enduring and encouraging mistakes, and the foundation for rampant unreliability.