OpenJDK session at JFokus, Stockholm

OpenJDK logotype

Yesterday evening some 30 people met to talk about OpenJDK. Apart from one unlucky fellow that asked for “pointers on how to move from Java 5 to Java 6”, it was mostly political and community related issues discussed. The only technical topic discussed was really the (awkful) build system.

Access to properties like in java fx

The first topic that came up was a question whether Java SE (or rather “Java the language”) would get property access added, like that available in JavaFX. No one could really answer, the person asking for it was asked to join the mailing list(s) and ask for this feature.

Build infrastructure/system

Next up was the question if Oracle/OpenJDK are working on improving the build system, as well as restructuring the code base to make it easier to find your way in it. It’s apparently quite hard to navigate and find the parts your looking for.

Historically, we were told, Java started out as a code base for Solaris. Then there were some thing added for some other OS, and another, and another and so – it was never really a multiplatform layout set out from the beginning.

Photo of Dalibor TopicOne suggestion was to make a “mocked OS”, which mocks everything out and makes for a good reference point when you want to start out support for a new platform. “Look at Windows” Dalibor Topić replied with some laughter following within the group. A more serious reply was to look at how the new Mac OS port is being handled. As I understood it, currently it lives by its own (in branches?) since Oracle has not decided to step up and support that platform yet. If it matures enough and reaches a quality level high enough for adoption, then Oracle might take on supporting it. Regardless, people wanting to port OpenJDK to a new platform can look at how this all works out.

IcedTea was mentioned of course, but I really don’t remember the reference to it, or the point made. :-)

OpenJDK contributors

Next question was out of pure interest from someone that wanted to know who, outside of Oracle, that contribute to the project these days.

  • Linux, BSD communities initially
  • Canonical, IBM recently
  • SAP contributed hotspot fixes, AMD for their CPUs
  • and academics/individuals

How do you contribute to OpenJDK?

Photo of Yara SengerThis was brought up by a Brazillian JUG organiser Yara Senger, and was discussed for quite a long time. Her focus, as I understood it, was to make sure to engage not only the top coders of the community, but people at all levels and most importantly people that have advanced from the “beginner” level. Some people made subtle points saying that not everyone might be up for the task – this is not your everyday Java bean your going to write …

On a more concrete level, Cecilia Borg, said that this is something they are in fact looking into and their current take is to try to engage the community via the user groups. The London JUG apparently has made some substantial work here, with code review programs, efforts on automating the manual tests that needs to be carried out for OpenJDK releases, and also the “adopt a JCP” program.

Photo of Cecilia Borg
“NetBeans did a good job [with engaging the community]” and lowering the barrier on getting involved and onboard.

Several times, it was said that “we need to provide a virtualbox image where everything’s set up” in order to move away from new comers spending time on simply trying to get it to actually build, and focus on getting “real” work done instead.

JEP for RIPE-MD

Photo of Leif-Jöran OlssonLeif-Jöran Olsson (ljo, from eXist-db fame) asked if there is work planned or going on for adding more non-proprietary cryptographic algorithms (such as RIPE-MD) now that MD5 sums for instance to an increasing level is being seen as non-reliable.  This led to a brief introduction on JEPs – JDK Enhancement Proposals (much like Python’s PEPs I assume – this was new to me). It was not clear to me who is allowed to add JEPs. But the discussion also led to the next topic:

How does one become a committer?

This is actually well documented under the Bylaws headline on openJDK website.

And that was 60 minutes of OpenJDK discussions.