Feeds

How Ellison could fight Google's Android - without lawyers

Lessons from Java's painful past

  • alert
  • submit to reddit

Combat fraud and increase customer satisfaction

First, the good news. Java on mobile phones has been a palpable success. Installed on eleven billion mobile phones worldwide, Java ME is one of the most widely available software development platforms - ever.

Its APIs are powerful and a pleasure to program with (as long as you're targeting a single device, of course). Also, the Sun Microsystems team did a sterling job of integrating NetBeans with connected profiles, making it easy to create MIDP apps - MIDP, or Mobile Information Device Profile, being the most common Java ME profile for phones.

At this week's OpenWorld in San Francisco, California, Oracle chief executive Larry Ellison's hucksters will be pushing MIDP hard. In theory, MIDP has a compelling story: as a single layer in the phone stack, it can go places Google's Android - the subject of law suit launched by Oracle - can't. Pretty much any modern phone can have a MIDP implementation, and most do.

Victim of history

And yet, developers don't seem to like MIDP. Corporations aren't interested in creating products for it, and it's just never enjoyed the same "fanboi-ism" as Apple's iPhone or Android. Despite its short history, Android already has over 80,000 apps available. By comparison, considering the number of MIDP devices out there, the rolling tumbleweed state of Java ME development suggests that something has gone horribly wrong.

Java ME is a victim of history. As a first-mover in the mobile phone market, it's the product of an era when phones were far more limited. In those days it was necessary to provide a hobbled language with certain packages and API functions missing.

But times change. Increasingly, bemused developers have asked why they couldn't now have the full Java SE on their phone. After all, OSX can be squeezed into an iPhone, and Linux plus the awesome Dalvik virtual machine fit neatly into a growing army of Android devices, while scaling seamlessly up to tablet size. Android runs a subset of Apache Software Foundation's (ASF's) Project Harmony, and implementation of Java SE, with the Dalvik VM.

Java ME was also a victim of circumstance. Instead of being a phone's software stack, it slots neatly into a manufacturer's own stack and operating system. Its reliance on differing implementations of phone and operating system services provided by different manufacturers has resulted in fragmentation sending developers ducking from the shrapnel.

Research in Motion kept the signing process in-house... no third party demanding your money for essentially nothing, on the basis that they exist and that they've deemed themselves to be "trusted".

Developing a MIDP app doesn't just mean creating one application, it means creating and testing on every single different device that you want your app to be available for, and hacking your app to cope with the differences. Frankly it's a nightmare.

The Java Verified program shoulders much of the burden for the decline of MIDP. Awkward for developers, expensive for their employers, impossible for open source or "bedroom coder" hobbyists, it seems designed to make MIDlet deployment a misery.

Those of us who questioned why Sun never managed to capitalize on Java should look at the signing issue. When Sun upgraded to MIDP2/CLDC1.1, they contracted out the certification and testing to third-parties, who could then charge whatever they wanted to sign and test your application.

Research in Motion, by contrast, kept the signing process in-house: pay them the princely sum of $100 per year, and that's that. No third party demanding your money for essentially nothing, on the basis that they exist and that they've deemed themselves to be "trusted".

But above all, Java ME is in desperate need of an official, central app store targeted at non-technical phone users. The Java store currently only caters to desktop Java apps and isn't even available outside the US. Without this essential component, Java ME development will never, ever come alive.

Despite the saddening story of Java on phones, and Oracle's attempt to keep it that way, it is now possible to write Java applications for a growing range of smart phones.

Frothy-mouthed developers can't seem to stop writing Android apps. It helps that Android has its own mascot, the grinning green robot that looks like it's about to start 'dissing mashed potato and selling you its powdered variety. But more practically, the platform fragmentation that has so beset Java ME doesn't seem to have affected Android quite so much. That's because Android controls the entire software stack and Google seems prepared to stand up to the nakedly self-serving phone manufacturers.

Meanwhile, another great Java ME barrier is nimbly avoided: app signing is simple and costs the developer nothing. You can use self-signed certificates to sign your applications. No certificate authority is needed.

Where's the jobs?

The only issue so far, is that the Android developer frenzy hasn't translated into an active job market. Aside from the occasional company employing someone to maintain a mobile version of their software, the majority of Android developers appear to be uploading weekend-coded apps to the marketplace in the hope of cashing in on their hobby.

The unstoppable marching Android paints a brutally different picture from the unhappy Java ME mouse. Java 2 ME - before it became just Java ME - was strong in 2004 compared with the ghost town it is now.

Of course, Java ME profiles will continue to hold a key position in low to mid-range phones - in other words, phones that are not Android or the iPhone. It'll likely be strong, too, on RIM's Blackberry. But for a product's market to be defined in terms of territory that its competitors have deigned to leave untouched, speaks ill of its future.

And if Java ME is to gain any meaningful developer mind and marketshare, Larry will need an extra-special announcement or three up his sleeve at OpenWorld. Namely: a full, uncompromising Java SE implementation, a unified MarketPlace/AppStore so users can browse and download apps over the air, and a single, powerful device configuration for smart phones.

With these three developments, and the backing of all the major phone manufacturers and carriers, Java ME could quickly become a serious contender. Without them, it'll remain a victim of history. ®

Matt Stephens founded independent book publisher Fingerpress, and co-authored Design Driven Testing: Test Smarter, Not Harder, due out this month.

SANS - Survey on application security programs

More from The Register

next story
This time it's 'Personal': new Office 365 sub covers just two devices
Redmond also brings Office into Google's back yard
Oh no, Joe: WinPhone users already griping over 8.1 mega-update
Hang on. Which bit of Developer Preview don't you understand?
Microsoft lobs pre-release Windows Phone 8.1 at devs who dare
App makers can load it before anyone else, but if they do they're stuck with it
Half of Twitter's 'active users' are SILENT STALKERS
Nearly 50% have NEVER tweeted a word
Internet-of-stuff startup dumps NoSQL for ... SQL?
NoSQL taste great at first but lacks proper nutrients, says startup cloud whiz
IRS boss on XP migration: 'Classic fix the airplane while you're flying it attempt'
Plus: Condoleezza Rice at Dropbox 'maybe she can find ... weapons of mass destruction'
Ditch the sync, paddle in the Streem: Upstart offers syncless sharing
Upload, delete and carry on sharing afterwards?
New Facebook phone app allows you to stalk your mates
Nearby Friends feature goes live in a few weeks
Microsoft TIER SMEAR changes app prices whether devs ask or not
Some go up, some go down, Redmond goes silent
prev story

Whitepapers

Securing web applications made simple and scalable
In this whitepaper learn how automated security testing can provide a simple and scalable way to protect your web applications.
3 Big data security analytics techniques
Applying these Big Data security analytics techniques can help you make your business safer by detecting attacks early, before significant damage is done.
The benefits of software based PBX
Why you should break free from your proprietary PBX and how to leverage your existing server hardware.
Top three mobile application threats
Learn about three of the top mobile application security threats facing businesses today and recommendations on how to mitigate the risk.
Combat fraud and increase customer satisfaction
Based on their experience using HP ArcSight Enterprise Security Manager for IT security operations, Finansbank moved to HP ArcSight ESM for fraud management.