Community Reviews

Rating(3.9 / 5.0, 100 votes)
5 stars
31(31%)
4 stars
32(32%)
3 stars
37(37%)
2 stars
0(0%)
1 stars
0(0%)
100 reviews
July 15,2025
... Show More
The fundamental idea posits that there are two distinct types of time.

First, there is Calendar time. This is the kind of time that cannot be accelerated by adding more people. For instance, no matter how many women are involved, it is impossible to grow a baby in less than nine months.

Second, there is the way people generally conceive of time. If a task takes one person a year to complete, surely it can be done in a month with 12 people. For example, when doing the dishes, it might seem that having two more people, one to dry and one to put things away, could speed up the process. However, those additional people are likely to be idle 50% or more of the time. And at a certain point, adding more people will actually slow things down, as the number of kitchen sinks limits the overall efficiency.

This idea is indeed essential, and Brooks is无疑 responsible for introducing it into the software realm. Nevertheless, the contents of the book have not aged well. It is likely no longer worth your time.
July 15,2025
... Show More
Every software practitioner who has not read this book should get a copy from me.

This book has had a profound impact on me. It refreshes and renews my programming project soul time and time again. I often quote from it when working in software teams. For example, the saying "A good workman is known by his tools" from the Sharp Tools chapter.

Software productivity depends a great deal on clear communication, design, teamwork, and sharp tools and tool smiths for automation, all of which are covered in this book. I cannot recommend it highly enough. Recently, Dr Brooks was kind enough to sign a copy for me. I have both the original copy, copyrighted in 1975, and the 20th anniversary edition (c) 1995.

This book is a must-read for anyone in the software industry. It provides valuable insights and practical advice that can help improve the quality and efficiency of software development projects. Whether you are a beginner or an experienced professional, you will find something useful in this book.

I highly recommend it to all software practitioners.
July 15,2025
... Show More
I give it three stars, but it probably deserves four.

Several of the maxims herein have percolated into the wider community, and were known to me well before I first came across this.

Brooks, by the way, has written more than this rather soft title. His report on the IBM 360, for instance, is the first paper in Readings in Computer Architecture.

This shows that he has made significant contributions in other areas as well.

Although this particular work may not be his most outstanding, it still contains valuable insights and ideas.

The maxims that have spread to the wider community suggest that there is something of worth in it.

Perhaps with a more in-depth reading and analysis, one could discover even more hidden gems within the text.

Overall, it is a decent piece of work that is worth considering for those interested in the subject matter.
July 15,2025
... Show More

Reading this book was like a journey through time for me. From today's perspective, it's a rather outdated book. However, it was truly amazing to read about the completely different everyday problems such as the techniques and strategies of updating paper-based documentation.


Nevertheless, software engineers, architects, and IT project managers, despite the current agile techniques and the experience of previous generations, are still grappling with certain problems. For example, the correct project estimations of time and cost remain a challenge. Many rules still hold true, like Brook's Law which states that adding people to late projects will only make them even later.


This book reveals that each generation of IT professionals has its own unique challenges to handle. And to paraphrase Heraclitus, change is indeed the only constant in software development. We must continuously adapt and evolve to meet the ever-changing demands of this dynamic field.

July 15,2025
... Show More
This is a master piece of software engineering.

Many people have read it because it is an extremely approachable account.

When I read this book in 2007, I was amazed at how much value it brought, even though it was written more than 20 years ago.

Since then, I have heard numerous people talk about and swear by this book.

However, I have one gripe against the readers and those who discuss it.

They often use this book to support their stances, but most of these people lack the kind of expertise and experience that Fred Brooks had.

I hope we can all read this as an entertaining account and attempt to gain some insights into the process of software development.

We should not simply rely on the book to validate our own views without truly understanding its context and the author's intentions.

By approaching it with an open mind and a willingness to learn, we can extract the valuable lessons it has to offer and apply them to our own work in software engineering.

July 15,2025
... Show More

I picked up this book as it is frequently cited as one of the most popular books on software engineering. However, the slightly dated nature of the book, which was originally written more than 30 years ago, does become evident in many sections.


Some portions of the text have now been transformed into legendary quotes, such as "Brook's Law - adding manpower to a late software project makes it later". Nevertheless, the rest of the book is perhaps a bit hit-and-miss.


Also, the terminology employed is different nowadays. The software architect as described in the book is more akin to a product person in the present context.


There are some controversial opinions, as well as some (now-obvious) great ones. Overall, it is an average read. If you are seeking modern essays on software engineering, Joel Spolsky's books are probably a better starting point.

July 15,2025
... Show More
There are certain parts of this book that will ALWAYS hold significance for software development.

I initially read a selection of chapters from this book during my college days. And now, having accumulated three years of industry experience (whatever that might be worth), I have just completed a cover-to-cover reading.

The reader should be aware that this is a compilation of essays, not a work that presents a single, continuous argument from beginning to end. It is mainly the reader's responsibility to identify the common strands of wisdom that run through the essays and underpin Brooks's arguments.

Brooks is a proficient writer and communicator. I give it a rating of 4/5 because the age of this book affects its accessibility. One must possess sufficient background knowledge of computer and software history to fully appreciate all of Brooks's examples and anecdotes. Without it, the reading can be quite challenging.

