I have to admit I did not read the complete book yet, but the title caught my attention immediately after catching a glimpse on Joel on Software. The truth is I dream about code… I have dreamed about Java code many times, only to realize in the morning I was only dreaming, and that magical classes do not materialize so easily. But leaving aside my own psychological nature, the book is an excellent story about one of the most controversial and talk about subjects among programmers: software design.
The book is written by Scott Rosenberg, co-founder of http://www.salon.com. He describes himself as not an expert programmer (although he certainly knows coding inside out by reading the excerpts). And that is what makes this book so interesting. It is not only about technical issues such as the use of closures, decorators, etc. But rather about the cruel reality of software design. About how schedules can grow lenghty and how bug databases can grow big, horribly big. It is also an excellent example of how bugs in one plataform can lead to bugs in another program.
To illustrate the latter, the author uses as an example a bug in open source PIM Chandler, where a malfunction in wxWindows library causes unnecesary flicker in the program. The programmer knows his code is buggy, yet it is outside his immediate control to fix it (I guess unless someone works inside the wxWindows library code, which as far as I know is also open source…)
The prose is interesting and captivating enough as to merit the same attention span as a good novel or fiction. And programmers everywhere will feel identified with the many problems that arise (usually when the product is already shipped and live.)