While the number of phones is large compared to the number of personal computers, the market for developers of sophisticated mobile applications has been struggling to find its place, writes Rob Bamforth, of Bloor Research.
Two major challenges are the diversity of proprietary platforms that mobile phones are based upon, and the sheer rate of change as phones become smarter, faster than users can cope. That's before we look at how applications should be sold, and what part the operator infrastructure must play.
Open operating system platforms that span multiple phone manufacturers help, and of course there is Java.
One perceived problem with Java for small mobile devices is there have been several versions, or more correctly Application Programming Interface (API) profiles, for the device manufacturer and developers to consider. Not so much "write once run anywhere", more "right once, wrong somewhere else".
This may largely have been a problem of perception, but a problem none the less. The release of Mobile Information Device Profile (MIDP) in 2000 started to address this problem, and with the backward compatible release 2.0 due to appear in many devices in 2004, developers should find the high volume common platform they need. MIDP is the 'low end' profile of the Java 2 Platform, Micro Edition (J2ME) which is currently available in almost 100 million handsets.
So problem fixed, how about perception?
At the recent JavaOne developer conference in San Francisco, Sun and the major players in the mobile industry announced initiatives to support the application development community.
First, Motorola, Nokia, Siemens, Sony Ericsson and Sun announced plans to combine their individual application testing and certification programmes into a single initiative. This makes financial sense to the companies involved and will also create a single way for developers to verify their applications.
Sun will license a Java logo for applications verified against the unified test criteria. The participants want to make this a symbol of quality in the wireless industry. From a developer perspective it should mean lower development costs and faster time to a wider market. From a user perspective it should just mean more applications and services will consistently work on more devices.
Sun also announced a new developer support initiative specifically for developers targeting the mobile arena, the Sun Developer Network Mobility Program. Essentially it's a pulling together of collateral and services that would be useful for anyone intending to develop mobile applications. It's also a route for the applications testing, verification and ultimately a Java branded seal of approval. The approval is based on conformance testing, not quality or functionality, however, but it's important to ensure users know that an application will work.
Certification also brings other benefits such as submission to Sun's Content Catalog. This is a content aggregation portal for business to business applications. It will be accessible by operators and handset vendors who will also participate in the programme.
It's a timely step. Sun with Java, like Microsoft with DOS, Windows and lately .net, realise the important truth. Make it easy for developers on your platform to do business, and they will. More developers bring more applications, which leads to more platform sales, which lead to more developers and the completion of the virtuous circle.
The challenge for Sun and the other participants is to provide the consistency over time, as the return on development investment for serious applications is far longer than that for shareware and simple games.