The Mythical Man Month
- quote: “Good features and ideas that do not integrate with a system’s basic concepts are best left out.”
- quote p 53: “Add little to little and there will be a big pile.” Ovid
- quote p 55: “Architect knows he doesn’t know what he’s doing, so he does it carefully and with great restraint.”
- don’t over design the second system and we will get a “big pile” (see Ovid)
- p 63: benefits and lacks of using formal languages
- p 64: “Never go to see with two chronometers; take one or three.” old saying
- p 67: Causes of fruitless outcomes from meetings
- through lack of communication and organization the build of the Tower of Babel failed
- p 78: The purpose of organizations is to reduce the amount of communication and coordination necessary
- p 111: Conway’s law: “Organizations_ which design systems are constrained to produce systems which are copies of the communication structures of these organizations.*”
- p 115 “It is a common sense to take a method and try it. If it fails, admit it frankly and try another. But above all, try something.” Roosevelt
- p 116: first systems build are not good enough but you need them to know what can be done better next time
- p 117: Plan the System for Change => loose coupling
- p 121: More users will find more bugs
- p 122: prob of program maintenance is that fixing a defect has a substantial chance (20–50%) of introducing another
- p 122: Less and less effort is spent on fixing original design flaws; more and more is spent on fixing flaws introduced by earlier fixes. As time passes, the system becomes less and less well-ordered => each forward step is matched by a backward one
- p 123: Program maintenance is an entropy-increasing process => you can’t win the bug fight in the end
- p 127: A good workman is known by his tools
- p 141: “I can call spirits from the vast deep. Why so I can, or so can any man; but will they come when you do call for them?” Shakespeare, King Henry IV
- p 142: why programmers shouldn’t testing the specifications and checking them for completeness and clarity: “They won’t tell you they don’t understand it; they will happily invent their way through the gaps and obscurities.” Vyssotsky
- p 153: “None love the bearer of bad news.” Sophocles
- p 155: A baseball manager recognizes (hustle) great players and great teams, those characteristics are: they are running faster than necessary, moving sooner than necessary and trying harder then necessary
- p 163: “What we do not understand we do not posses.” Goethe
- p 183: all successful software gets changed => people try it on new edges behind the original domain
- p 199: single most software productivity strategy is to equip workers with their personal computers, good generalized writing, drawing and spreadsheet programs
- p 199: clients do not know what they want, they usually do not know what questions must be answered