Since we're finally getting to the point in the CFML community that we're discussing CFML as a language independent of the various CFML engines, I think Brian Cunningham's post "What Hath Java Wrought" is a very interesting parallel discussion happening in the Java world. These are exactly the types of discussions I hope happen with CFML.
Wow. That's an awesome article. Interesting to see Java community have so many similar complaints.
Could you please provide an article summary? That would make it easy for some of us.
It's an interesting dilemma for any language that has been around a while and it's particularly interesting to hear Java described as "easy to learn". You're right of course that the exact same discussion could happen with "Java" replaced by "CFML" :)
I don't know anything about this author or his Java experience, but I wanted to stop reading here:
"Java is popular because of one rather simple reason:
It's easy to use."
That's probably not correct--for a programmer who can't or won't deal with pointers, maybe it's easier, but one can probably find a thousand forums where people are complaining about how hard it is to say "Hello World."
As for his beef about backward compatibility, again, I'm just not sure what he's getting at. With each release, there are many things that are deprecated and later abandoned. Though you might be able to run a particular 1.2 app in a 1.5 JVM, if you try to compile it from source, you'll probably be surprised at how loudly the compiler bitches at you.
Adding closures and generics doesn't scare me, nor should it scare you. A lot of developers could get through an entire career without ever using a closure, so why should it matter to them if the language allows it? Sure, bad programmers will abuse it, but they'll be abusing a lot more than just a particularly complex language feature.
In short, I say: Meh.