It’s everywhere and learning materials are good (just look at courses from freeCodeCamp, Scott Tolinski, Cory House, Wes Bos, Per Harald Borgen) The community is great, plenty of jobs and it looks like even more is coming. Downside: it’s everywhere, a lot to learn, no a sh*tload to learn, too much junk amongst learning materials, won’t name people here.
Quite in-demand, great learning materials, great community. Downside: the JS community behemoth is not there. It’s friendly and welcoming, but tools aren’t as good as around other places and it all feels very hacky (which it isn’t, but you still have a strange aftertaste), despite google’s best attempts.
Microsoft has done an outstanding job. It feels like a tank. Learning to drive it is a feat by itself, but when you finally use it — you realise how much great engineering and how many years of experience went into it. Don’t take my word for it. Here’s an amazing article which would get you inspired to learn C# and become a .NET fan
In the ideal world — you would want to know all three.
On a more practical note, picking one of the most popular languages AT THE MOMENT is just fine. Be it Ruby, Java, Haskell or any other language. After all, we need to know how to code, whatever the language, we get paid for solving problems.
No one pays us for speaking English. People pay for delivering value, while speaking English or any other language.
I might say a very unpopular thing, but even PHP will do the job. People try to build things to last. So most of our time we will be reading code written by someone else. We when it wasn’t written tomorrow…
When we join a company, people are most interested in us understanding what already exists in their codebase, and how they work. Innovation and keeping up to date is important, but hey, I know people who refurbish Victorian railroad cars for a living.
If we learn how to solve problems. Everything else is just a technicality.