The fact that Python and Java are the 2 most popular languages of 2013 already shows the horrific direction programming is heading in.
Java is dying. It's happening fast. It had it's time, and it shined very bright during that time. Java was created in a world where scripting languages were too slow to be considered and programming languages were too level to develop applications in a clean and timely manner. Now we're in a world where scripting languages can be just as fast as programming languages while providing tons of abstractions to make our lives so much easier. We're only going to see that share shrink over time. Same deal with C#, it was created to make life easier for C/C++ developers but never caught on to the extent of Java. In my opinion, over the next few years we're going to see a massive split in programming languages, where the only popular languages will be abstract languages (like Python) and low level languages (like C++) with very little middle ground.
I know a lot of different languages and I'm not going to get into the quirks of each and every language, but my personal preference is towards the low level end of the spectrum. I'm just going to say it: I don't like scripting languages. Sure, what takes a hundred lines in C may only take five in Python, but at the end of the day C provides an environment of control that Python can't keep up with. When I work with scripting languages, I feel like I take three quick steps forward then one step back. Sure, I still went two steps in the time it'd take me to go one in C, but at least I'm walking forward at a steady pace. I'm also a firm believer in writing code specific to your situation, so obviously I wouldn't develop a webapp in C, but at the same time I wouldn't write a video game in Ruby or Python. I guess it really depends on your personal preference, and I'm a low level guy. Regardless, it's important to be eclectic in your programming language knowledge. That's not to say learn every single one out there, but you should at least have a taste of what it's like to work as a C++ programmer if you're a scripting language guy, and you should know how to write code in scripting languages if you're a low level guy.