Making Software
Lots of useful articles on ways to improve on how programs are written with lots of references to the studies that were done that provide the evidence to support these conclusions.
My Rating: ![]()
![]()
![]()
![]()
Pros
- Covers a lot of different approaches to writing better software with evidence that helps to show that they do actually work.
- Well integrated book considering that it is a collection of separate articles by separate authors.
- Provides lots of references to the actual studies that the various conclusions are based on.
Cons
- The first section of the book is difficult for someone without the necessary background to properly understand.
- One factual error I spotted is where on page 262 it says "Windows NT was developed as Microsoft's answer to Unix, initially as an alternative to IBM's OS/2 and later as a replacement of the 16 bit Windows code base". This is totally wrong since Windows NT was simply the 32 bit version of a 16 bit multitasking operating system Microsoft first released in 1987 as a replacement for DOS long before Windows became popular. Microsoft called that 16 bit version OS/2 and only decided to rename the second version to Windows NT 3.1 after Windows 3.1 became popular.
Description
- First Edition: Copyright October 2010
- 602 page paperback
- Published by O'Reilly Media
- ISBN 978-0-596-80832-7
- Edited by Andy Oram and Greg Wilson
Review
Thirty articles and thirty four different authors but you can't really tell that from reading the content as all of the material fits together extremely well.
The articles are divided up into two sections. The first covering general principles reads a lot like a fairly advanced university level textbook and it got really tempting for me to give up on the book a number of times while reading that section which would have been a real pity since the second section covering "Specific Topics in Software Engineering" is far easier to read and a lot more interesting as well.
There is plenty of material in the second section of the book that will help any programmer to improve the way that they write programs. A lot of the alternatives presented are beyond the control of the programmer though and so it is far more important that the managers in charge of programming departments be made aware of the information that this book provides.
While at least some of the information that the book presents should be obvious to any experienced programmer - some of the information may also be completely unexpected. The authors of the articles have done an excellent job though of specifying exactly how they obtained the data upon which their conclusions are based and so it should be reasonably easy to work out just how applicable each should be to any given situation.
I recommend that those without the background to fully understand the material in the first part of the book persevere with it as whatever part of it that you do manage to comprehend will aid in your understanding of what the extremely useful second part of the book actually means.
More Information from the Publisher



