Sunday morning I gave a talk on Fedora and Java, in the Fedora room. I met Chitlesh Goorah there, he was organizing the Fedora stuff at FOSDEM and did a great job. Also Paul Nasrat was there (and I saw him again later in Cambridge). My talk was sparsely attended, but as Andrew pointed out, 9am on a Sunday is not exactly a great time slot. I once again had a problem with the projector; sometimes my laptop works and sometimes it doesn’t. I know there is some obscure fix, but I never remember what; this problem is driving me toward a more minimal style, and this time I only had three slides.
Mark Reinhold started things off in the Classpath room. Mark is the chief engineer of the Java 2 platform — Sun sent a bunch of heavy hitters to this conference. Mark’s slides are available, so I won’t go too deeply into that. I liked how open Mark was about their processes and about wanting feedback. He mentioned the “spring” deadline as well, and walked us through which binary blobs will be required in the initial releases. (I noticed a couple nice things about Sun’s presentations overall: they all had little Creative Commons stickers on the title page — cute touch — and they used remote controls to change slides.)
He said Sun has about 200 engineers working on Java (geez) and another 200 on quality for the JDK. Sun has a very detailed, complicated, well-thought-out process flow for making changes to Java. They have various internal web tools for patch review and other things, and much of this seems to interact with their internal VC system. They’ve been doing distributed VC internally for 10 years, which is one reason they are picking Mercurial for their public version control. Why Mercurial and not one of the others? They did an evaluation, as did OpenSolaris. The OpenSolaris results are available on the web. I thought this long history of distributed VC use was interesting, since in much of the free software world this technology is still pretty new.
Next up was Igor Nekrestyanov, who works on the Java 2D team. He went over the various bits that will need to be replaced (I mentioned them and their potential replacements in an earlier entry).
I’ve been hoping all along that we could donate code from Classpath to help out here, but I don’t think the FSF can do this directly. So, we’d have to get permission from all the authors… and that is a pain. It looks like reimplementation is the only way to go
Peter Kessler talked about the VM and the GC. He’s worked on Java since before it was called Java; he added exceptions to the language. I didn’t seem to take many notes during his presentation, sorry Peter.
Then came Peter von der AhÃ©, who works on javac. Again I didn’t take many notes, but I do remember that he talked about having compiler APIs available in the future. He also mentioned access to the AST for Netbeans (good… this is one of the areas where Eclipse, IMNSHO, really has an edge). At the bar later he mentioned the “kitchen sink project”, the idea being to have a repository where people can try out their wacky language ideas by hacking the compiler.
Finally came David Herron, the Quality lead. The one thing I noted particularly is that they do “large application testing” at various points, this involves big applications, multiple machines, and a week’s worth of elapsed time. Sun’s efforts in this area make our efforts on gcj seem very small indeed…