SAN FRANCISCO Unique implementations and extensions of Java for emerging voice and data cellular devices are threatening what many see as the best hope for unifying this nascent market. Indeed, while handset makers, software developers and wireless carriers at JavaOne here publicly praised Java as the platform of choice for 2.5 and 3G networks, many privately worried that a true unified Java platform for cellular might not arrive for a year or longer.
The problem is that the current version of the standard Java environment for cell phones the Mobile Information Device (MIDP) 1.0 does not address many key multimedia, security and other functions that carriers and OEMs are adding to the platform in devices and services now marching to market. A more-robust MIDP 2.0 was released for public review this month, but it is not expected to appear in phones for a year.
(At JavaOne, Sun Microsystems Inc. rewrote the rules for accelerating Java, rolling out a virtual machine that aims to boost performance nearly tenfold on next-generation cell phones.)
"Until we get to MIDP 2.0, fragmentation of handsets is one of the biggest concerns we have," said David Brudnicki, director of emerging technology for AT&T Wireless' mobile multimedia group, which expects to have a General Packet Radio Service (GPRS) network deployed across the United States by year's end. "The overwhelming feedback we get is that developers don't want to work on five different wireless implementations," he said.
Still, some complain, that's just what they got. Peter Baldwin, vice president of operations for Insignia Solutions (Fremont, Calif.), a supplier of Java virtual machine software, said, "What happened with the first-generation Java phones was a proliferation of proprietary Java APIs [application programming interfaces]." Though some 24 million Java handsets shipped last year, the current MIDP 1.0.3 devices were "a world of one-offs" that may not see commonality until MIDP 2.0 arrives in systems in late 2003, Baldwin said.
Today's cellular world embraces disparate environments, including Symbian, Palm, Qualcomm's Brew and Microsoft's Smartphone 2002 on the high end and small real-time operating-system kernels, such as iTron and Nucleus, used in traditional low-end cell phones. And while no one expects the wide variety of smart phones and voice-enabled PDAs coming to the market to embrace a single Java profile, many fear the amount of variation in Java implementations to date is reaching a danger point.
"If we could get to 90 percent commonality in the Java phone APIs that would be very good," said Topher White, director of technology architecture for Brudnicki's AT&T Wireless group. "Right now I would say it's about 40 percent." White's larger concern is over unifying the market, calling it "an open question whether we will get there even with MIDP 2.0."
One software developer said the situation has gotten so bad in Europe that Japan's mobile communications company, NTT Docomo which keeps a tightly regimented lid on both hardware and software specs could steal the market away from Nokia, Ericsson and the European carriers with its newly launched i-Mode service.
"[Docomo officials] launched their service at CeBit with all kinds of good information services like German train schedules, while the Europeans are arguing about what version of Java and which applications to use," said Joost Backus, managing director of NotTheFly, a small software company in the Netherlands. "NTT could just take over."
Backus criticized Motorola, Sprint and device maker Research in Motion for each having separate MIDP 1.0 implementations sometimes even on different members of a product family. "You can't create one MIDP program to work on all these devices," he said. "That's a myth."
David Yach, vice president of software for Research in Motion, which makes the Raspberry e-mail device now being deployed for GPRS networks, disputed the point. A developer could write MIDP 1.0 programs that would run across a variety of devices and outside the Java world, he said. "Even the same device with more memory in it doesn't work the same way," Yach said.
Defending Sprint PCS' decision to add its own Java APIs for sound playback, image rendering, TCP/IP, Secure Socket Layers and secure HTTP, Paul Reddick, vice president of business development, called them necessary to enable games and business data services over cellular. Sprint is deploying a cdma2000-based service offering speeds up to 144 kbits/second nationwide by year's end. "I sympathize [with the concerns about fragmented APIs], but I don't think you want to see people programming to the lowest common denominator. We have people pushing the envelope and we'd like to see our extensions pushed back into the standard," Reddick said.
Even supporters of standardization find themselves caught up in what many consider inevitable customization.
Nokia, for example, is chairing a Java standards group (JSR 135), which is finishing work on a Java multimedia API that will enable gaming as well as music and video playback on MIDP devices.
"We want to avoid extensions as much as possible," insists Randy Roberts, director of digital convergence for Nokia Mobile Phones. "Fragmentation impedes growth of new services and the market as a whole, so it's important to stay as standard as possible." Nevertheless, Nokia is supporting four display sizes in its upcoming devices for 2.5G networks, and only one of them is the same as the four new screen sizes Motorola supports in its upcoming phones.
A Panasonic software developer working on cell phones said that writing to high-level APIs will mask problems with applications running on devices with differing displays. But Backus of NotTheFly disputed that, saying the high-level APIs are good only for controlling rudimentary actions on a display.
Some cell-phone makers are telling developers to write Java applications for some of their phones, but asking them to write apps to native operating systems for others. At Motorola, for instance, "we see Java running across the platform," said Joe Coletta, director of applications management for Motorola's Personal Communications Sector. But the company will encourage developers to write native Symbian apps and maybe Linux apps, too for its high-end models, he said.
"We're looking at Linux and Symbian for the high-end [phones]. Linux could be in the midtier [phones], too. We are still understanding what it takes to build a Linux product," Coletta said.
Sony Ericsson has been showing phones using a run-time environment from a small company called Synergenix Interactive AB, which provides a non-Java run-time environment called Morphun on a proprietary Sony Ericsson operating system. The software combo lets the cell-phone maker provide graphically interesting games and other applications on phones that would sell for less than a Java-based phone, a Sony Ericsson spokesman said.
Another area yet to be standardized for MIDP is security. Sun Microsystems Inc. announced at JavaOne that a new group (JSR 177) will start working on an API for Java that could allow a standard way of securing cryptographic calculations and stored private keys. Ten carriers from around the globe including the United States' Cingular, Japan's Docomo and England's Vodaphone are participating in that work, which is expected to consider using Java Cards but will not have a deliverable spec for about a year.
Separately, Siemens heads an effort to develop a telephony API that will enable a standard way to handle chat applications in Java. And PalmSource is leading another group to define a Java API set for full-fledged personal digital assistants.
Rob Gingell, chief technology officer for Sun's software group, agreed that MIDP 1.0 platforms are being fragmented by proprietary extensions, but said it was not a cause for grave concern. "I think there's some truth to the reports that there's some variations going on, but that's part of the process. Standards always have a wave of innovation in front of them," he said.
Brudnicki said AT&T Wireless was taking a more-activist stance, "working closely with device makers and Sun to drive a set of reasonable and consistent features for everyone to adopt with MIDP 2.0."
The Sony Ericsson spokesman said he believed Nokia's Open Mobile Architecture (OMA) initiative, launched at Comdex last year, will provide the best forum to hammer out those minimum standards.
While that work goes on quietly in the background, Sun used the bully pulpit of JavaOne to trumpet its ostensible success deploying Java devices, primarily cell phones. Richard Green, general manager of Sun's Java and XML division, said a market research study projects that 109 million devices running Java will have shipped by year's end and the number will top a billion by the end of 2006. Five of the top U.S. carriers will deploy Java services by the end of the year, he said in his JavaOne keynote.
Jouko Jayrynen, a vice president for Nokia software, called 2002 "the year of wireless Java."
"Nokia alone will ship tens of millions of Java devices. Even our competitors are joining our camp happily," he said.
At the conference, Nokia rolled out a Web-based service to help carriers find and sign contracts to deploy Java applications, even ones written for competitors' phones. "We are trying to make a market here," Jayrynen said.