October 14, 2009
This article was contributed by Nathan Willis
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.]
(
Log in to post comments)