Many people were unhappy about this and felt that Oracle was placing less emphasis on Java than it had in the past. Now that the event has come and gone, I thought it would be a good idea to write up my thoughts on how things went.
I arrived the week before Oracle Code One for the regular JCP Executive Committee meeting held, as usual, at the Twitter offices. I have to say, it’s always fun to Tweet from Twitter, rather than just through Twitter.
Java Champion’s Briefing
It was a good start to have the usual pre-conference meeting of Java Champions still included on the Saturday before the conference started. If anything, this year the meeting contained even more content. I arrived at 8.30 am to find that all the bagels had been eaten and things finally wrapped up at 6.30 pm! There were lots of subjects to discuss and plenty of input from Oracle’s Java Engineering team. Georges Saab, Sharat Chander, Aurelio Garcia-Ribeyro, and Mikael Vidstedt were all happy to discuss recent changes to the Java release cadence, licensing, and concerns people had about whether Java is still free (it is).
Each day had a keynote: Monday was Java focused, Tuesday was everything but Java, and Wednesday was the community 'Groundbreakers.' It’s always hard to figure out the best time for a keynote. Many conferences put them on at the start of the day, which is quite logical but can sometimes result in lower attendance as people decide to miss rush-hour traffic and arrive later. For Code One, they were at the end of the day, between 5 and 7 pm. This worked well, as there were no sessions to compete with and the parties didn’t start until later.
The Java keynote was delivered by Georges Saab and Mark Reinhold. There were no big announcements, which was to be expected. Java users are still adapting to the new, faster JDK release cadence and the fact that the Oracle JDK can no longer be used in production without a Java SE subscription.
Mark laid out some plans for longer-term features in the JDK, updating us on work around Project Valhalla for value types and enhanced generics. This is a big project, so it was good to see progress being made. Mark also did some live coding, showing us how fibers in Project Loom might work. I particularly liked the demonstration of Project Panama, which is a replacement for good old JNI and will be much, much simpler to use (something that is long overdue in Java). What I wasn’t so keen on was the first part of Mark’s presentation that talked about modularity. I’ve really lost count of how many times this has been discussed during JavaOne keynotes (2008, maybe, was the first time). Unless something dramatic changes, let’s not spend over ten minutes during the keynote talking about it.
I didn’t make the second keynote, as I had a customer event to attend. I’ll probably get around to watching it sometime soon. Matt Thompson, who used to run the Technology Evangelism team back at Sun Microsystems, has just joined Oracle and was part of this, which would be interesting to see.
Then, there was the Community keynote. IBM started well with a recap of how things are changing for Enterprise Java now that the Eclipse foundation has taken over management of Java EE under the Jakarta EE branding. They also discussed the work they’ve undertaken for the OpenJ9 alternative JVM implementation. I’m pleased to see IBM taking an even stronger leadership role in the Java space. They’ve recently expanded their developer outreach program hiring Pratik Patel, a solid Java community member to run this.
Lastly, there was what I refer to as the School Play. In the past, we’ve had a Star Wars theme, and last year, it was the Matrix. This year, we were treated to the Marvel superheroes themed, “Groundbreakers: The Code Avengers." I’m not totally clear on the point of this, and, if it was ten minutes (or less), it would be great. I didn’t stay to the end.
Despite my best endeavors, I didn’t manage to attend many sessions that I wasn’t involved in. From what I could see and by talking to other presenters, attendance was good and the facilities were excellent. I’m so glad that the event was in Moscone West rather than at the three hotels that JavaOne was in for a while. It’s much easier to meet people and have those essential hallway conversations in a big open space like Moscone.
I was involved in three sessions:
The first was a BoF at 8.30pm on Monday that also clashed with the JCP awards party. Steve Poole of IBM and myself talked about what’s after the Raspberry Pi for makers and what kind of things can you do. We were both pretty happy that we managed to get an audience that hit double figures. Everyone was really interested and we got a great discussion going.
On Tuesday, I took part in a panel session, “Public Service Announcement: Java Is Still Free!” to discuss recent changes to Java release and update schedule and what people can do to still keep using Java for free. We had representatives from IBM, Red Hat and AdoptOpenJDK, as well as Tricia Gee representing the community. There were lots of good questions and discussion. I think most people now have a clearer view of what their options are early next year when public updates to JDK 8 (and JDK 11) stop.
My last session was on Thursday morning on “JDK 9, 10 and 11: Pitfalls for the Unwary." I had wondered what attendance would be like on the last day, but I had a packed room and even people standing because there weren’t enough seats. Based on the questions I got afterwards, I think this session went very well.
The Groundbreakers Hub
Being in Moscone West meant plenty of room to have an exhibition area and an area for demonstrations (called The Groundbreakers Hub). Azul had a stand, and there was plenty of foot traffic to keep us busy during the breaks. The schedule was also well organized so that there were a couple of periods when there were no sessions, specifically so people would wander the show floor. This is an excellent idea. At some conferences, the only time for people to explore the exhibition area outside of session times is during short breaks between sessions or during lunch when people are busy trying to get food.
The demonstration area was pretty impressive. Stephen Chin, who took the lead in organizing this, did a good job of providing a range of things to amuse, entertain, and educate people, weaving in the necessary Oracle marketing but without going over the top.
Here are a few of the highlights:
- A DJ using Sonic Pi (something I have to try sometime)
- Two escape rooms. I didn’t get a chance to try these, but they required you to solve some puzzles, which were coding-related, I believe.
- The bullet time Raspberry Pi camera array from last year’s JavaOne. I’m sure Jasper Potts, who built this, was happy for it to get another outing.
- Laser etching of wooden coffee coasters. I firmly believe that all good software projects should involve some form of woodwork, so this was definitely good to see (and, bizarrely, smell. You just don’t expect to smell burning wood at your average developer conference).
- The Code Card. According to the website, “Code Card is a Wi-Fi-enabled device with an e-paper display that can retrieve content from Oracle Cloud.” I couldn’t get mine to work at the show, so clearly, I’ll need to spend some time exploring what I can do with the Oracle Cloud.
- Blockchain beer. I do enjoy a beer, but I’m not convinced that I needed one when the show opened at 9.45 am.
- Oracle Education Foundation. This was an impressive selection of projects created by students. Sadly, not much evidence of the use of Java.
I liked Oracle Code One. Much of it had the same feel as JavaOne, and I didn’t feel that Java was being treated as just another technology; it still felt like the most prominent technology at the show.
I think the real test of success will be if there is another event next year (and I have no reason to believe there won’t be since we have already signed up to have a stand there) how popular will it be. My feeling is that it will still attract a decent sized crowd of developers.
What do you think? Will you be there? Leave a note in the comments below!