Skip navigation.
Home

Which Linux Phone?

Recently I had the luck to be able to play with the three currently most dominant commercially available Linux mobile phone platforms: Android, Maemo5 and WebOS. The devices I had were Android on HTC G1 aka Dream, Maemo the Nokia N900 and WebOS on the PalmPre.

It is a hard choice to make if you want to decide for a platform today...

First there is the hardware choice. Hardware is in the realm of mobile phones a choice that has to do with the software platform choice. This is in contrast to PCs where hardware is just a commodity. With mobile phones some of the software platforms dramatically limit your hardware choice: Maemo5 is only available on the Nokia N900, WebOS only on the two Palm devices Palm PRE and Pixie and Android, well, there are by now at least a dozen devices from different brands and makers.

As software platform I would currently go for Android. The support for application developers is excellent, go to dev.android.com and marvel at all the documentation, examples, guidelines and SDK including perfect emulator. This is hard to beat. Also if you want to make some money from application development I think the model of Google's market is quite fair - in contrast e.g. to Palm's application store (99US$ entry fee per year, 50US$ for publishing a single application). Maemo5 has two publishing models - the open source through Maemo.org application catalogue and the Ovi store for commercial offerings - how to get into Ovi is unknown to me.

I also think that Android is currently the most mature platform. It has consistent and simple to use APIs for about everything you might need as application developer, including the written promise that API will keep being downward compatible, i.e. an Android 1.6 application will continue to work, even on 2.0 or 2.1 - maybe not being able to take full benefit of the new platform, but it will still work without new development effort.

But then there is also the technically interested developer. The developer that likes to have a peek under the hood, likes to see how things work and probably wants to extend the platform or device function. This is for most platforms not possible, at least not very easily - except for Maemo5 on the N900.

The N900 is stuffed with technology you will not find in any other mobile phone today - 3G mobile, WiFi, Bluetooth, AGPS (and pitily without "A" it takes ages to get a fix), two cameras, 800x480 high resolution screen, OpenGL ES accelerated 3D graphics, 32GB internal SDHC storage, second microSD slot, hardware slider keyboard, so far not that unusual.

But here come some interesting parts: FM radio receiver with RDS/TMC capability, FM *transmitter* with RDS capabilty (how cool ist that!?), proximity sensor to detect "screen near face" to tun off backlight while in call, light sensor for auto-dimming the display backlight, IR transmitter for consumer IR (turns the N900 into a universal remote control!), full color range RGB LED for signalling.

How cooler can it be?

And in the tradition of Maemo Nokia did implement all of that "the right way", i.e. they created device drivers and interfaces in a way that is current standard in the open source communities.

So far hackers and interested developers the N900 is IMHO the best choice, though the price tag is something that will keep hackers away from it.

If you want to develop applications for a large audience and/or make some money from it, then I would recommend Android.

So what about WebOS then?
Well, it is for sure an interesting platform because it does things differently. But since WebOS is currently only available from one prorietor, i.e. Palm Inc., and since the applicaiton store imposes quite high cost I think it will be condemned to a niche-being. Palm does not have the market power like Apple, to push something new and unique onto the market and expect a significant number of developers and users. The only chance for Palm to survive the next one or two years would have been to publish something *very* open, like Maemo, and make most of the money on the hardware.