My friends and family are under attack in Ukraine. Donate to protect them directly or help international organizations.

Their Programming Language Sucks!

September 2nd, 2011

Or at least this is what I hear often all around me. Many want to think that their language is better than all others, and go to great lengths to discredit them. Just like at sport events, people would paint their faces in their team's colors and yell insults at the opponents. I'm here to tell you that all languages are great and suck in their own way.

There is no need to switch to a language just because someone told you that it was better; that's often irrelevant, although counter-intuitive. You will always be more productive with the language that you have worked with for the past 10 or more years. While you spend another 10 years becoming an expert in a new language, you're providing lower value for your customers. And what if by the time you are finally done switching, a shiny new awesome language comes out? You'll be chasing your tail all your life. It's like trying to keep up with teenage fashion.

If you're fresh out of college, the same rules don't apply. You're not an expert in anything yet, even if your youth arrogance screams otherwise. You haven't dealt with clients that will have your head on a spike if you don't meet the deadline. You didn't have junior freelancers do half the work, encrypt their code and disappear. You didn't have to take over large teams that wasted millions of dollars and haven't even finished arguing about the framework. Those are the real problems.

When you didn't swear any allegiances yet, you are free to choose your language. So choose one that has potential in your eyes, one that has strong community support (even if it's not an open source language), one that has good job prospects, one that has training and conferences available… this is what's going to affect your life most, and not some pretty syntax.

In conclusion, I'd like to say that it's not helpful to attack a programming language based on function names, frequency of releases, syntax, market share and other meaningless aspects. The real questions that you should be asking are whether your sh*t can be written in that language and whether you can get a well-paid job or contract. Finally, a diversity of languages and philosophies should be encouraged, so that we can learn from them and bring the concepts back to our own little world and flourish.

Previous: Updating RubyGem on OSX Next: Symfony Form: Extract Values