On November 5th, 2007 Red Hat/JBoss Division announced seminal agreements with Sun to collaborate on Java development. Bob McWhirter caught up with Sacha Labourey, CTO and co-General Manager of JBoss Division of Red Hat to ask him what these agreements were all about, and what they meant to developers and the industry. Here's what he had to say.
Bob What does the agreement with Sun do?
Sacha It is actually not one but two agreements. The first one defines under which IP rules Red Hat will contribute to the Sun open source projects, and most specifically to the OpenJDK project. The second agreement gives us access to the TCK for Java SE. Passing this compatibility test suite is required to call a JVM "Java".
Bob Why did Red Hat/JBoss want to do this?
Sacha Being able to offer a complete open source stack, from the Operating System to the middleware, is an important goal for us. Until now, we have been missing a bridge between these two layers: an open JVM. That is what OpenJDK enables.
Bob Who approached whom about doing this? How did it happen?
Sacha The process started as soon as Sun announced the creation of the OpenJDK project.
Bob How will this play with the IcedTea work already underway?
Sacha IcedTea was a way for Red Hat to start working on the OpenJDK codebase without waiting for the signature of the SCA to be completed. One of the goals of IcedTea was to give the community a place to co-operate to make a free OpenJDK distribution - we didn't want to fork the OpenJDK codebase. So we created the IcedTea repository, which simply complements OpenJDK with the Linux specific modifications. And I should add IcedTea has grown to be much larger than Red Hat now.
Bob Where are the possibilities to improve JRE performance for JBoss and RHEL? Where will you be looking first?
Sacha Performance is one aspect, but there are others that are very important as well, such as response-time of the JVM (i.e. GC-pauses). Scheduling, I/O and memory management will be obvious areas of benchmarking and improvements.
Bob Beyond these improvements, what effect do you think this will have on the Java community? Why should they care?
Sacha It enables a wide range of innovations. In the past, innovations from the community were mostly taking place above the JVM as there was no way to work directly inside the JVM. With a strong Java implementation available in Open Source, anybody can now implement prototypes, get feedback from the community, and, if successful, propose to push these changes inside Java through the JCP.
Bob What role will the Fedora community play?
Sacha Fedora will be an open research and development lab for this, one of the first if not the first Linux distribution that will consume an OpenJDK build. In fact Fedora 8, due to be released this month, will include OpenJDK. I think we are going to see some interesting changes in the Linux communities in the next years. Now that Java is a first class citizen on Linux, I bet we are going to see a growing number of applications and daemon/services implemented in Java and leveraging some of the most advanced aspects of Java (SE and EE), such as transactions, security, distributed caches, etc. That is a very powerful construct.
Bob Some companies have significant investments in their own Java implementations. Do you think this will affect they way they do business?
Sacha Not initially. Vendors will need time to certify OpenJDK on their environment and properly optimize it. But once this will be done, companies will have increased and better choice when it comes to electing their runtime environment and, as part of these choices, a single shop offering from Red Hat, from the OS to the middleware, with a unified subscription offering.
Bob When should the user community begin to see benefits from these new projects? Is there a roadmap?
Sacha We are working on it right now.
Bob Sun and Red Hat have much more in common than they did, say, a couple of years ago. Are there any other plans for collaboration that you might want to share? Will Red Hat and Sun be working together more closely going forward?
Sacha We are always interested in cooperation whenever this makes sense for our communities and customers and the JVM certainly makes sense. OpenJDK on Linux only supports x86-derived processors. We hope to work with Sun and the rest of the OpenJDK community to remove that limitation. We are obviously working together on EE6, on WebBeans (JSR 299) and a number of other domains. But in many other areas, we are obviously vigorously competing. And winning.
Bob Thanks for taking the time to talk with us.