March 2001
Intermediate to advanced
288 pages
4h 56m
English
Unfortunately for the programming world (and programmers), software development continues after a project is declared finished (an increasingly arbitrary—and often inaccurate—label). Maintenance and debugging may consume more time than the original coding, particularly because the person responsible for a program's maintenance may not be one of the original programmers. This means we spend a lot of our time trying to deduce the specifics of some algorithm we find in the code: how it was done, why it was done, and why it doesn't work any more.[1]
[1] A seminal work in this respect is The Mythical Man-Month, by Fred Brooks (Addison-Wesley, 1995).
The odds of creating a bug-free program are rather long. Anything larger than the ubiquitous ...