There was a lot of news out of the Mobile World Congress this week, it would seem. Not enough to forgive whoever stuck me on their media list thus subjecting me to torrents of mail for a conference I wasn’t attending, true, but still. Perhaps the most interesting, at least from the volume of chatter we’re hearing, was the unveiling of MeeGo.
Personally, I’m not optimistic for the future of the project. To explore why, let’s turn to the Q&A.
Q: Before we begin, anything to disclose?
A: Indeed. Several vendors with ties to MeeGo assets, including the acquired OpenedHand to the project’s new host, the Linux Foundation, were RedMonk customers. A few suppliers of competitive technology such as Canonical and Microsoft are clients, while others – Apple and Google, most notably – are not. That should about cover it, I think.
Q: For the folks that haven’t seen the news, can you recap the latest? What is MeeGo?
A: MeeGo is, in essence, a merging of the maemo and Moblin projects.
Q: And those projects, in turn, are?
A: The maemo project was a (Debian) Linux based operating system built by Nokia aimed at tweener devices like the original 770 “Internet Tablet.” Not quite phones, not quite laptops, this device class can be considered the distant ancestors of devices like Android or iPhone handsets or even, yes, the iPad.
Moblin – a cute for “mobile Linux” – was an alternative open source device oriented operating environment. The project, based on Fedora but coming in other flavors, is – like Maemo – intended for non-traditional devices such as netbooks.
These two projects, then, are being merged to create MeeGo.
Q: How long is the merge supposed to take?
A: The FAQ says the first combined build will be available in Q2.
Q: So this project is basically a consolidation of two projects that were competing, essentially, in the same space?
A: There was some minimal distance between the projects, actually: maemo, for example, was never aimed at the full fledged netbook market. When Nokia entered that market, remember, they went Windows 7, not maemo.
So there’s more differentiation between their target audiences than is commonly supposed. But to the point, yes: this can be considered market consolidation.
Q: Isn’t that a good thing?
A: It certainly can be. It is not clear, for example, that either project had sufficient oxygen to sustain itself indefinitely. So by joining forces, they have a better opportunity on paper.
Q: Why do you say on paper?
A: Because these are technologies that – apart from their shared kernel heritage – don’t really have all that much in common. The packaging systems are different, the UI frameworks are different, the applications are different, and so on. Meaning that not only is the merger likely to be complicated, both communities are likely to be significantly impacted.
Q: Can you give an example?
A: Consider the packaging format. Moblin, being Fedora based, uses .rpm, while maemo, being derived from Debian uses .deb. According to the FAQ, MeeGo is going to support only .rpm. In practical terms, then, all of the packages available for maemo will have to be repackaged.
Q: So they should have supported both?
A: No, that just makes things more complicated. That’s the approach they’re taking with the UI frameworks, and it’s probably not wise.
Q: How so? What’s the story with the UI frameworks?
A: Without rehashing a lot of unimportant history, let’s just say that there are two popular open source UI frameworks: GTK and Qt. Qt had generally been better thought of, technically, but until 2009 was more restrictively licensed. GTK, being more permissively licensed, was more widespread.
Both Moblin and maemo were, at their inception, GTK based, though Moblin also used Clutter, which we’ll come back to. Nokia, however, acquired in 2008 Trolltech, the vendor behind Qt. They asserted at the time that maemo would continue to be GTK, but a number of people – myself included – were skeptical. And sure enough, maemo subsequently transitioned to that UI toolkit.
Back to Clutter. A very cool OpenGL toolkit built in part by Intel acquisition OpenedHand, Clutter allows for hardware accelerated UIs via OpenGL and integrates well with GTK.
Complicated, no? The net is that there is considerable overlap between the UI technologies, but rather than annoint – or at least pick out of a hat – a winner, MeeGo is following in the footsteps of Linux desktops that preceded it, and intends to support all of the UI options.
Q: And that’s bad?
A: It remains to be seen, but yes, I think it will have a substantial cost for implementers and users alike. First, it will weight the platform down: some of the libraries are hundreds of MBs in size, and while that’s not a real problem on a laptop, it’s of substantially greater concern on smaller, storage and processor limited devices. The kind of devices MeeGo is targeted at, in other words.
It could also result in UIs that blend applications built from different toolkits, resulting in an inconsistent and potentially jarring user experience. Some argue that this isn’t a problem, because hardware OEMs will pick one or the other when they build a device. But if developers for the MeeGo platform are using multiple UI frameworks, this means either a) that a subset of applications built for MeeGo won’t work on MeeGo handsets, or b.) that you’ll have the aforementioned inconsistent application user experience. Neither are positives, in my book.
Q: Won’t that ensure maximum compatibility?
A: From a developer and application perspective, yes. But given that the competition in this case could be Apple – with its beautiful, rigorously consistent user experience – or Chrome OS, with its ruthlessly simple browser based UI, I would be putting a premium on the consistency of UX, even if I sacrificed some applications and developers in the short term.
There’s a reason neither maemo nor Moblin has seen a massmarket device success yet, while a far more recent – and less developer accessible – Android ecosystem has.
Q: And that reason is?
A: Having put significant dollars into Android, why do you think Google was so profoundly distinterested in pushing Android up the stack to larger devices?
Q: I don’t know: why?
A: Because it’s almost certainly not the right operating environment for a borderline laptop-like device. Android was designed for handsets, and is very competitive on that hardware type. Ditto the iPhone. These environments were carefully designed, from the ground up, to run specific types of applications on specific types of hardware for specific types of users. MeeGo, like Moblin, at least, if not maemo, is casting a much wider net.
And it’s not clear that general purpose is going to work in the mobile space. Certainly the communities with substantial developer traction in the mobile world are less than generally oriented.
Q: But isn’t the iPad a counterexample? That’s a phone operating system implemented on a general purpose computing device?
A: Is it? I’d argue that the iPhone OS is far more than a phone operating system; it’s a hermetically sealed, maniacally user focused platform. And the iPad, meanwhile, is anything but a general purpose device; both fans and critics alike are likely to acknowledge that the iPad is essentially a giant iPhone that can’t make phone calls.
Q: You’re arguing, then, that purpose built devices are the rule, rather than the exception here?
A: Certainly seems that way. There appear to be two general user paradigms: general purpose, and device.
Consider phones. Windows Mobile – pre-Windows Phone 7, that is – was a general purpose platform. And it failed, at least in part, because of that. Apple, by contrast, declined a port of OS X to the platform, and instead purpose-built an OS for that form factor. The result? It revolutionized the category, and everyone – overnight – was playing for second place.
Netbooks, on the other hand, have demonstrated different preferences. When the first netbooks were introduced, they were more often than not running vendor customized versions of Linux distributions. But because it looked like a laptop, users expected it to run like the Windows laptops they were used to. And when it wasn’t the Window machine they were used to, they returned the Linux based devices four times more often than those running Windows, according to one manufacturer. Part of that, of course, is the decision of vendors to either customize their own Linux flavors (which is what MeeGo will have to persuade them to do, again) or go with versions ill suited to the form factor. But it also speaks to the user expectation that a laptop-like device should be more like a laptop. Not something they have to learn.
I think it’s difficult to forecast mainstream success for MeeGo in either the handset or laptop categories, for any number of reasons. Which leaves an increasingly bewildering array of hardware form factors and use cases to target. The questions are first, whether hardware OEMs are better off deploying purpose built operating systems for devices in between phones and laptops, or if a more general purpose platform like MeeGo is a better fit. Second, if the decision is made to go general purpose, how much of an advantage a platform like MeeGo offers you over, say, Ubuntu Netbook Remix. Last, vendors need to assess their confidence level in the future of the project itself: with Nokia, for example, adamant that MeeGo has no implications for Symbian, how serious are they about the category, really?
Q: What about the decision to host it with the Linux Foundation?
A: That’s a positive. It will get more visibility than it would directly managed by the vendors, it will abstract the project from certain institutional political interference (think ARM enemies at Intel, and the pro-Symbian crowd at Nokia), and it gives the project a more open image.
Q: Can MeeGo be the “open alternative?” Android is open source, true, but sentiment says it’s less than open from a directional standpoint. Apple and Microsoft clearly are anything but open. Is there a market opportunity?
A: Anything’s possible. But it all comes back to oxygen. Whatever the perceptions of its openness might be, Android is likely to be the “open” choice for handsets. Netbooks have a plethora of established, increasingly polished open source Linux distributions to pick from (distributions that have borrowed some of the best parts of Moblin, incidentally), and Chrome OS lurks as a potential disruptor. So what’s left, from a hardware form factor perspective?
Tablets? Smartbooks? Would MeeGo be a better alternative for Lenovo/Qualcomm than building their own OS flavor for the Skylight? Possibly. But ask yourself this: as a developer with a preference for open source, what’s my incentive? Google tells me that 60K Android handsets are shipping per day. We know there are millions of Ubuntu machines out there. What would motivate me, in the face of that kind of volume, to build for MeeGo instead? What is, in other words, MeeGo’s developer proposition? It’s differentiation?
Until we have an answer to those questions, it’ll be an uphill battle for the platform, I think. I’d like to argue otherwise, because there are parts of both maemo and Moblin that I think are really interesting (boot time, most notably), but I can’t come to any other conclusion.