This is an opinion and a rant based on my opinion and observations, you have been warned.
As a programmer, I see this a lot. People so engrossed in their language that they don’t see its problems or shortcomings, and in turn think every other language, new or old, is bad and will never match up. I sit in a lot of programming language channels on Freenode, and the way I see people defend their language of choice or completely dismiss other languages is baffling. I just don’t get why people CHOOSE to lock themselves in to a language so deeply that it becomes like a religion. I even have seen some people say they have only learned that one language, and won’t learn anything else. At my heavily Java focused school, I even heard a student say, “Well, I want to be a good Java developer, I have no care or interest in any other language or concept” as I was walking out of the room with WTF moment in my head.
One primary and quite universal example is stuff made by Microsoft. Even at the mention of C#, F#, CLR, .NET and people grab their pitchforks and are ready to lynch you for heresy. Most also seem to relate .NET and CLR directly to being Windows only, or Microsoft evil. Most don’t understand or know that C# and the CLR are ECMA standardized and Microsoft has made a public community promise to never try to do anything evil with it. You can safely peruse the promise on Microsoft’s site , don’t worry, it won’t defile your hard drives or require an exorcism of your computer when you are done. On top of that, many in the open source community don’t even know of the Mono project, and the incredible effort they have made to recreate the .NET framework for all other platforms. They even are fully up to date, including .NET 4.5 support on their development branch of their repo.
And you can go on and on about the language and platform wars that go on. Ruby vs Python vs Node for web dev? That’s its own war altogether.
But the real question is why? Are you that narrow minded? Wouldn’t it be better to strive to be a better programmer in general, know how to work with many languages, paradigms, and methods of thought, so that you can write programs that others only dream to write? This isn’t an all encompassing generalization. I know many programmers that after trying many languages, choose their language out of comfort, ease of use, and what fits them. They are fine, they have made an educated decision, and know the consequences. They also usually know the limitations, problems, and shortcomings of the language well enough to work around them or with them. I am mostly talking about the programmers that follow like sheep to the “in” thing. Or without knowing enough, jump into something, proclaim it as the divine gospel of the savior of the 1’s and 0’s, and never branch out.
I dunno, maybe I like being versatile, knowing more, bettering myself, exploring new things, and just giving everything a fair shot. Like for me personally, I hate Ruby. I have tried to use it many times, sometimes even forced myself to make entire projects with it. I just do not like it. And thats my problem, but I have come to this conclusion through research and actual use of the language.
Meh, their loss. I’ll be busy over here, writing IronDart in C# (Dart for the CLR for those that don’t know the naming convention), while running web apps with Node.js, maintaining everything with Python, processing logs with Haskell and Clojure, and facepalming at PHP. Mmm, looks good to me.