Articles
Java Platform, Standard Edition
|
|
| By Janice J. Heiss, November 2006 |
|
At the JavaOne conference in May 2006, Sun Microsystems announced its intention to open source Java technology. Now, Sun plans to open source most of the Java Platform, Micro Edition (Java ME) by the end of 2006 and much of Java Platform, Standard Edition (Java SE) by early 2007. To get up to date on what this means for Java ME developers, we met with Shannon Lynch, Sun's senior director of Mobile & Embedded platforms.
Why has Sun decided to open source the Java ME platform?
We want to accelerate the growth and adoption of the Java ME platform by enabling developers to participate fully in its creation and evolution. By open sourcing Java ME, we hope to inspire a robust and active community around the creation of the next generation of applications in this space.
|
|
"We want to provide complete transparency and feedback into Sun's development of Java ME implementations."
Senior Director of Mobile & Embedded Platforms, Sun Microsystems |
The Java ME components to be open sourced include Sun's CLDC (Connected Limited Device Configuration) and CDC (Connected Device Configuration) optimized implementations, along with Sun's compatibility and testing tools. This includes the Java ME framework, which provides a platform to enable JSR TCKs (Java Specification Request Technology Compatibility Kits) to be more easily created, plus the Java Device Test Suite (JDTS) framework that enables the creation of additional tests for quality. In addition, we plan to open source JavaTest software, the test harness that supports both of these frameworks.
We want to provide complete transparency and feedback into Sun's development of Java ME implementations, and simplify the process of obtaining, evaluating, and becoming familiar with Java ME source code. We expect this to increase the speed of implementation, result in faster bug fixes, accelerate the adoption of a single platform, and drive implementation consistency up and fragmentation down. We are creating a community for open and collaborative development of Java ME applications and technologies.
Tell us more about this community.
There are several dimensions. We are creating a web site for open-source Java ME developers that will enable them to access documentation, source code, and tools to download, compile, and execute Java ME projects. We will provide the necessary infrastructure for discussion and collaboration, including mailing lists, web forums, and wikis, along with timely information on the latest progress in the community and roadmap direction. We are eager to work with the community to meet its needs and will be assessing the best ways to share information and enhance developer productivity.
|
"We are creating a web site for open-source Java ME developers."
Senior Director of Mobile & Embedded Platforms, Sun Microsystems |
|
Many of our Java ME engineering experts will be spending significant amounts of their time blogging, reviewing papers, and speaking in public to promote communication and foster the open development of the Java ME platform.
We want transparent and collaborative development that enables consistent platform behavior, drives functionality, and ensures the high quality that will accelerate platform growth.
Why would a Java technology developer working on an open-source project want to contribute to the Java ME platform?
This is an opportunity for a developer to participate in the creation and evolution of Sun's Java ME implementations, which will help to increase speed of innovation and decrease development time. Developers will be able to influence the direction of the Java ME platform and possibly make contributions that could end up in hundreds of millions of devices.
Why is Sun open sourcing Java ME now, rather than earlier or later?
The wireless industry is moving faster than ever. We need the community's help to make sure that the Java ME platform evolves in the right direction and at the pace that the industry wants. Open sourcing Java ME now is the best way to ensure that the platform remains the most compelling platform in the industry for targeting and developing applications.
Tell us how open sourcing Java ME may affect the Java Community Process (JCP) program.
Open sourcing Sun's implementations of Java ME will not change the JCP. The JCP maintains its critical role as the governing body for evolving Java technology standards. Compatibility will remain as important as before. Compliant JSR implementations will continue to be required to pass the TCKs. Sun TCKs will continue to be distributed as they are today.
What can you tell us about licensing?
Sun has chosen a GPL v2 license, which creates balanced incentives for compatibility while maximizing the adoption of Java technology. It is a "copyleft" license, which means that if someone makes modifications to the source code and distributes the modified code, they must make the source for all of their modifications available. We think this is fair.
Sun is making its Java ME source code, our world-leading technology that we have been developing for more than 10 years, available to developers. In return, we ask that developers reciprocate by giving back to the Java community too.
Will open sourcing Java ME stop the spread of fragmented implementations?
Open sourcing Java ME should help reduce fragmentation and benefit application developers and service providers. For example, the adoption of a common implementation across handsets will significantly reduce the development, testing, porting, and maintenance costs associated with the creation and deployment of mobile applications over a wide range of mobile handsets.
How might original equipment manufacturers (OEMs) benefit from the open sourcing of the Java ME platform?
OEMs and ODMs (original design manufacturers) who help develop and maintain the open-source Java ME implementations and then use commercial versions of these implementations will reduce their development costs and decrease their time to market. They will become more competitive by delivering a differentiated product to the market sooner.
Third-party component vendors, such as graphics engines companies, chip vendors, and so on, will also have a new opportunity to gain access to and integrate their technologies into the open-source code base. This will enable their components or products to be more easily delivered to their customers through commercial implementations based on the open-source code base. So not only do OEMs and ODMs have an opportunity to benefit from the Java ME open-source code base, but so do third-party technology vendors. And of course, a major value for the OEMs is that community development allows them to leverage accelerated platform innovation.
How will commercial licenses be affected?
Existing commercial licenses for Java ME source code will not change. Licensees will continue to receive the industry-leading value from Sun's commercial implementations as they do today. And they will retain their full rights to use the Java ME source code, along with access to the TCKs and fully tested and productized solutions per their license agreements. They will continue to have access to the Sun licensee web site, knowledge bases, and engineering support for source code and TCKs.
How does Sun plan to make money on Java ME technologies once they are open sourced?
Sun will continue to offer commercial implementations along with engineering services and support to fit customer needs. We will continue to monetize the business and help reduce the implementation and maintenance costs for our licensees.
What opportunities will this open up for the Java ME platform itself?
Open sourcing Java ME will accelerate the adoption of a single platform, driving more implementation consistency and reducing fragmentation. It will also enable faster innovation of the platform and give developers earlier access to the latest innovations.
What kinds of things can a developer do with open-source Java ME right away?
Many things.
First, developers will be able to download our Java technology code, build it, and run applications with it. Initially, developers will find projects related to feature phones, and very soon, new projects related to advanced phones will be launched. Developers will be able to make code contributions such as bug fixes and proposed enhancements.
|
|
"Sun's open sourcing of Java ME reflects our desire to enable developers to have greater influence on the evolution of the industry-leading technologies that Sun has created."
Senior Director of Mobile & Embedded Platforms, Sun Microsystems |
Second, they will be able to access our JavaTest harness and the ME framework for testing Java ME technology-enabled devices. These test tools will also be developed in the open, so developers will be able to contribute to the evolution of these code bases as well. These tools and code bases can be found under the cqME project, which is dedicated to promoting the quality and compliance of Java ME technologies and applications.
Finally, we have the Application Developer project in the Mobile & Embedded community, where developers can find useful information and resources for creating Java ME applications, as well as links to application developer tools such as the NetBeans IDE Mobility Pack and the Sun Java Wireless Toolkit.
How does open sourcing the Java ME implementations fit into the larger picture of Sun open sourcing the entire Java platform?
Sun's open sourcing of Java ME reflects our desire to enable developers to have greater influence on the evolution of the industry-leading technologies that Sun has created and to provide them with the best tools and resources to create applications.
Do you have any final messages to developers?
ISVs, application developers, and content developers are key participants in the Mobile & Embedded community. We want to ensure that the community operates in a transparent and collaborative manner. The open-source community has done wonderful work, and we want to use the skills, experience, and knowledge in the community to develop the most innovative and exciting Java ME platform in the industry -- one that becomes the target for all content and application developers.
We believe that early access to innovations through open-source development and frequent releases will benefit everyone in the Java ME technology ecosystem. To make Sun's transition to open development of Java ME successful, we ask for your input. We need you to contribute to this initiative by telling us how we can improve and by participating in the community and projects. We invite you to participate in blogs and forums, to write articles, and to share your ideas.
Java ME Open-Source Site
Open Sourcing the JDK
Java ME APIs and Documentation
Java ME Reference
James Gosling on Open Sourcing Sun's Java Platform Implementations, Part 1
James Gosling on Open Sourcing Sun's Java Platform Implementations, Part 2
Opening Up: Laurie Tolson on Open-Source Strategy for the Java Platform
Step up the Java Technology Ladder: A Conversation With Sun's Director of Product Marketing for the Java SE Platform, Jean Elliott
Java Community Process (JCP) Program
cqME Project: Compatibility and Quality for Java ME
Application Developer Project
PhoneME Project
NetBeans IDE Mobility Pack
Sun Java Wireless Toolkit