- Paperback: 448 pages
- Publisher: Addison-Wesley Professional; 1 edition (April 1, 2010)
- Language: English
- ISBN-10: 0201362988
- ISBN-13: 978-0201362985
- Product Dimensions: 6.1 x 1.1 x 9.2 inches
- Shipping Weight: 1.4 pounds (View shipping rates and policies)
- Average Customer Review: 36 customer reviews
- Amazon Best Sellers Rank: #171,042 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
The Design of Design: Essays from a Computer Scientist 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
Fulfillment by Amazon (FBA) is a service we offer sellers that lets them store their products in Amazon's fulfillment centers, and we directly pack, ship, and provide customer service for these products. Something we hope you'll especially enjoy: FBA items qualify for FREE Shipping and Amazon Prime.
If you're a seller, Fulfillment by Amazon can help you increase your sales. We invite you to learn more about Fulfillment by Amazon .
See the Best Books of 2018 So Far
Looking for something great to read? Browse our editors' picks for the best books of the year so far in fiction, nonfiction, mysteries, children's books, and much more.
From the Back Cover
Making Sense of Design Effective design is at the heart of everything from software development to engineering to architecture. But what do we really know about the design process? What leads to effective, elegant designs? The Design of Design addresses these questions. These new essays by Fred Brooks contain extraordinary insights for designers in every discipline. Brooks pinpoints constants inherent in all design projects and uncovers processes and patterns likely to lead to excellence. Drawing on conversations with dozens of exceptional designers, as well as his own experiences in several design domains, Brooks observes that bold design decisions lead to better outcomes. The author tracks the evolution of the design process, treats collaborative and distributed design, and illuminates what makes a truly great designer. He examines the nuts and bolts of design processes, including budget constraints of many kinds, aesthetics, design empiricism, and tools, and grounds this discussion in his own real-world examples-case studies ranging from home construction to IBM's Operating System/360. Throughout, Brooks reveals keys to success that every designer, design project manager, and design researcher should know.
About the Author
Frederick P. Brooks, Jr., is Kenan Professor of Computer Science at the University of North Carolina at Chapel Hill. He is the recipient of the National Medal of Technology, for his work on IBM’s Operating System/360, and the A. M. Turing Award, for his “landmark contributions to computer architecture, operating systems, and software engineering.” He is the author of the best-selling book The Mythical Man-Month, Anniversary Edition (Addison-Wesley, 1995).
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
So, despite some disappointment with his computer architecture book, I had the highest hopes. I now see that they might have been unrealistically high. The entire notion of "design" is so broad that any global statement about it becomes vacuous. He does state some undeniable truths: that design can be taught and learned, and that typical computer science (CS) curricula do little in that regard. (Art students look at great art. Writing students look at great writing. CS students rarely see code other than their own homework.) He also emphasizes the undeniable value of internship as part of a formal education, drawing not only on historical and contemporary apprenticeships, but on medical interns, engineering programs that incorporate work experience, and the traditions of post-bachelors acedemia. Although he didn't mention "lab rotations," those serve much the same purpose. And, as one might expect of an engineer, academic, and self-described scientist, Brooks spends a lot of time on data-gathering and analysis as a means of personal growth - a discipline that can have great value if taught well, and that seems impossible to teach well.
But, for all its good, I would have trouble building a curriculum or career around what I read here. It exposes the diffuseness of "design" by drawing on a computer operating system, a beach house, and a textbook as examples. Individually, they're good examples (even if the beach house example borders on the smug). But, as a set, the differences become so great that the threads common among the three become tenuous - much of the substance those threads originally had was lost in whittling each down to something that could be compared to the others.
So, although I had high hopes for this text, it never solidified into a solid body of knowledge for me. As essays, each chapter worked well individually. The seemed only individuals to me, though, milling around each other, sharing a common book cover and table of contents, but little else. Clear messages and transferrable knowledge suffered, not just because too many apples compared themselves to too many oranges, but because the book seemed like a squadron of essays flying in close formation rather than a single, unified whole.
In the first few chapters the book stresses the point that design is iterative process, that it is not possible to get the design right from the very beginning. Then he mentions several cases of how the design of complex system was done in a wrong way. For example, designing a military chopper without consulting with pilots. Therefore, even during early design stage it is important that users be taken into consideration. And this is indeed why open-source systems are so successful - because they are driven by users of the product.
Brooks mentions that previously the designers were actually the users of the product: think of Wright brothers, Ford who rode on the car that he designed, etc. But as the time goes by this happens to change: do you think that space rocket designers are same people as astronauts? Obviously no. And this is going to happen to the software as well, Brooks claims.
As the library of software components gets bigger and bigger, the process of building software becomes more like that in assembly factory: take piece labeled S1 and S2, connect them together, wrap them into S3, etc. In such a scenario the designer might not even know how to program, and this is the good part. The drawback is that such software can have bad design.
In further chapters of the book Brooks delves into philosophy - empiricism and rationalism. He mentions that abstract math was generated by French philosophers who were mostly into rationalism, whereas applied science was created by Brits who are into empiricism. Brooks claims that software engineering is totally empirical, that is, requires constant verification, and so is the design of software.
Then Brooks sheds light on what are the characteristics of a good design, in his opinion. The major design principles are: orthogonality, propriety, and generality. But those are just general principles. When you design something, you have to make thousands of micro-decisions and the way you make them is called style. How to achieve good style? Brooks mentions the importance of copying other people's styles. Even great composers such as J. S. Bach spent considerable amount of time studying other people's works.
So, design is a complicated iterative process. As always, documentation plays a very important role. So how can one document the design trajectories? For that tools are needed. Brooks cites a few tools available online, but I cannot say they are mainstream. On the other hand, he fails to mention Mind Maps, a recent tool which is hugely popular among engineers.
To summarize, this book is a message from a successful engineer of previous generation of computer programmers. Can the youngsters learn something from this book? Definitely yes. On the other hand, the book will not fix the problems in existing products, but it can help prevent further mistakes.
Not to say there aren't people thinking of these and contributing to the growing academic field of game design. But many of the best video game development practices remain intuitive and undocumented. It is exciting at least, to see how much room for growth there is to grow in such areas. The distilled wisdom of the author's experience in computer hardware and software design, as well as the historical perspective provided in this book have proved invaluable for me. This book has really expanded my big-picture view of the "design" profession as more than just the sum of its parts.
The first chapters provide an illuminating and concise look at the meta-field of design (with a focus on computer hardware and software design) and the models historically developed to describe it. The later chapters on designing a beach house and additional were initially harder to relate to, however important as a personal touch to show the author's own struggles and growth at mastering a new design discipline and (more importantly) documenting his own process with an academic precision that ultimately made them worthwhile.