Fred Brooks

Fred Brooks
Frederick Phillips Brooks, Jr.is an American computer architect, software engineer, and computer scientist, best known for managing the development of IBM's System/360 family of computers and the OS/360 software support package, then later writing candidly about the process in his seminal book The Mythical Man-Month. Brooks has received many awards, including the National Medal of Technology in 1985 and the Turing Award in 1999...
NationalityAmerican
ProfessionScientist
Date of Birth19 April 1931
CountryUnited States of America
Study 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.
There is no single development, in either technology or management technique, which by itself promises even one order-of-magnitude improvement within a decade in productivity, in reliability, in simplicity.
Well over half of the time you spend working on a project (on the order of 70 percent) is spent thinking, and no tool, no matter how advanced, can think for you. Consequently, even if a tool did everything except the thinking for you - if it wrote 100 percent of the code, wrote 100 percent of the documentation, did 100 percent of the testing, burned the CD-ROMs, put them in boxes, and mailed them to your customers - the best you could hope for would be a 30 percent improvement in productivity. In order to do better than that, you have to change the way you think.
A scientist builds in order to learn; an engineer learns in order to build.
How does a project get to be a year late? One day at a time.
Job Control Language is the worst programming language ever designed anywhere by anybody for any purpose.
Adjusting to the requirement for perfection is, I think, the most difficult part of learning to program.
Product procedure...must securely protect the crown jewels, but, equally important, it must eschew building high fences around the garbage cans.
Consensus processes starve innovative design by eating the resource.
Predictability and great design are not friends.
Men and months are interchangeable commodities only when a task can be partitioned among many workers with no communication among them.
But I will argue that knowing complete product requirements up front is a quite rare exception, not the norm.
I have never seen an experienced programmer who routinely made detailed flow charts before beginning to write programs.
More software projects have gone awry for lack of calendar time than for all other causes combined.