@bigworm, that is kinda the point. C++ is difficult, if you get to the point that you understand it well then anything else is easy to learn...assembly and the lowest level languages aside.
I don't disagree with you about the performance not being super important, but you also don't want to be the idiot writing inefficient code. And the memory issues have nothing to do with debugging skills. Debugging is one of the most important skills a programmer needs, and C++ is an excellent way to get familiar with it, due to the lower level aspect of it's compilation. Eg, the details on pointers, vectors, etc that is provided at breaks.
I don't know though, I don't think the debate over what language is nearly as important as what he should actually focus on. Focusing on object oriented programming is key. Understanding how to transform high level solutions to complicated problems into pseudo code/programming languages is key. Learning how to quickly adapt to new syntax is key. And being able to demonstrate your knowledge is key. For this I recommend doing as much as possible. So certifications, professional organizations, open source forums. Anything that gives exposure. None of these things on it's own will get you a job, but they supplement actual skills and help show an employer passion for the work along with skill.
The Association for Computing Machinery is a decent organization and membership isn't too expensive. It gives access to tons of free material on all types of programming, as well as some free textbooks if I recall correctly.