It is what I've been developing on in my professional career. Should I be running away from it?
Do you think it is wise to have a career based on knowing how to do just one thing?
That's absolutely correct in my opinion. Additionally as a software developer, I have to say that it was a necessity for Microsoft to make all platform open - not only ASP.NET, to survive the competition. This is not a bad thing, but you definitely have to know how to work with other platforms too (PHP, Java, Python etc. for the Web) and with a multitude of frameworks and tools, in order for you to survive the competition.
Given the choice between learning how to be a master of a singe trade, or being a jack of all trades and master of none, I'd rather be a master of 1 trade, in part because you can command a higher salary if you are proficient in a technological area.
With programming, if you master one, you can quickly learn another. They all accomplish the same thing, just in different ways.
Then you have your answer. Just keep in mind that every buggy whip maker, lamplighter and cigar factory lector (one of my personal favorites) felt the same way.
Okay let me put it this way. If you were a master of programming in assembly you could have found plentiful employment back in say 1990 or so. Remember those NES games that were so popular? They were programmed in assembly. Now, let's assume a hypothetical situation where you only practiced assembly and in say 2010 you get laid off from the manufacturer that was making a piece of hardware that still required that language. Without learning any other languages your employability will be quite narrow and low until you learn new languages. So, that's why a true master programmer is one that can use multiple languages. It doesn't mean they have to be proficient with a 2GL like assembly when Python, RoR, and other 4GL are so frequently used. It does mean, in my opinion, that as the industry changes and progresses they have to keep up.
I am not a computer programmer in that I do not program in 1GL - 4GL, but I am a computer programmer in that I program PLCs which are by definition industrial grade computers. I can tell you, though, that my 4GL programming skills are embarrassing at best.
I agree that in the long term a developer is best off if he has experience in a variety of languages and frameworks. My question was supposed to pertain more to a developer early in his career trying to get hired at big-name tech companies.
Actually, although many programming languages claim to be the "one and only general-purpose language", the syntax of each one is optimized for solving a specific set of problems.
In the programming world, "long term" is what, about ten years? A typical working career after finishing a bachelor's or master's degree might be 40 years.
Separate names with a comma.