Technology Lab —

JRuby team leaves Sun, joins Engine Yard

Key developers behind the JRuby project have left behind their jobs at Sun and …

Key developers behind the JRuby project have left Sun and signed on with Engine Yard, one of the most prominent companies in the Ruby on Rails ecosystem. The move could accelerate JRuby development, contributing to broader interoperability between Ruby and Java.

The Java virtual machine was not originally conceived as a multilanguage runtime, but Sun began to take serious steps to make it more accommodating to dynamic programming languages in 2006 with the introduction of the InvokeDynamic bytecode operation and other related proposals. At roughly the same time, Sun also hired several leading JRuby developers, including Charles Nutter. The project has evolved considerably since then and now delivers reasonable performance for running relatively complex Ruby code on top of the JVM.

JRuby is an increasingly appealing vehicle for bringing existing Java code into the brave new world of Rails. It also provides a good solution for facilitating scriptable extensibility in large-scale enterprise Java applications. One example of this that we have looked at recently is Marketcetera's open source stock trading platform, which allows adopters to use JRuby to define complex automated trading strategies.

In an entry posted at the official Engine Yard blog, Nutter says that JRuby will help expand Rails adoption by making it a viable choice for companies that are currently committed to Java. As employees of Engine Yard, he and his colleagues Tom Enebo and Nick Sieger are going to focus on boosting integration between Java and Ruby improving JRuby's compatibility with the latest versions of Ruby.

"In order for Rails to penetrate the large organizations of the world, many of which run Java in some form, JRuby is often the answer. So out of JRuby, Engine Yard and the Ruby community get a broad new landscape of opportunities," he wrote. "For JRuby, the move to Engine Yard means we've got a dedicated Ruby and Rails company backing our project."

In an interview with PC World, Nutter acknowledged that the move was partly motivated by concern about Oracle's recent acquisition of Sun and how it could impact the project.

The backing of Engine Yard will likely strengthen the perception that JRuby is a viable solution for deploying Rails on top of Java. It could also help attract Java companies to Engine Yard's cloud hosting service for Rails.

Originally posted by JournalBot:Key developers behind the JRuby project have left behind their jobs at Sun and are joining Engine Yard, a Ruby on Rails hosting company. The move reflects the growing relevance of Rails in the Java ecosystem.

No, the move reflects uncertainty and trepidation of anyone receiving a Sun paycheque.

All three will start work at Engine Yard next week. Nutter said they decided to leave Sun largely because of the uncertainty resulting from its acquisition by Oracle, a deal that's expected to close later this summer pending regulatory approvals.

"To be honest, we had no evidence that Oracle wouldn't support JRuby, but we also didn't have any evidence that they would," Nutter said by telephone Monday. "Two out of the three developers making this move have families; we want to make sure JRuby will get to the next level, and we had to make a decision," he said.

Originally posted by sigzero:I really don't think this going to "strengthen" any perception. I rarely hear of JRuby when talks turn to languages on the JVM.

JRuby isn't really a language, it's an implementation. Ruby is the language.

For years, almost all the talk and new web framework related features from the the Glassfish and NetBeans teams have have been about regular Ruby (CRuby), Rails, and JRuby... way more so than any Java frameworks.

JRuby doesn't make much sense to me in the context of Grails (built on groovy and Java). Not trying to compare features or performance, but what does Ruby gain by running on JVM over (C)Ruby? If it is access to Java, why not stay in a language closer to Java?

For one, a lot of our clients require .war files because they've already set up a Tomcat/JBoss server. No need for mod_rails (Passenger) or trying one of the zillion Java web frameworks, you can just give them the .war file. Groovy is pretty nice, but you have to see Ruby on Rails as a whole - including its bigger mindshare and fanbase.

Well, for one thing, the 1.8 series of cRuby is still fully interpreted, which makes it way slower than comparable scripting languages; JRuby gets you a bytecoded implementation. For another, the tools available to analyse and debug performance problems in Java land (e.g. jvisualvm with jstat) are light years ahead of the same tools in Ruby land.

Originally posted by mountainBoiler:JRuby doesn't make much sense to me in the context of Grails (built on groovy and Java). Not trying to compare features or performance, but what does Ruby gain by running on JVM over (C)Ruby? If it is access to Java, why not stay in a language closer to Java?

Deployment. The production support team doesn't know how to support mongrel clusters and doesn't care to. But they know how to take the war I give them and run it in glassfish.