Java Solaris Communities About Sun How to Buy United States Worldwide

JRuby
Active TabCharles Nutter Q&A
 

Interview by Rich Levin

10.October.2006 - One of the newest hubs for development of the enterprise Java platform isn't near California's Silicon Valley. The place is Minneapolis, Minnesota. The city is home to the programming duo of Charles Nutter and Thomas Enebo, the intellectual muscle behind the JRuby project, an open source Java code implementation of the increasingly popular Ruby programming language.

JRuby was a labor of love until last month, when Sun hired Nutter and Enebo to pursue the JRuby project full time. The following Q&A with Nutter covers the project's history, its relation to Java technology and Sun's goals for evolving the Java platform, and JRuby's road map. Check back on October 18 for an interview with Enebo.

Q: Take us back to the genesis of this project. How did you first get involved?

Nutter: The project started about 2001. Jan Arne Petersen originally wrote it. I came to Ruby in the summer of 2004. I was wondering if there might be a Ruby implementation for the Java platform. I was at my first Ruby conference, and stumbled across the JRuby project, and found the current project lead was an old friend and coworker of mine, Tom Enebo. I joined the project.

Q: How did the relationship with Sun come about?

Nutter: It started this past winter. Tom and I were cranking away on JRuby, trying to get some major applications working, and starting to make some real progress. Around that time, February or March, we heard from Tim Bray, [Sun's director of Web Technologies], who developed an interest in seeing Ruby and other dynamic languages on the JVM machine. [see footnote]

We talked with him over several months. We submitted a proposal at the JavaOne conference that was accepted and presented, met with Tim there, talked more about the future of JRuby and dynamic languages--all of this while still working on JRuby in our spare time. Over the summer there were whispers of a potential hiring. Then it happened.

Q: A no-brainer decision for you?

Nutter: It really was. I've been involved in open source for about ten years. JRuby was a project I'd been pouring a massive amount of spare time into, and felt I could commit to full time. To come to Sun and work on JRuby, with the potential to take what we learn and extend it to other parts of the platform and other languages--that was an obvious choice.

Q: That's also one of the most interesting aspects, because it signals this is bigger than Ruby. Sun is recognizing that the JVM machine can be more than the platform to run Java applications. Are we on the forefront of a new era for the JVM tool interface as a multilanguage platform?

Nutter: This is the year of dynamic languages on the JVM machine. At this past JavaOne event, many people said it seemed like 'the scripting JavaOne,' because so many sessions were about a scripting language, whether the JavaScript programming language or Groovy or Ruby or what have you. Everybody that I've talked to is really excited about this, and serious about making scripting languages first-class citizens on the JVM machine, and first-class citizens within the frameworks and platforms based on the JVM machine.

Q: It seems Sun is acknowledging what some characterize as "a new golden age of computer languages."

Nutter: We are seeing a renaissance in languages and diversity in the programming world. All of these have been around for years, of course, but it's gotten to the point where they've matured enough, or gained enough acceptance, that people are starting to do real work on them, and show how you can implement some amazing applications and frameworks with them.

I don't recall a time when there were so many language choices. As far as trying to decide on a language, it comes down to what feels best, and what allows a developer to get the most done. The libraries available are pretty much the same, especially when you consider that JRuby can use all existing Java libraries. Other languages we bring to the JVM tool interface will also have that capability. So, write a few pages of code, see how the language feels, and see what can be done with it. After less than a day of playing with Ruby, I knew it was the language for me.

Q: What's the effect on other dynamic languages, such as Groovy, and Grails [an open source Web application framework that leverages the Groovy language], being used on the JVM machine?

Nutter: It means that Groovy and Grails get greater consideration from people who might have dismissed them before, because they were based on a different language for the JVM tool. The fact that Sun, the main mover behind the Java programming language, has demonstrated that alternative languages like Ruby are important enough to bring people in-house, means dynamic languages are viable, and represent the way development will be done in the future. Groovy is one of those languages. I would be surprised if this didn't help Groovy and Grails gain wider adoption.

Charles Nutter discusses the benefits and challenges of the open source development era in Part 2 of this Q&A.

The terms "Java Virtual Machine" and "JVM" mean a Virtual Machine for the Java platform.

 

JRuby At-a-Glance

JRuby is a 100 percent pure-Java technology implementation of the Ruby programming language. Features include:
1.8.4 compatible Ruby interpreter written in 100% pure Java
Most built-in Ruby classes provided
Support for interacting with and defining Java classes from within Ruby
Bean Scripting Framework (BSF) support
Distributed under CPL/GPL/LGPL tri-license
(Source: Codehaus.org)
 
Contact About Sun News & Events Employment Site Map Privacy Terms of Use Trademarks Copyright Sun Microsystems, Inc.