John Robbins did a great job on this book. I was very impressed both on the depth and breadth of the issues treated.
At first, I though on skipping the chapter on Visual Basic debugging, since I am strictly a VC++ developer, but I am glad I did not. Even that chapter gave me insights that I can use on my day to day, for example, when he runs the VB compiler while in the debugger and is able to see how VB uses the C compiler's code generation (second pass).
Some great insights and lots of good example on how to resolve problems and how to use all the capabilities of the debugger to ones best advantage.
It will teach you what to do when the debugger gets you to a source line that before that line, everything is working properly, after that line the world has turned upside down. It will teach you enough X86 assembly to make you dangerous and be able to read between the (source) lines in the process. Even if you thought you knew it already.
Could it be improved ? Yes, can't it always ? Coverage on tracking memory leaks could be expanded, for example, to cover MFC's shortcomings when reporting them, but this book is a close to perfection as I have seen them.
And it is a great read too. His style is easy to follow, even though some of the subjects are deep and complex, but John transfers the knowledge so easily, it is amazing.
Once I completed my first read, I really felt like I had just finished listening to a very good rendition of a Beethoven or Mozart simphony.
Every developer that aspire to be a serious developer should read it and reread it.
And thank you, John Robbins. I will be buying every book you write.