"... Java, have you learned to easy yet?"
Try Play, Grails, Vert.X.And you know what it isn't easy. Having to deal with Ruby's dependency nightmares.
"... Java, have you learned to easy yet?"
Try Play, Grails, Vert.X.And you know what it isn't easy. Having to deal with Ruby's dependency nightmares.
The world has caught up. That's one of the points I didn't quite make very well. Ugh.
I think Rails still has some advantages, and a head start in both development concepts and supporting libraries and frameworks. My point wasn't that Java and its kin are necessarily incapable of these things, just that Rails has had that mindset from the start, and as such deserves the mindshare that it receives.
There's really no comparison between using Bundler and mucking around with JAR files or Ant scripts in Java. I've even seen Python codebases with a Java-esque rats nest of dependencies that are just as painful to get setup correctly.
Bundler is way easier. I've never been on a Rails project where it took more than 30 minutes to get the env setup and it's in large part, thanks to Bundler. Admittedly, I haven't touched Java in a few years, but last I checked, Java had nothing like Bundler (which is a shame, because it could really use it).
But there's a very close comparison between Bundler and managing dependencies with Maven or Gradle. And there's a huge difference. Maven Central has never been compromised because they have a secure method for deploying artifacts, RubyGems? You've had a fun month with RubyGems, right?
If not then Ivy is what is used mostly albeit far less elegantly.
But if you have large apps with multiple Ruby versions then dealing with rvmrc, bundler and gem incompatibilities is a nightmare.
Java's forward compatibility is a lot more robust.
Why on earth would you do that?
Every time a new developer comes on board they just love to add new technology X and then in the years to come other developers add Y and so on. Of course there are developers who have to manage this.
That said, you can start with Scala as "better Java" and ramp up to its advanced features. That's how I began. At first you're just replacing for-loops with map/reduce, eventually you'll start passing around implicit variables and using for-comprehensions all over the place.