There was much to like (and some to dislike) about JavaOne 2011. In this post, I look at my impressions of the good, the bad, and the ugly of JavaOne 2011.
JavaOne is famous for its announcements and this year's edition was full of them. Here are some I found most interesting (in no particular order).
- Oracle NoSQL Database
- JavaFX 2.0 for Windows GA
- JavaFX 2.0 for Mac OS Developer Preview
- JavaFX 2.0 to be fully open-sourced
- JavaFX 2.0 to be proposed to JCP (Java Community Process) for standardization
- JavaFX replacing Swing as Java client side technology; Oracle not investing in new Swing features
- Twitter to join OpenJDK Project
- Twitter to join JCP
- JDK 7 for Mac OS Developer Preview
The technical sessions tended to be strong technically and even the keynotes generally had sufficient level of technical content. I focused on presentations involving core Java concepts, alternative JVM languages, and JavaFX, but was able to see some presentations on topics as diverse as cloud computing, JAXB, and REST.Good: Networking and Community
There were many "big names" in the Java world present at JavaOne 2011 and it was nice to meet some of them and to see some of them speak. It was also nice to get a feel for the diversity of concerns and needs of the Java development community.Good: Ideas to Take Home
There are too many good ideas that I want to take back home with me to play with and possibly blog about in select cases. Here are some of them, though I acknowledge now that I know I won't get to some of these anytime soon if at all.
- More experimentation with HotSpot JVM performance options
- Experiment with Serialization Proxy Pattern
- Experiment with building with Gradle
- Experiment with JavaFX, GroovyFX, and JavaFX Scene Builder (when available)
- Learn more about Java bytecode
- Experiment with some of the classloader examples
- Experiment with Groovy 1.8 features that I've not already used
- Experiment with Project Lambda
- Experiment with Project Jigsaw
I mentioned in my review of JavaOne 2010, "It seems to me that Groovy has either reached or is very close to reaching that point where it is no longer new or unusual to the majority of conference attendees." This definitely seemed to be even more the case this year at JavaOne 2011. I wasn't the only one with this impression: Dierk Koenig wrote, "It appears that in the mainstream, Groovy has become the default choice for dynamic programming on the JVM."Bad: Limited Resources
The good news was dramatically increased interest in and attendance at JavaOne this year as compared to last year. The bad news is that not everyone seemed prepared for that large number. The restrooms were frequently out of paper towels and hand soap early in the week and I was only able to get the Wifi to work on a very sporadic basis.Bad: Hotel Logistics
Many of the same negatives associated with hosting the sessions in the hotels remained issues this year because nothing was really different. I actually welcomed the opportunity to walk between the buildings to get fresh air and reinvigorate myself, but walking between the seemingly more narrow when crowded halls (especially in the Hilton) was not a positive experience in all cases. It didn't help that some attendees were more focused on their mobile device than on getting from Point A to Point B. Long conference rooms were okay for hearing and seeing the speaker, but did not lend themselves to seeing the screens that were not very far above the crowd. Because the screens are so low in many of these long conference rooms, it is difficult for attendees past the first several rows to see significant chunks of the screen. One idea that would help is if the slides were made available prior to or at the conference so that people could follow them on their laptops, mobile devices, or even printed hard copies. This would not help with the code examples shown in IDEs and on the command-line, but it would help with the slides. I noticed many people taking photographs of screens with reference details and having current access to slides would reduce the need for that as well.Bad: The Weather
Last year, when it was the Mason Street Tent between Hilton San Francisco and Nikko Hotel, we had beautiful weather. This year, when it was the open area Mason Street Cafe between those same two hotels, we had rain and inclement weather nearly every day. Truth be told, I don't mind this type of weather as long as it's not down pouring. I like cooler weather as long as I'm not getting really wet in the cooler weather. However, there is no question that the weather dampened some of the outdoor activities. I'm just waiting for someone to blame Oracle for the bad weather.
This is a particular subset of categories I've already mentioned (logistics and over-running keynotes), but the combination of these two led to a particularly ugly scene. The staff was throttling how many people could exit the Hilton Ballroom area at a time after the keynotes ended. This wasn't as big of a deal with the Technical (Opening) Keynote because people had left in large groups throughout the session from the time Mark Reinhold's presentation ended up until the actual end of the session which went well past its advertised time. This length of time seemed to distribute the exiting more naturally. A much higher percentage of attendees stayed for the entire Strategy Keynote and this led to a problem as the number of people allowed to leave was artificially throttled at the top of the escalator. It meant many people being late to the first of the technical sessions that day.Ugly: "Queuing" for Presentations
Several of the sessions had long queues forming as either the previous session was getting out or the next session was not yet allowing entry. Sometimes these queues backed into the main hall thoroughfares. This was most problematic in the hotel (Hilton San Francisco) with the most conference room space.Ugly: Keynotes Java Rapper Video
The looks on most attendees' faces seemed to be a mixture of disbelief and confusion. I even had people not attending the conference sending me e-mail and text messages asking what was going on at JavaOne when seeing the Java Life video. The video and lyrics are available here. It does seem to have gone viral among Java developers.The Incidentals: Miscellaneous Observations
There were some things that happened this week that did not directly affect nor were directly affected by JavaOne 2011, but which happened at the same time and were watched by conference attendees. Apple's long-anticipated announcement of the iPhone 4s may have been slightly disappointing because iPhone 5 was anticipated, but truly sad news was received a couple days later when we learned of the passing of Steve Jobs. Jobs' unique mix of creativity and technical genius have been shown again and again via his involvement in the development of the personal computer, iPod, iPhone, iPad, and Pixar. As much as I loathe iTunes (the software, not the site), I must admit that it helped changed the music industry and the way we all purchase and listen to music.
I occasionally speak at conferences and so try to pick up good practices for my own presentations from speakers that I watch. I also try to observe which practices are not so effective and either avoid them myself or remove them from my own presentations. One such observation that I realized again this year and seem to realize at every conference I attend is the importance of limiting the time "spent in the IDE." I know presenters do this because we're all comfortable with IDEs, but the truth is that it is easier to see code in slides when the slides are carefully prepared, have color syntax highlighting, and focus only on what's important. Slides are often easier to see than IDE text in these large rooms of JavaOne. It takes a lot more work for a speaker to put code into slides with a nice presentation like that given in the IDE, but I think it's one of the best things a presenter can do for his or her attendees. If this is not possible, the next best thing s to make very quick excursions to the IDE (not long enough to need to sit down) and to use a very large font and make it obvious what one is looking at.Conclusion
Although JavaOne 2011 had its good, its bad, and its ugly, the good dramatically outweighed the bad and the ugly. Although it's good that it's over because I don't know how much more I could have crammed into my mind and I want to go start trying some things I learned, I will miss it as well. If JavaOne 2012 is held simultaneously with Oracle OpenWorld again, it will be scheduled for September 30 - October 4, 2012.