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.
Splitting semantic hairs, but... (Score:1)
The net effect is the same, but is less confrontational. "Hate" tends to raise barriers of the religous sort; but we can all admit to occasionally being annoyed by even our favorite languages, things, even friends and family (tho its best not to admit the latter in public...).
Re: (Score:2)
The -> operator (Score:1)
Type Vector2D
X AS INTEGER
Y AS INTEGER
END TYPE
DIM u AS Vector2D ptr, v as Vector2D ptr
# u will point to the same location as v
u = v
# u will hold a copy of the contents of the structure pointed to by v
u. = v.
#u holds a copy of the element x in the structure poin
Tool Suckage (Score:1)
Let's See (Score:2)
Things I hate about Perl... (Score:1)
Are now in my journal [perl.org].