Maemo Summit 2009: Fremantle, Harmattan, and N900
Nokia's second annual Maemo Summit brought together 400 developers and power users of the Linux-based tablet community in Amsterdam over the October 9-11 weekend. Maemo Community Manager Quim Gil said the primary goal was to bring the community together for the social and interactive benefits, but the three-day program also provided a solid introduction to the new Maemo 5 release, a preview of Maemo 6, and a chance to work with the Nokia N900 — which ships with as close to a standard Linux distribution as the marketplace has seen delivered on a usable mobile phone.
Friday's program was planned by Nokia, and featured several plenary talks delivered by Nokia staff, including the company's vice president of Maemo devices Ari Jaaksi, vice president of marketing Jose-Luis Martinez Merino, and director of Maemo product planning Janne Heikkinen. Session talks covered user interface and user experience design for the new release, application and widget development, and introductions to the changes slated for the next generation of Maemo, Maemo 6 "Harmattan." Saturday and Sunday's program was chosen by the Maemo.org community, and covered development in depth, as well as more user-centric subjects like introductions to the key applications and device customization.
Meet 5, meet 6
The biggest news in the Maemo community is the impending release of the Nokia N900, successor to the 770, N800, and N810 tablets — and the first to include cellular phone support. The N900 uses Maemo 5 "Fremantle," for which the official software development kit (SDK) has been available since December of 2008. Like previous releases, Maemo 5 uses libraries and toolkits common to desktop Linux distributions: Glib, GTK+, Pango, Cairo, GStreamer, BlueZ, D-Bus, Telepathy, etc. The new version adds Clutter, PulseAudio, GUPnP, Tracker, and upstart to that list, among other changes.
Nokia made a surprise announcement on the first day, providing pre-production N900 devices to 300 summit attendees for a six-month loan period (attendance was initially capped at 300; when registration hit the cap, it was expanded to 400 — Nokia assured the attendees that everyone who was not a Nokia employee or Nokia subcontractor would receive a device).
The core N900 applications — media player, calendar, communications tools, and web browser — were built by Nokia, but a considerable number of community-written and third-party applications are already built and available for the platform through the Maemo.org repositories. The Summit program recognized many of these applications with lightning talks or full sessions, and showcased five of them in the Sunday morning keynote slot for "Fremantle Stars." The stars included the microblogging tool Mauku, weather report utility OMWeather, exercise trainer eCoach, OpenStreetMap mapping tool OSM2Go, and liqbase, a suite of widgets and small applications designed for handwriting use, sketching, and other non-keyboard interaction.
The early focus on providing Maemo 5 development tools and support should make the N900 application market full when the phone finally goes on sale. Similarly, Nokia has already started preparing developers for the changes and additions slated for Maemo 6, which is expected to be released sometime in late 2010.
The most talked-about change in Maemo 6 is the adoption of the Qt framework for the default applications. Nokia states several technical reasons for the change, including the desire to use OpenGL ES hardware acceleration for the entire interface, multi-touch and gesture input, and an application state machine API. It is no secret, though, that Nokia has business reasons for the change as well; as the owner of Qt creator Trolltech, the company is pushing the framework on all platforms: Maemo, Symbian, desktop Linux, Windows, and embedded devices. On Friday morning, Nokia announced the immediate availability of an official Qt stack for Maemo 5 — specifically, a "technology preview" release targeting application developers.
When the switch to Qt was initially announced, some questioned whether it was too soon, and would short-circuit developers' desire to build their applications for Maemo 5 with the current framework. Judging by the number and variety of Maemo 5 applications currently available, though, few, if any, developers appear to have chosen to skip Fremantle.
Oh, and did we mention it's a phone?
The majority of the excitement and discussion surrounding Maemo 5 and the N900 focuses on its capabilities as a portable Internet tablet like its predecessors; one could almost be excused for forgetting from time to time that the N900 is "also" a fully-capable cell phone. Perhaps that emphasis is appropriate; Blackberry, Palm, and Apple have placed the bulk of their efforts into highlighting the Internet features of their high-end mobile phone platforms.
Maemo 5 is still a big step forward for Linux on mobile devices, however, precisely because cell phone functionality on the N900 makes it a choice for the average smartphone consumer. More importantly, Maemo 5 is, for all intents and purposes, a standard Linux distribution under the hood — it is not a locked-down, code-signed environment in which all user applications run in an isolated virtual machine environment. An xterm is one of the default N900 applications; any user that wishes to alter system components right down to the kernel can gain root access without tiptoeing through an arcane jailbreaking process.
Consequently, one of the most intriguing talks at Maemo Summit was Saturday's "Maemo and oFono," which detailed Nokia's work on an open source cell phone communication stack. The cellular stack handles a range of functions, from communicating with the cell modem itself, to monitoring and caching network status and selection information, to processing and formatting SMS and MMS messages, to managing SIM card security. Modem management itself is a tricky field, as many cell modems still use the decades-old Hayes (i.e. "AT") command set, while others (including Nokia's) use vendor specific replacements with more features.
oFono uses D-Bus, and has a small core with a plugin system that handles functions like network registration, SMS formatting, and call handling. Intel is also heavily involved in the project, and according to speaker Rémi Denis-Courmont, has made most of the commits, particularly with the hardware drivers. oFono is still in pre-release; Maemo 5 uses a closed-source stack called the cellular service daemon (CSD), and Denis-Courmont said that oFono is unlikely to make it to Maemo 6 by launch time, either.
Free software purists may decry the N900 for its inclusion of proprietary code, including the CSD phone stack. Unlike other closed applications on Maemo devices, however, there has never been a free alternative, so oFono represents a big piece of the "purity" puzzle — even if it is several years from appearing in consumer devices. When asked by the audience why Nokia did not simply open up CSD, Denis-Courmont responded that the company was not satisfied with the code and preferred to write a proper open source solution from scratch, even if that takes time.
In a sense, that is the same story as Maemo itself. Nokia invested several years and several generations of product design building the Maemo Linux platform, and at the same time invested heavily in building an enthusiastic and deep community of Maemo application developers. It even encourages development of competing applications and interfaces, such as the Canola media player, the Mer distribution, and liqbase.
As a result, Nokia now has a solid open source phone platform to show for it, one that (according to Jaaksi) shares approximately 80 percent of its code with the standard desktop and enterprise Linux distributions. More importantly, neither Android nor the LiMo Foundation — which have not made the same investment in community building — has anywhere close to the active community writing open source applications and contributing upstream to the project. Google, for example, places its emphasis on commercial applications, and does not even track open source applications for the platform. On the other end of the spectrum, the OpenMoko project—lofty as its goals are—has not developed into a commercially viable product and gets poor reviews on user experience. The size of the Maemo community does not guarantee success for the platform, but as open source advocates know, it does provide a large advantage.
[Note: Nokia underwrote travel for the author, as well as for several other journalists and around one quarter of the community attendees. The author would like to thank Nokia, Quim Gil, and the Maemo Community Council for the opportunity, for their help, and for being accessible during a very busy event.]
| Index entries for this article | |
|---|---|
| GuestArticles | Willis, Nathan |
| Conference | Maemo Summit/2009 |