I approached this book with high expectations. Though C++ Report has had its off years it has generally set a high standard for technical writing with many accomplished contributors. Glancing at the table of contents revealed that many of the contributors are people that I hold in high regard for both their knowledge and their writing skills.
However when it came to it I found much of the reading was hard work and left me feeling drained and had I not been reviewing the book I would have put it back on the shelf with a vague promise to myself to read more some day. Perhaps I have been spoilt recently by a handful of excellent technical books that have been a pure pleasure to read.
What really went wrong? Two things spring to mind, these are not the best writings of the contributors and much of the writing is about pre ISO C++ .
C++ has changed dramatically over the last few years. Very little written more than five years ago has much value today. This is notable in that even great books such as John Lakos' Large Scale Software Design are beginning to show their age.
C++ Report was, in my view, going through a bad patch during the late 90s and so perhaps I was being unreasonable in having high expectations (they are always hard to live up to. The best way of undermining a speaker is to introduce him as 'The best speaker I have ever heard, who will spellbind you and dazzle you with new insights.' No speaker can live up to such an introduction). Then I assumed that the contributors would have rewritten the material both polishing and updating it. They clearly did not, and on reflection, I was being unreasonable to expect them to have done so.
To be fair, this is a perfectly reasonable collection of some of the better articles from C++ Report. It is worth reading but in small doses where you focus on an article that is in some way relevant to your current work. But remember what is missing, no Andy Koenig (his name is in the index but only for the algorithm that takes his name), only a small sample of Jim Coplien.