FOOT
NOTES
NOTES
by Karl E. Wiegers
In every intellectual endeavor, certain individuals become widely recognized as gurus. These insightful chaps (and chapettes) offer unique perspectives on our thinking, making observations the rest of us immediately recognize as profound but would never have expressed on our own.
The computer industry is blessed with its share of such wise persons (I hope you think some of them write for ANALOG). In my readings of both the popular and the professional computer literature, I've come across a number of their statements that struck me as noteworthy, either for their pithiness or their humor. Some of them are most entertaining when presented out of context, and perhaps with a dash of selective editorial removal of intervening irrelevancies.
Below, I present some of the more interesting quotations I've encountered. I've added a few clarifying words in brackets where necessary. The works from which these quotes are drawn represent a broad crosssection of computer publications. I particularly recommend the books by Levy, Brooks and Peters. I've classified these tidbits of wisdom into two categories: software engineering and philosophy. Perhaps there's really no difference between the two.
Software
Engineering
"Management is suspicious of all time spent prior to
writing hard code. It is management's long-standing view that the
project team really uses all the precoding phases to rest up before
getting into the real work of building the system." (Tom DeMarco, Structured Analysis and System
Specification, p. 33.)"Now, after months of delay, some due to an unexpectedly long debugging period (there has never been an unexpectedly short debugging period in the history of computers) ... the program was complete." (Steven Levy, Hackers, p. 382.)
"A dispassionate observer, a hypothetical person from Mars, might view programming as an activity dominated by testing, with occasional lapses into design and documentation." (Boris Beizer, Software System Testing and Quality Assurance, p. 1.)
"Programmers regard themselves as artists. As such, they consider keeping accurate records of their handiwork on a par with washing ashtrays:' (Otis Port, Business Week, May 9, 1988, p. 144.)
"The second [information realm] is the realm of ideas and information existing in the minds of men and programmers." (James Martin, ComputerData-Base Organization, 2nd Ed., p. 50.)
"Because of their exaggerated claims, some of the fourth-generation languages qualify as the ultimate technical laetrile:" (Tom DeMarco and Timothy Lister, Computerworld Extra, June 20, 1988, p. 45.)
"Reuseless code is software that is not worth reengineering for a new application .... Sometimes, programmers should let old code die a natural death rather than spend any effort trying to revive it." (Will Tracz, Computer, December 1988, p. 75.)
"Structured programming has been credited with everything from reductions in dental caries to improvements in one's sex life." (Author unknown.)
"When a feature of any software works as advertised, regard it as a fortunate fortuity." (Larry Hiner, Computer Technology Review, May 1988, p. 20.)
"The next two Gemini flights would be afflicted by the same short landings.... Gemini V landed 130 kilometers short after a computer programmer neglected to program a trivial point. He programmed the earth's rotation rate at 360 degrees per day, whereas the actual figure is 360.98." (Dennis Chamberland, U. S. Naval Institute Proceedings, January 1989, p. 40.)
Philosophy
"Is there something unique about the programming
profession that attracts people who are mistake-prone by nature?... the
only possible solution is the careful genetic breeding of today's best
programmers." (Glenford J. Myers, Software
Reliability, p. 15.)"The computer, like a human employee, is subject to the Peter Principle. If it does good work at first, there is a strong tendency to promote it to more responsible tasks, until it reaches its level of incompetence." (Dr. L. J. Peters and R. Hull, The Peter Principle, p. 146.)
"I don't do crack. I don't do heroin. And I don't do desktop publishing." (Stephen Manes, PC Magazine, November 29, 1988, p. 85.)
"Long before anyone ever heard the acronym CASE [computer-aided software engineering], back in the computing Golden Age, building software systems was easy. Users petitioned the MIS [Management Information Systems] department with requests for new applications, and after an [appropriate time] MIS would pass their interpretation of the request back in the form of a finished system. For some on both sides, this was a religious experience." (Damian Rinaldi, Software Magazine, April 1988, p. 51.)
"Changing to any new program is, at best, a disruptive, time-consuming and inconvenient process. At worst, it's like getting a mouthful of root canal jobs in one afternoon:" (Jim Seymour, PC Magazine, April 12, 1988, p. 78. )
"Why is programming fun? What delights may its practitioner expect as his reward? First is the sheer joy of making things.... Second is the pleasure of making things that are useful to other people.... Third is the fascination of fashioning complex puzzle-like objects of interlocking moving parts and watching them work in subtle cycles, playing out the consequences of principles built in from the beginning .... Fourth is the joy of always learning, which springs from the nonrepeating nature of the task.... Finally, there is the delight of working in such a tractable medium.... Programming, then, is fun because it gratifies creative longings built deep within us and delights sensibilities we have in common with all men." (Frederick P. Brooks Jr., The Mythical Man-Month, p. 7.)
"I couldn't have said it better myself." (Karl Wiegers, January 24, 1989.)
ANALOG invites all authors to submit essays for possible use in the Footnotes column. Submissions should be no longer than 1,500 words, and may be on any aspect of Atari computing. Any, style or type of essay is acceptable-opinion, humor, personal experience-but creativity is a plus. Submissions should be sent to: Footnotes, c% ANALOG, P.O. Box 1413-M.O., Manchester, CT 06040-1413.