On May 25, 2005, Nokia released a press release announcing the Nokia 770 and promising an open development platform and collaboration with the FLOSS community: "[t]he maemo development platform (www.maemo.org) will provide Open Source developers and innovation houses with the tools and opportunities to collaborate with Nokia on future devices and OS releases in the Internet Tablet category." On June 7, 2005, the Linux Journal interviewed Ari Jaaksi, the head of Nokia's open source software operations. He asserted that "[i]t is important that Linux for the 770 is not controlled by any company."
These remarks have proven deceiving: the Maemo platform appears open because it uses many FLOSS components and many FLOSS applications run on it, however, the 770 distribution contains a number of essential closed source components controlled exclusively by Nokia. This prevents a free platform from appearing for two reasons: first, the closed components are not easily replaced with free components; and second, it would cause a split in the community. I contend that the result is that it is more difficult for a free platform to appear for the 770 than it otherwise would be for a similar proprietary device.
Given market pressures, it is understandable that Nokia relicenses a number of closed source value added components that have no free counterparts, e.g., their support for Real Audio and Flash. Yet, this is not the extent of the proprietary software which comprises the platform. Jaaksi notes that they "keep some limited parts of the software that are very close to [their] hardware close (sic). Examples of such components are the boot loader and battery charging." Additionally, "[v]arious application user interfaces that provide the Nokia user experience are closed source." By retaining control of these components, Nokia provides a technical barrier to competing platforms.
Jaaksi provides the key to preventing similar power-grabs in the future:
It is important that certain components are licensed under an open source license, such as LGPL, that allows us to integrate also (sic) proprietary components on our platform.
Thus high level proprietary components can be integrated in a FLOSS-based stack. As long as the stack allows such proprietary components, it will be difficult to prevent such selfish behavior. If libraries that implement new interfaces were instead licenced under the terms of the GPL rather than the LGPL, proprietary vendors would not be able to gain value from the work of the FLOSS community without also contributing their enhancements back to the community. Stallman further explains when not to use the LGPL.
The disadvantages of proprietary software are, however, clear to Jaaksi:
We often requested bug fixes or modifications to the commercial closed components on our platform. If the vendors didn't have the capacity or will to fix the problem on time, we had few options. We could not fix problems ourselves because the companies using closed source didn't want us to access their source code.
Yet, the same critique has been systematically leveraged against Nokia: this past April, May, August here and here, September and October. But a stronger critique can be made as well: because Nokia, not the community, controls the distribution and has made it difficult to create a competing one, they do not have to listen to the community: their interests prevail and, as Murray Cumming has observed (local), community members have a difficult time getting even simple and correct patches integrated when these do not directly forward Nokia's interests. Nokia clearly understands this frustration and wishes to avoid it but they do not want to afford the same independence to those who use their product; they want to impose restrictions on their users which they do not want imposed on themselves.
Nokia's openness is hypocritical. It may, perhaps, be tolerated if their contributions prove, on the whole, to be an asset to the FLOSS community.
Nokia has contributed to the FLOSS community. They have hired developers to not only adapt mainstream components to their environment but to also improve them for the general community, e.g., Matchbox, D-BUS and Scratchbox.
As the device has been largely welcomed by the FLOSS community, unlike, e.g., the Zaurus, they have demonstrated a desire for such a platform. Given the rejection of the Zaurus, this may also suggest that Nokia has provided the leadership and resources required to realize such a platform which the community otherwise could not have. On the other hand, the 770 and n800 are significantly more affordable and more readily available than the Zaurus. Given that there are three non-general purpose platforms which the FLOSS community has developed which have exceeded their respective vendor's distribution, OpenWRT for Linksys' WRT54G, RockBox for a growing number of portable audio players and Slug for Linksys's NSLU2 network storage appliance, it seems plausible that Nokia simply developed the right hardware for the right price at the right time, i.e., they found a market niche.
If the platform is as open as Nokia claims and if it is correct that the community to develop a platform independently exists, then if Nokia abandons the device, it should be possible for the community to continue its maintenance as has happened for so many other devices. This litmus test has recently been started: Nokia announced the end of life for the 770 only a year and a half after its introduction. Yet the question has been asked: given the amount of proprietary dependencies how far will the community be able to continue developing the device? It is unlikely that we will find out, however, as Nokia has provided approximately 500 developers with n800 discount codes to ensure that the community adopts the new device.
Nokia should be thanked for their contributions to the FLOSS community, however, I contend that Nokia's half-openness presents a greater liability to the FLOSS community than a typical closed platform. Like the Sirens, the song of the 770 and n800 has allure: they support free software applications and their platform appears to be based on free software. Yet, they are not free software and the community has little influence over its development. Indeed, continuing development after abandonment appears problematic as Nokia does not support the four freedoms.
Nokia has put on a likeable mask, yet they wish to continue to play by the same rules that proprietary companies play by and retain control of their platform. If Nokia continues to ignore the desires of the community, sufficient momentum will eventually build and their platform will be abandoned and their influence made redundant. If Nokia wishes to remain a member of the FLOSS community in the long run, they should remake themselves as an authentic community member. In particular, they should release their proprietary software under a free software license and provide community members more control over the development of the platform.