jducoeur: (0)
jducoeur ([personal profile] jducoeur) wrote 2008-03-17 01:10 am (UTC)

Interesting viewpoint. Yeah, I'm probably older -- I've been working in the field for about 30 years now, full-time professional for a bit north of 20. So to me, Java is very much Just Another Language: I don't have a lot of patience for the usual language squabbles, either pro or con. They're just tools, and I specialize in knowing how to use more or less all of them. (At one time or another, I've been fluent in somewhere between 20 and 30 languages. As a rule, I insist on learning at least one new language a year, just for fun.)

I wouldn't actually *recommend* Java at this point, mind. It was a good language in its day, but it stopped being cutting-edge about ten years ago, when "object oriented" stopped being new and cool. Java has become an irritatingly stodgy language, with the result that it's been thoroughly lapped by C#. (Which is by no means perfect, but is at least making a credible effort to keep up with the times.) Java is the great bastion of object-orientedness as a religion, with the result that it has pretty much completely missed the functional revolution. (Much less the declarative/pattern-based one that's gradually coming down the pike.)

But the JVM is another story. That's just a platform, and it's a fairly decent one -- perhaps not quite as good as the CLR, but good enough for most purposes. And there are *lots* of languages on it, some of them just fine. For example, I'm likely to move my active development over to Groovy pretty soon: that looks to be a reasonably modern and sensible language. I mean, it's not that Java is a *bad* language, it's just missing a bunch of important features -- Groovy appears to add those in. The nice thing about the JVM is it has a colossal installed base and a huge number of libraries; pretty much all of those languages can use pretty much all of those libraries. That's why I chose it as the basis for CommYou: I can have my library cake and eat the languages I want.

So I can understand the viewpoint, but I'd caution you to remember to keep the tool and its users separate. It is entirely possible to use it to produce good code -- it's just a bit more effort than it should be. The fact that it has become one of the entry-level languages just demonstrates how much staying power it has developed, and that staying power is almost always because it provides the junior engineers with enough capability to get their work done. That's not a bad thing, per se, so long as you don't let it limit you...

Post a comment in response:

(will be screened)
(will be screened if not validated)
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting