Last year's JavaOne conference introduced the world to the potential of Java for consumer devices. The Java 2 Platform, Micro Edition (J2ME) debuted, and a critical piece of its implementation for mobile devices -- the K Virtual Machine (KVM) -- made a big splash, with thousands of Palm V PDAs available at a significant discount to attendees.
This year, JavaOne realised much of the potential hinted at in 1999. Whereas last year's attendees were teased with early-access technology bits, prototypes, and overviews, this conference has been jam-packed with real devices soon to reach consumers, technical details on the J2ME technologies that power these devices, and contests and tools to fuel the development of interesting applications and services for J2ME-based gadgets.
J2ME technologies move into release and deploymentThe biggest technical developments in the J2ME-for-wireless space include the release of the Connected, Limited Device Configuration (CLDC) 1.0 specification and reference implementation, and the public review of the Mobile Information Device Profile (MIDP) spec, which was accompanied by an early-access implementation release.
The CLDC specifies the core API and virtual machine features required to support Java technology on small mobile devices such as cellular phones, two-way pagers, and PDAs. The reference implementation of the CLDC uses the KVM, now in release 1.0.
The MIDP builds on the CLDC foundation by specifying additional APIs and technology required for mobile information devices. The MIDP document specifies user interface, networking, messaging, and related aspects of the programming environment for these devices. It introduces the critical concept of a midlet, a small Java application written to the CLDC and MIDP APIs and that runs in a mobile information device.
Incremental updates have also been made to many other J2ME technologies, including Personal Java and Java Card.
J2ME development tools and IDEs debut
Quite a few manufacturers that had announced their interest in exploring J2ME-based devices in 1999 were discussing real devices and commercial availability at this year's JavaOne conference.
Companies making J2ME-related product announcements this year include Research In Motion (RIM), with its Blackberry two-way handhelds, available immediately; LG Electronics, with its J2ME-based CDMA mobile phones, scheduled for sale and network deployment in Korea starting next month; Sega Electronics (Personal Java for Dreamcast consoles); Nokia (Java for its upcoming EPOC-based mobile phones); Sony (for its mobile phones); and American Express (Java Card for its Blue credit cards).
RIM's Blackberry Java Development Environment simulating a RIM 957 with J2ME applicationsAlong with these product announcements came development contests and, thankfully and finally, some real tools. Motorola, for example, ran a J2ME development contest called "Java Jam" and announced the winners at the Thursday-morning keynote by Motorola CEO Chris Galvin. Other demos during his address previewed a fascinating upcoming Motorola product known as the Personal Information Communicator.
Other contests kicked off at this year's JavaOne include:
* RIM's J2ME Development Contest
* Sega's Dreamcast Java Contest
* American Express's Code Blue Contest
* SIMagine 2000, a GSM SIM contest sponsored by several companies (lead sponsor is Bull) * Espial's Smart Device Developer Contest Many of these contests offer significant prizes, in addition to peer and industry recognition. And all of them provide participants with access to free or inexpensive development tools for devices.
In fact, CDs containing RIM's Blackberry Java Development Environment (JDE) Early Access version were handed out at the company's pavilion booth and at email stations around the conference.
Other companies that demonstrated J2ME development tools include Motorola, which offered several, including a mobile phone IDE and a module for adding J2ME wireless development capabilities to Metrowerks's CodeWarrior; and Borland/Inprise, with its JBuilder Handheld Express.
The time is now
Real J2ME-based devices are on sale today; network operators are beginning to deploy the technologies to support downloadable Java code to devices; and ASPs and traditional ISVs are currently developing software based on J2ME.
Tremendous opportunity abounds, especially in the wireless world. Now that the technologies are ready, developers are moving rapidly to build and deploy real solutions to Java-powered devices.
I would strongly encourage anyone who is interested to learn more about J2ME and start developing now. Today is a great time to be a device application or service developer.
Bill Day is a technology evangelist at Sun Microsystems.