
Most of us that work in the IT industry have been around for a long time. We started out in our parents basement writing code in some BASIC environment, ussually Commodore BASIC or QBASIC. Do you remember how thrilling it was? Your first program and it was something extremely basic but the point was it worked. Some of us got hooked right away and kept trying to solve problems and added more and more pushing the capabilities of whatever language we used. As we got older the environments progressed and the programming tools progressed and got more complicated.
"""People who bash C++ typially just haven't learned it in the best possible way."""
The people who bash C++ are often the ones most proficient with it - neophytes don't usually even know of all the evil lurking beneath the surface. I also used to think that C++ was ok when I was younger and less experienced.
Anyone who doesn't think C++ sucks should read "Effectice C++" and "More Effective C++".
Also, STL doesn't rescue C++. In many embedded environments STL is not available at all. Many tookits don't use STL. Most open source C++ projects don't use STL. Most C++ coding done in the industry involves lots of legacy code maintenance where STL can't be trivially adopted. I agree that STL seriously rocks, and it's the only saving grace C++ has going for it.
My advice - if you know C++ already and have a C++ job, don't quit it. If you don't know C++ and don't yet have a job, learn something else. You'll probably live a happier, easier, longer life.