Tuesday, October 4, 2011

JavaOne 2011 Strategy Keynote

It is difficult to say for certain which session of JavaOne 2011 I have most eagerly anticipated, but this JavaOne 2011 Strategy Keynote certainly would be one of the favorites for filling that role. Held in the same Hilton Grand Ballroom A/B that the JavaOne 2011 Technical (Opening) Keynote was held in yesterday morning at the same time, this Strategy Keynote began with an address from David Ward of Juniper Networks ("Programmable Networking is SFW (Safe for Work)"). As his portion of the agenda states, his focus was on "how programmable networking is critical to application development." He made the point that "applications [are] made better by [using] information from [the] network" and "networks [are] made better by [using] information from [the] application." Like Intel, who had a portion of yesterday's opening/technical keynote, Juniper Networks is a Diamond Sponsor of JavaOne 2011. Ward was given the first 30 minutes of the 90-minute keynote session.

Hasan Rizvi followed Davis Ward. He mentioned that it had only been roughly 1 1/2 years since Oracle's acquisition of Sun. One of his first slides was titled "Java (like Space) is Big. Really Big." He stated that, "The Java community is the largest, most vibrant community." He then announced release of JDK 7 for Mac OS X Developer Preview and hoped that he had not stolen the thunder from "Apple's other announcement today.<"/p>

In an apparent effort to establish Oracle's willingness to collaborate with the community, Rizvi had Jason Gartner (IBM), Dr. Mark Little (Red Hat), and Steven Chin (Intel) [not to be confused with Stephen Chin].

Adam Messinger presented a slide on "Design Objectives" for "Java SE - Moving Forward." These design objectives for Java SE included "write once run anywhere" and being a platform for multiple languages. He cited key statistics of "9 million developers worldwide" ("more people speak Java than speak Swedish"), Tiobe #1, #1 development platform, and runs on 97% of enterprise desktops.

Messinger said a 2-year interval is being proposed between Java 7 and Java 8 to enable more time for certification. Oracle plans to take advantage of extension from late 2012 to summer 2013 for a Java 8 release to modularize the JDK with Jigsaw. Project Nashorn was again mentioned as well. Messinger also had a slide focused on NetBeans and its "Day one support" for Java SE 7 and JavaFX 2.0.

Messinger had Rob Benson (Twitter) come to the stage to speak. Benson said there were "multiple reasons we went with Java." Benson cited numbers indicating huge traffic now and expected for the future. The ability to support multiple languages is also used at Twitter where they use Java, Scala, and Clojure. Twitter was looking at investing in a large, strong open source community and Java fit that bill. Benson announced that Twitter is joining the OpenJDK and the JCP.

Messinger stated that he had confirmed his suspicion that Sun intentionally made JNI difficult to use. Oracle plans to not only further support multiple language JVM, but to also improve Java/Native Integration.

Messinger stated that JavaFX is Oracle's "long-term client solution for Java." He cited JavaFX's modular architecture, being built on Java and in Java, advanced tooling, and plans to deliver true cross-platform support. They showed JavaFX running on a Windows-based tablet and then on a Samsung Galaxy as evidence of their aim to be cross-platform.

Oracle will first open source JavaFX components and then the rest of the framework. Messinger said they will work with OpenJDK to get it included and then will strive to get it standardized as part of Java SE. Finally! In just a few sentences, Messinger answered some of the concerns that I have postulated about JavaFX. Between JavaOne 2010's announcement of replacing JavaFX Script with Java APIs and Messinger's announcement about open sourcing JavaFX and making it part of Java SE at this year's conference, JavaFX is beginning to look like a truly viable alternative. JavaFX has come a long way since Sun's 2007 JavaOne over-hyping and (if Oracle can deliver what Messinger talked about in today's session) will likely have a bright future.

Messinger said that Oracle plans to "bridge the Java SE/ME divide." They plan to synchronize SE and ME releases. They want every ME API to run on SE as a "proper subset" and they want consistent tooling across the two. Oracle intends to use modularity features of Java SE 8 to build "CDC Profile." JavaFX is the primary intended graphics framework. Messinger also showed a slide "Java ME/Embedded Roadmap Milestones" indicating plans to merge Java SE, Java ME, and CDC.

Cameron Purdy followed Adam Messinger and presented on Java EE. He talked about Java EE design objectives such as enhanced productivity, portability "across vendors and infrastructure," extensibility with non-Java EE frameworks, and "rightsizing." There have already been "40+ million Java EE 6 Component Downloads." Purdy had a slide titled "But the Cloud is Making Developers Restless" that included the assertion that "the Java EE platform will be the PaaS Standard."

Purdy stated that EclipseLink is using multi-tenancy support that Java EE 7 is bringing. He stated, "This will be built into the next version of JPA and is already in EclipseLink." Purdy also announced the caching API, JSON support, and further REST support going into Java EE 7. Purdy also emphasized Oracle's collaboration with partners in development of Java EE.

Sean Comerford, ESPN Site Architect, talked about ESPN switching from proprietary containers to open source containers. They selected GlassFish and are using several portions of the Java EE specification. Comerford said that ESPN needs to be able to support a wide plethora of devices to provide sports news to anyone at anytime. They are using JAX-RS and CDI to make this simpler and the opportunity to use the cloud "out of the box" could make their job easier.

Adam Messinger returned to the stage to discuss Project Avatar (not to be confused with this Project Avatar) and started by talking about HTML5. Oracle's Project Avatar is intended to be a "complete solution for dynamic rich clients" built on the pieces already available and coming in Java SE, Java EE, and Java ME. The plan is to have applications that are a hybrid of Java and HTML5 for mobile devices. This should work even on the iPhone because the JVM will be embedded within the application downloaded from the app store. Messinger summarized Project Avatar as "HTML5 integration for Java."

The session went about 5 minutes over, but that is not nearly as bad as how long the opening/technical keynote went over. There was a lot of content (especially in the last hour) in this 90-minute keynote.

Conclusion

The JavaOne 2011 Strategy Keynote delivered some major announcements that helped meet the lofty expectations for this session. These include the following:

  • Java SE 8 scheduled for summer 2013
  • Release of JDK 7 for Mac OS X Developer Preview
  • Twitter joining OpenJDK
  • Twitter joining Java Community Process
  • JavaFX to be open sourced, added to OpenJDK, and standardized as part of Java SE
  • JavaFX running on multiple platforms is important to Oracle
  • Easier Java/Native integration is coming
  • Project Avatar

For many of us, Java keynotes are traditionally about the big announcements and it was nice to have just that delivered in both yesterday's opening/technical keynote and in today's strategy keynote.