Furthermore, there are numerous essays that have become less relevant due to the advent of modern technology, such as version control systems, which have reduced what were once significant issues in the 1960s to mere molehills. With this edition of the book, it might be advisable to read Chapter 19 first. In this chapter, Brooks reexamines many of his previous arguments regarding their relevance and accuracy 20 years later. This helps to highlight the timeless chapters and saves you the time of avoiding those whose usefulness is diminishing.
July 15,2025
... Show More
This book offers truly amazing explanations.

It is designed to assist in clarifying your intuitions regarding notions that are highly relevant to orderings within the field of Software Engineering.

The detailed and comprehensive explanations presented in this book can significantly enhance your understanding of these crucial concepts.

Whether you are a novice or an experienced professional in Software Engineering, this book can serve as a valuable resource.

It delves deep into the various aspects of orderings, providing insights and examples that make the complex ideas more accessible and easier to grasp.

By reading this book, you will gain a better understanding of how orderings impact the development and functionality of software systems, and be able to apply this knowledge to your own work more effectively.
July 15,2025
... Show More
Basically, it is a collection of adages. An old computer engineering veteran is sharing his battle-tested lessons regarding what works and what doesn't in the software industry. Just like many adages, it doesn't really tell you something you don't already know. (See the author's amusing anecdote in the 20th anniversary edition's afterword.) However, you may find it helpful to be reminded of them from time to time.

In my opinion, the book can be boiled down to just a few key points. Software development is nonlinear in its inputs, especially labor. It is essential to have a well-organized team. Your plans, specs, and documentation should be clear and complete. Things always take longer than you expect, especially in the "finishing" stages, which might themselves take longer than the development of the core of the program. Everything else discussed is more or less a variation on one of these themes. With the possible exception of the last essay, "No Silver Bullet," which is supposedly the most-discussed part of the book. But I found it to be rambling and unclear, with some scattered interesting thoughts but no coherent thesis.

In terms of its age, the book is a bit of a mixed bag. Some parts definitely seem prescient. In particular, Brooks's enthusiasm for higher-order conceptual languages and object-oriented programming. But other parts now seem rather outdated. For example, discussions of record-keeping that are nowadays automatically handled by source control systems, bug trackers, and nightly builds. Obviously, one can hardly blame Brooks for this, as the future is notoriously hard to predict. But why have readers singled out this book as one that passes the test of time? Is it the "timeless" common sense that fills its pages? Couldn't you get as much or more by talking to a trusted senior colleague?
July 15,2025
... Show More
Sahil sir's recommendation was not as good as I had expected.

Moreover, the essays were centered around the author's managing experience of a hardware project, specifically the IBM system/360.

Consequently, the hardware project became the main focus rather than a software project.

Although Fredrick P. Brooks attempted to generalize the principles to managing any kind of project, the emphasis on the hardware aspect was still quite prominent.

This might limit the applicability of some of the concepts to software projects, which have their own unique characteristics and challenges.

However, it is important to note that there could still be valuable insights and lessons that can be drawn from the author's experience, even if it is primarily focused on hardware.

Perhaps with some adaptation and interpretation, these principles could be applied to software project management as well.

Overall, while Sahil sir's recommendation may not have been entirely what I was looking for, it still has the potential to provide some useful information and perspectives.

July 15,2025
... Show More
This is an interesting book with a rather narrow focus. It is a collection of essays on the management and planning of good software engineering.

The author shared the mistakes and successes of his work on the IBM 360 Operating System in the 70s, and much of what he discovered still holds true today. For instance, there is wisdom such as: adding more programmers to a project only makes it late, and if you add programmers to an already late project, the results will arrive even later. It is advisable to have an architect and a manager, preferably in two different persons. Version control is also essential (although since the book is old, it refers more to a central repository of printed (!!) books that detail all changes, the outline, the design, etc.).

It is important to note that there is no silver bullet. Software is inherently complex, and there will never be a single technology that makes it fast, easy, cheap, and error-free.

A significant portion of the knowledge in this book is more useful for large companies or large projects where there are 100 to 1000 programmers working simultaneously. Therefore, as a lone bioinformatician working on my own code, not everything is applicable to me. However, when I look at failed projects, for example, on Kickstarter, I realize that they often repeat mistakes that were already solved in the 70s.

I am giving this book 4 stars because some of the examples, discussions, and problems are clearly outdated by now.

This review has a good summary of the main points.
July 15,2025
... Show More
This article appears to be targeted at inexperienced managers of tech teams.

It may not hold much value for those who already have significant experience in this field.

One drawback is that there seems to be some outdated content within it.

Another observation is that there is a notable absence of female pronouns, which could potentially limit its inclusivity.

However, on the other hand, there are quite a number of references to God.

This might be a unique aspect of the article, but it could also be a turn-off for some readers who do not share the same religious beliefs or preferences.

Overall, while the article may offer some insights for inexperienced tech team managers, it has several areas that could be improved upon to make it more relevant, inclusive, and up-to-date.

Perhaps a revision could focus on modernizing the content, incorporating more diverse language and perspectives, and reducing the reliance on religious references to appeal to a wider audience.
 1 2 3 4 5 下一页 尾页
Leave a Review
You must be logged in to rate and post a review. Register an account to get started.