Fred Brooks
1931–2022 · American computer scientist (1931–2022); author of The Mythical Man-Month and 'N
Topics: software design, engineering leadership, software engineering, programming
Einstein argued that there must be simplified explanations of nature, because God is not capricious or arbitrary. No such faith comforts the software engineer.
— Fred BrooksBrooks's Law: Adding manpower to a late software project makes it later.
— Fred BrooksShow me your flowcharts and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won’t usually need your flowcharts; they’ll be obvious.
— Fred BrooksThe essence of a software entity is a construct of interlocking concepts: […] I believe the hard part of building software to be the specification, design, and testing of this conceptual construct, not the labor of representing it and testing the fidelity of the representation.
— Fred BrooksHow does a project get to be a year late? … One day at a time.
— Fred BrooksThe bearing of a child takes nine months, no matter how many women are assigned.
— Fred BrooksSome people have called the book the "bible of software engineering". I would agree with that in one respect: that is, everybody quotes it, some people read it, and a few people go by it.
— Fred BrooksThe complexity of software is an essential property, not an accidental one. Hence, descriptions of a software entity that abstract away its complexity often abstracts away its essence.
— Fred BrooksThe management question, therefore, is not whether to build a pilot system and throw it away. You will do that. […] Hence plan to throw one away; you will, anyhow.
— Fred BrooksEven perfect program verification can only establish that a program meets its specification. […] Much of the essence of building a program is in fact the debugging of the specification.
— Fred BrooksThe programmer's primary weapon in the never-ending battle against slow system is to change the intramodular structure. Our first response should be to reorganize the modules' data structures.
— Fred BrooksJob Control Language is the worst programming language ever designed anywhere by anybody for any purpose.
— Fred BrooksStudy after study shows that the very best designers produce structures that are faster, smaller, simpler, clearer, and produced with less effort. The differences between the great and the average approach an order of magnitude.
— Fred Brooks