“Legacy code. The phrase strikes disgust in the hearts of programmers. It conjures images of slogging through a murky swamp of tangled undergrowth with leaches beneath and stinging flies above. It conjures odors of murk, slime, stagnancy, and offal. Although our first joy of programming may have been intense, the misery of dealing with legacy code is often sufficient to extinguish that flame.”
“Debugging: what an odd word. As if "bugging" were the job of putting in bugs, and debugging the task of removing them. But no. The job of putting in bugs is called programming. A programmer writes some code and inevitably makes the mistakes that result in the malfunctions called bugs. Then, for some period of time, normally longer than the time it takes to design and write the code in the first place, the programmer tries to remove the mistakes.”
“We are on strike against martyrdom—and against the moral code that demands it. We are on strike against those who believe that one man must exist for the sake of another. We are on strike against the morality of cannibals, be it practiced in body or in spirit. We will not deal with men on any terms but ours—and our terms are a moral code which holds that man is an end in himself and not the means to any end of others.”
“Real programmers can write assembly code in any language.”
“He lost himself in the words and images conjured in his mind and for a while forgot ... He found himself flying among stars and planets ...”
“Programmers are always surrounded by complexity; we cannot avoid it. Our applications are complex because we are ambitious to use our computers in ever more sophisticated ways. Programming is complex because of the large number of conflicting objectives for each of our programming projects. If our basic tool, the language in which we design and code our programs, is also complicated, the language itself becomes part of the problem rather than part of its solution.”