08 December 2019
The Mythical Man-Month
The Mythical Man-Month
Essays on Software Engineering
Fred Brooks

Highlights

It is better to have a system omit certain anomalous features and improvements, but to reflect one set of design ideas, than to have one that contains many good but independent and uncoordinated ideas.
. . .
Simplicity and straightforwardness proceed from conceptual integrity. Every part must reflect the same philosophies and the same balancing of desiderata. Every part must even use the same techniques in syntax and analogous notions in semantics. Ease of use, then, dictates unity of design, conceptual integrity.
. . .
If a system is to have conceptual integrity, someone must control the concepts.
. . .
Indeed, an artist's aphorism asserts, "Form is liberating."
. . .
The opportunity to be creative and inventive in implementation is not significantly diminished by working within a given external specification, and the order of creativity may even be enhanced by that discipline.
. . .
"It is common sense to take a method and try it. If it fails, admit it frankly and try another. But above all try something." - FRANKLIN D. ROOSEVELT
. . .
There is no alternative but to start again, smarting but smarter, and build a redesigned version in which these problems are solved. The discard and redesign may be done in one lump, or it may be done piece-by-piece.
. . .
Program maintenance is an entropy-increasing process, and even its most skillful execution only delays the subsidence of the system into unfixable obsolescence.
. . .
Systems program building is an entropy-decreasing process, hence inherently metastable. Program maintenance is an entropy-increasing process, and even its most skillful execution only delays the subsidence of the system into unfixable obsolescence.
. . .
[S]ustained concentration reduces thinking time.
. . .
But the day-by-day slippage is harder to recognize, harder to prevent, harder to make up.
. . .
The boss must first distinguish between action information and status information. He must discipline himself not to act on problems his managers can solve, and never to act on problems when he is explicitly reviewing status,
. . .
People learn in sentence contexts, so we need to publish many examples of composed products, not just libraries of parts. People do not memorize anything but spelling. They learn syntax and semantics incrementally, in context, by use. People group word composition rules by syntactic classes, not by compatible subsets of objects.