SOFTWARE ROT
\sˈɒftwe͡ə ɹˈɒt], \sˈɒftweə ɹˈɒt], \s_ˈɒ_f_t_w_eə ɹ_ˈɒ_t]\
Sort: Oldest first
-
The tendency of software that has not been usedin a while to fail; such failure may be semi-humorouslyascribed to bit rot. More commonly, "software rot" strikeswhen a program's assumptions become out of date. If thedesign was insufficiently robust, this may cause it to failin mysterious ways.For example, owing to shortsightedness in the design of someCOBOL programs, many would have succumbed to software rot whentheir 2-digit year counters wrapped around at the beginning ofthe year 2000. A related incident made the news in 1990, whena gentleman born in 1889 applied for a driver's licencerenewal in Raleigh, North Carolina. The system refused toissue the card, probably because with 2-digit years the ages101 and 1 cannot be distinguished.Historical note: Software rot in an even funnier sense thanthe mythical one was a real problem on early researchcomputers (e.g. the R1; see grind crank). If a programthat depended on a peculiar instruction hadn't been run inquite a while, the user might discover that the opcodes nolonger did the same things they once did. ("Hey, so-and-soneeds an instruction to do such-and-such. We can snarf thisopcode, right? No one uses it.")Another classic example of this sprang from the time an MIThacker found a simple way to double the speed of theunconditional jump instruction on a PDP-6, so he patched thehardware. Unfortunately, this broke some fragile timingsoftware in a music-playing program, throwing its output outof tune. This was fixed by adding a defensive initialisationroutine to compare the speed of a timing loop with thereal-time clock; in other words, it figured out how fast thePDP-6 was that day, and corrected appropriately.
By Denis Howe
Word of the day
SQ10,643
- A serotonin antagonist with limited antihistaminic, anticholinergic, and immunosuppressive activity.