From: ser@... (Sean Russell) Date: 2004-05-06T08:08:57+09:00 Subject: Re: [OT]Is Ruby Top 1 of Programming Languages that are Loved? ptkwt@aracnet.com (Phil Tomson) wrote in message news:... > 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.