Some good points:
- The most obvious good thing about this book is that its not huge, everything covered in 90 pages. So this was something exciting for me. Also the chapters are concise.
- Concepts have been explained in a concise manner and the language is simple, so you can get an idea of what the author tries to tell.
- Useful for someone starting off in software development
Now something not so good about the book:
- Really vague and certainly not useful for a seasoned developer, not even for some mid level developer, as lot of concepts seem obvious.
- More like a collection of articles enhanced to form a book.
- The title says- The science of Software development, but stating a formula and a law or two doesnt make a subject Science. I think the author hasnt been able to justify Software Design as a science.
Lot of the concepts explained in the book are put forth as science, but I don't agree. A lot still depends on the individual, they can be stated as guidelines but not something as concrete as Newtons Laws of Motion. The idea of software design, development varies a lot between companies, but I dont think Newton’s laws dont vary with places. But when it comes to software design, the onus is on the developer, and the code reviewers. I dont say that the topics covered in the book are not useful, they are certainly useful and I enjoyed reading them. Few ideas where really useful, but as a whole the idea of Science of Software development fails.
If at all anytime you get a copy of this book and you are new to software development be it student or a professional I would certainly recommend this book. But there are lots of other better books but considering the volume of this book, I would say nothing is lost in reading it.