I've read both "Effective C++"es some time ago and was really impressed. So, I was quite happy when I finally put my hands on Myers' next book - "Effective STL".

If you're familiar with the "Effective ..." family, the title should say it all to you. The book lists 50 advanced advices for correct/efficient/clean usage of STL constructs in C++ programming. And "advanced" means ADVANCED here, this is in no way a beginners' book. If you're not familiar with the STL pretty well (not mentioning C++), i.e. wrote at least some real code using it, there's nothing to look for in this book for you.

In fact, some of the book was too advanced for me, and that's probably bad, as it means that I haven't utilized the STL to its full power. Especially the usage of the more advanced algorithms (like transform), with advanced functors (e.g. bind2nd with mem_fun_ptr). I haven't had a chance to get an experience in these things, meaning that the code I was writing didn't make a usage advanced enough of the STL.

Myers writes with his familiar half-humorous style, which makes the book very easy and fun to read. The only exception would be some topics where he dives too deep and the issues start to be very complex... but this is un-avoidable when talking about this subject, after all C++ is not a simple language, and the STL is not a simple library. It's optimized for power and performance, not simplicity.

Reading the book makes one grasp just how big the gap between beginner/mature and expert C++ programmers is, but it also helps closing the gap a little... I hope that when I will run into complex STL stuff now, I'll remember what I read about in this book, or at least will come back to it and read the relevant topics. It will surely make me a better C++ programmer.

Highly recommended !