The Frustrations of Java ME

Sun’s Java Micro Edition (Java ME, or J2ME that was) is the nearest thing mobile currently has to a mass market application platform for mobile. It’s deployed on billions of handsets worldwide and while pretenders to the throne do emerge from time to time, none of them have seriously threatened the incumbent.

Which, on balance, is a surprise as it’s a bitch to develop for.

The idea behind a platform should be that once the application is written, it can be deployed quickly and easily on any device in the marketplace. This might be a little idealistic and in reality, some tweaking might reasonably be expected as the application is ported across to different devices. However, the porting experience for Java ME is nothing short of horrendous and seems to be getting worse.

According to a Greg Ballard of mobile games maker, Glu, in a recent interview in Mobile Entertainment, their Transformers game needed no less than 25,000 SKUs (or variants). 25,000! This has reached the point of absurdity.

It’s not just a question of inefficiencies though. As I’ve written before, if developers have to port an application this many times, it retards innovation in the development process. In other words, it’s not practical to make changes to the application on an ongoing basis, like we can on the web, as the porting process is so damn complex. Rather, we must wait for the next version to be released, like software. This leads to less than perfect products and a user experience that could always be improved – I mean, it’s just not possible to get products right first time and every time.

Apologists for Sun will undoubtedly claim that it’s the handset manufacturers who are to blame here and undoubtedly, there’s certainly a large dollop of truth in this. However, I think it’s also fair to say that Sun could do an awful lot more to create better standards and establish best practices. The whole point of a platform is to save developer’s time and money in writing software and we’re surely fast approaching the point where it might make more sense to develop applications to support specific handsets. Indeed, that’s already happening with the iPhone.

And in the meantime, everyone in the mobile value chain suffers. Developers are spending far more time and effort in the porting process than is practical or economic. And users experience products that could be improved iteratively and are starved of new innovative companies coming into the market, as they’re put off by the costs of launching anything.

So, come on Sun. Please get it sorted. Or someone, at some point, will come along and steal your market right from under your nose.

—–>Follow us on Twitter too: @russellbuckley and @caaarlo