Documentation/Maemo For Symbian Developers Guide/Introduction

This document aims to compare Symbian and Maemo OS at architectural level, providing a didactic matching between the different components of each operating system, so that Symbian OS developers can easily learn what software component they should use in Maemo platform for each functionality.

Maemo is an open source development platform for Linux-based handheld devices. It is built from widely-used open source components with additional tweaks to integrate well in handheld devices.

Photo of N900 with open keyboard
Figure 1.1: Nokia N900

An Maemo device is a handheld device which provides desktop PC-level support for Internet services (such as Web pages and e-mail). Nokia has released several Maemo devices running the Maemo platform: the Nokia 770, the Nokia N800, Nokia N810, Nokia N810 WiMAX Edition and N900, see figure 1.1. The devices have a high-resolution, 800×480 pixel touch-sensitive display.

Maemo uses Hildon Application Framework, based on the open source GTK+ toolkit, as the user interface manager. Although the Hildon/GTK+ libraries are coded in C, bindings for other languages, including C++ and Python, are also available.

The native programming language for Symbian OS devices is C++. So, any S60 developer can take advantage of the Hildon/GTK+ C++ bindings and easily start developing GUI applications for Maemo devices. This document demonstrates how a Symbian C++ developer can get started with developing applications for Maemo platform.

Before you start to write your own applications for Maemo, learn more about the Maemo platform and the Hildon Application Framework. For more information, see documents GNOME Programming Guidelines [1], GTK+ Reference Manual [2], Hildon [3], and Maemo Fremantle Developer Guide [4].

[edit] References

  1. Federico Mena Quintero, Miguel de Icaza, and Morten Welinder. GNOME Programming Guidelines. http://developer.gnome.org/doc/guides/programming-guidelines/book1.html
  2. GTK+ Reference Manual. http://library.gnome.org/devel/gtk/unstable/index.html
  3. Hildon Project. http://live.gnome.org/Hildon/
  4. Maemo Fremantle Developer Guide. http://library.maemodocs.nokia.com