I just finished reading the book Professional Software Development, by Steve McConnell. I think Steve’s previous books (particularly Code Complete and Project Survival Guide) are real gems, which should be read by any professional software developer. However, his most recent book was less compelling to me. A significant portion of it deals with education, the difference between computer science and software engineering, and other stuff that I did not find particularly useful for my software projects. And the book is quite thin, so it is even useless as a monitor stand.
In my opinion, the most interesting part of the book is his view on the subject of the CMMI. Steve is in favor of increasing software quality by increasing the so-called maturity levels of organizations. I have also read some material from other authors who are ferfently opposed to CMMI certification. They think that this drive to obtain higher CMMI maturity levels leads to more bureaucratic organizations. I would love to see a battle of the brains, where the great thinkers of our field (like McConnell, Brooks, Yourdon, Fowler, Highsmith, Cockburn and Humphrey) fight each other the issue of the CMMI. It would be most spectacular.
Let the records note that I have not yet made up my mind about this one. But I will look into the CMMI debate later this year and I will tell you what I think.