Sun Finishes Freeing Java, Debuts JavaFX
Sun released a fully buildable Java Development Kit (JDK) for Java SE (Standard Edition) to the OpenJDK community on Tuesday, fulfilling the pledge it made at last year's JavaOne conference to free the source code and licensing of its Java development platform. The company also took a significant step toward loosening its grip on the technology it invented: Sun formed a governing board for OpenJDK on which company outsiders will hold the majority of seats.
"Java everywhere," Sun's longtime goal and mantra, was a theme of Tuesday's keynote. Open-sourcing the platform is one way of extending Java's ecosystem, but Sun is also rolling out new development initiatives to further its growth. One splashy project, unveiled Tuesday: JavaFX, a new family of products tailored for rich-application development, particularly on mobile devices.
Sun had few concrete details to offer about JavaFX, which is still in an embryonic state. A new programming language, JavaFX Script, will enable developers to use scripting-language techniques to build rich-media content for deployment on Java-enabled devices. The language, now in alpha state, will eventually be released as open-source code, and will be supported with free developer tools, Sun executives said.
The JavaFX line's debut product is JavaFX Mobile, a full mobile operating and application-deployment platform built around Java and Linux. A step up in robustness and completeness from Sun's Java ME (Micro Edition), JavaFX Mobile could make its way onto devices from Sun partners by early 2008, according to Green.
Now used by 6 million developers and running on 5.5 billion devices, according to Sun's estimates, Java is living up to Sun's ambitions, Green said. Having conquered the technology market, the next goal is to extend Java's reach even further: "When we look at the scale with which we operate, the only next step is reaching all of humankind," he said. "When we thinking of next steps, 'everybody on Earth' is the biggest step of all."
Green threaded his keynote with examples of the broad reach of Java and open-source ideals. Telecommunications behemoth Ericsson announced plans to donate technology and development resources to the Sun-led Glassfish community to create a communications application server, enabling developers to build VoIP, instant messaging and other multimedia functionality into their Java Enterprise Edition applications.
Sun built the case for its "everybody on Earth" aspirations by inviting United Nations representative Djibril Diallo, director of the New York Office of Sport for Development and Peace, on stage to talk about the advantages of using technology to bring communications and information access to the world's developing regions. Later, Diallo appeared at a joint press conference with Green and Sun CEO Jonathan Schwartz, at which Schwartz reiterated his signature argument that expanding technology infrastructure and Java's ubiquity will also expand Sun's sales.
"We not only plan on changing the world, we will," Schwartz said.
Tactically, though, the day's big news was the OpenJDK kickoff and JavaFX's announcement.
Sun appointed five members to the OpenJDK Interim Governing Board, which will draft an OpenJDK constitution and create a process for electing board members. Sun will hold two spots on the board, currently filled by Simon Phipps, Sun's chief open-source officer, and Mark Reinhold, chief engineer of Java SE. Three board spots will be filled by representatives elected by OpenJFK community members. On the appointed interim board, those spots are held by Doug Lea, an active Java developer and professor at the State University of New York at Oswego; Fabiane Biznella Nardon, CTO of Brazilian healthcare IT provider ZILICS and a Java.net community leader; and Dalibor Topic, a Free Software Foundation activist and co-maintainer of the kaffe.org virtual machine project.
The OpenJDK source code Sun released Tuesday includes more than 6 million lines of code. A few bits of functionality have not been open-sourced; they remain "encumbered" code for which Sun does not own the IP (intellectual property) and couldn't secure release rights. Sun has released binary plug-ins of the encumbered features, which include graphics and font rasterizers. Sun's hope is that community developers will quickly step in create new replacement code duplicating the encumbered functionality, executives said.
On the JavaFX front, plans remain more nebulous. The platform's catalyst was Sun's acquisition, announced last month, of mobile Java technology developer SavaJe Technologies. Sun married SavaJe's technology with scripting-language technology developed in-house by engineer Chris Oliver, who created the project on his own to explore the possibilities of exploiting Java for easier GUI (graphical user interface) development.
JavaFX remains fledgling, with only an early version of the language and no developer tools available yet. One analyst at JavaOne, RedMonk's Stephen O'Grady, said he suspects the timing of JavaFX's announcement had more to do with competitive positioning than the technology's readiness. With Microsoft's Silverlight preparing to go head-to-head with Adobe's Flex platform and Flash client, the rich-application development market is becoming a high-profile battleground.
"I'm sure they face the question all the time: 'What are you doing about rich-client development?'" O'Grady said. While developers are eager to use scripting languages, the approach so far has been to build Java implementations of popular languages like Ruby. Wooing developers to a new language, JavaFX, will be an uphill battle, O'Grady suspects: "It's a very, very crowded field. It'll have to be very solid to attract people."
As a sign of JavaFX's infancy, even its name is subject to change. In a session with reporters after JavaOne's opening keynote, Schwartz repeatedly needled Green about the JavaFX name, quipping at the start, "Doesn't it just roll off the tongue?" Later, making a point about grassroots innovation at Sun, Schwartz drew laughs with the barb, "Chris Oliver was not tasked and told 'please go develop JavaFX Script.' He certainly wasn't told to name it that."