ptkwt@aracnet.com (Phil Tomson) wrote in message news:c7b5mj088t@enews3.newsguy.com…
It’s also rather odd that assembler comes in at #6 most loved (above such
notables as java, perl, scheme, C++).
Speaking as someone for whom this is true, one USES Java, but one
doesn’t LOVE Java. Java is like a 1996 Toyota 4Runner. Not very
pretty, but not as ugly as some. A terrible gas guzzler, but pretty
practical. Unreliable, but cheap. And while it isn’t very
comfortable to drive, it usually gets you to where you want to go.
The major difference is that Toyota didn’t invest as many resources
(relatively) into marketting the 4Runner as Sun did into marketting
Java.
Java was a good idea; it just got bloated, and the language failed to
evolve (1.5 has some nice new language features). Plus, the bytecode
thing turned out to be less of a selling point than was expected. Sun
did an outstanding job marketting Java; if Java had been an
open-source project with no commercial entity behind it, I’d bet that
it wouldn’t be even as wide-spread as Ruby is.
Although I make my living off Java programming, I have to say that if
you think about it, Java’s main failing is mediocrity. If your main
criteria is speed, are you going to use Java? Probably not; C’s still
your best bet. If your main criteria is rapid development, are you
going to use Java? Again, probably not. Python or Ruby are much
better. If you’re main criteria is reliable, provable code, are you
going to choose Java? Nope. You want a functional language, like
OCaml or Haskell, or a language designed for provability, like Ada.
However, Java does all of these things moderately well; it is more
“easy” to program in than Ada or most functional languages; it is
faster than Python or Ruby; it has better error checking than C. And,
incidentally, it has a built-in GUI toolkit that is cross-platform,
which is nice to have. But it is, fundamentally, a mediocre language;
it does nothing exceptionally. As a result, you’ll find few Java
programmers who actually “love” Java; most like it well enough and put
up with it because the alternatives are worse or are non-starters for
other reasons.
All of which makes me want to scream: Where are the Ruby jobs? Why
must so many of us wear the Cruel Shoes of Java? Ruby needs a killer
app, like an interpreter in Mozilla so that web designers can script
with Ruby instead of Javascript. It needs a compiler, to satisfy the
need for speed. It would help if it had a decent, standard
cross-platform GUI. It’d be really nice if there was some mechanism
for type checking Ruby code. Most of all, it needs some monster
organization willing to throw a lot of marketting weight behind it, or
at least pay for a dozen people to work on developing it full time.
You know what the real bugger is, though? All of this server-side
processing that Java does. I mean, that’s Java’s real niche, at the
moment. Desktop applications are a fairly small percentage of the
Java apps in the market. And yet, you can build web services faster,
more reliably, more easily in Ruby than in Java… and the people
using the service would never know. That’s what really torques me.
Yeah, I like Java well enough. But it takes a language like Ruby to
inspire true love.