Try this question the next time someone tries to push a different programming language on you, or even when you want to hire someone: "What five things do you hate most about language X?"
If they can't find five things to hate, they don't know the language well enough to either advocate it or pull in the big dollars using it. They might get to be an entry-level programmer, but that's up to you.
I was talking with someone this week about language advocacy. To most people, that tends to mean that if I don't choose their favorite technology, I'm wrong.
Whatever. I don't care that much. Don't want to use Perl? Then don't. Want to make an informed choice? I can help. Still don't use Perl? Fine. Sometimes the right answer is "You have a strong programming team with good practices and a lot of experience in Java. Changing to Perl would be stupid".
In code reviews for clients, I often ask "If you could start over on this project, what would you do differently?" In this fantasy land, users and programmers get to bitch about anything and everything they don't like. "I want a better interface", "I want to separate the model from the view", "I'd use this module instead of this other one", "I'd rename this set of methods", or whatever they really don't like about the current situation.
If you don't know what you don't like about something, indeed, even Hate Hate Hate about something, especially software, I tend to think you're either covering your ass and don't really use it enough. If you don't have things you hate about your own code, for instance, you probably have an ego problem and are unwilling to admit your limitations and poor decisions. Look at my older code. It's crap. In five years I'll probably think the code I wrote this year is crap. That's just life.
The same thing applies to language advocacy. When someone wants to push another language onto me, I ask them "What are five things you hate about that language." I can tell you five things I hate about Perl, certainly. I can't be an effective advocate if I'm just a cheerleader.
I'm not going to list any reasons here, but try that the next time that someone tries to push another language on you, or even when you interview people for a job.