General

Symbian is an operating system for microcomputers, and it's used by all of Nokia's smart phones and communicators (except for Nokia 9000, 9000i, 9110 and 9110i, which all use GEOS (Graphical Environment Operating System)). Also other mobile phone manufacturers, like Motorola, Siemens and BenQ, have used this operating system in their products. Symbian offers e.g. support for multitasking for devices that have little resources, although nowadays one can encounter 333 MHz processor speeds and 128 MB large amounts of RAM. So one can't really talk about devices with little resources anymore.

Programming for Symbian can be done with programming languages Symbian C++, Java MIDP, Java Personal profile, OPL, Visual Basic, C#, Python, Simkin, Flash Lite and C. Currently at least OPL is left behind as it isn't developed for the newest Symbian OS versions.

Operating system versions

As for today, Symbian OS is in its ninth version. The first version was 5, and back then it could have been called ER5, "EPOC Release 5" (EPOC was the operating system's name before Symbian). 5th version was used, for example, in Psion Series 5mx handheld computers.

The first Symbian based phone, which was open to third party applications, was Nokia 9210. Ericsson R380, which was launched before Nokia 9210, had Symbian OS, but the phone's software was limited to the one which was preinstalled into it. R380 had so-called "closed operating system."

Below is a list of every Symbian OS publication known to date.

Symbian OS 5.0
Symbian OS 5.1
Symbian OS 6.0
Symbian OS 6.1
Symbian OS 7.0
Symbian OS 7.0s
Symbian OS 8.0
Symbian OS 8.0a
Symbian OS 8.0b
Symbian OS 8.1
Symbian OS 8.1a
Symbian OS 8.1b
Symbian OS 9.0
Symbian OS 9.1
Symbian OS 9.2
Symbian OS 9.3

In the incoming Symbian OS v9.5 all applications should launch up to 75% faster. Symbian has also announced that its future OS versions support quad core processor; it takes less power when only one processor is running, but when needed, extra performance can be brought from three other processors.

User interfaces

There are five user interfaces made to run on top of Symbian, and amongst Symbian beginners these mess up heads pretty easily. The links below give a lot of information about each user interface, and in the bottom of that page there is a list of devices which use the user interface. I'm only going to tell about four user interfaces, because the fifth, MOAP, which is maintained by the Japanese operator NTT DoCoMo, is a platform designed for Japan market.

Series 60 (S60)

Series 60 is Nokia's smart phones' most common user interface, but it's also used by other mobile phone manufacturers as well.

Series 80 (S80)

Series 80 is the user interface used by Nokia's communicators. Yet Nokia E90 doesn't use S80, but S60.

Series 90 (S90)

Series 90 is the user interface of Nokia's touchscreen phones 7710 and 7700.

UIQ

UIQ is a touch screen user interface of e.g. some of Sony Ericsson's and Motorola's phone models.

Questions related to Symbian OS

Can an end-user update the firmware of his/her phone with Symbian OS at home?
Depends on the phone model. Earlier the firmware update had to be done in an accredited Nokia store, but now Nokia has developed an internet-based update program (Nokia Software Updater), which can be used to update the firmware of numerous models. Nokia has a page where you can put your device's product code and see if it can be updated.

Nowadays there are also different kinds of illegal firmware update programs available on the internet.

Can an end-user crack the operator's SIM-lock?
Depends on the model. Operator locked phone models are categorized into groups by their so-called BB number. The devices with BB5 technology have the newest and also the most secure locking mechanism, and they can't be unlocked by other methods than with a special software and hardware kit, which has some information here. BB5 devices are e.g. Nokia's Nseries and Eseries phones and Nokia 6630 and 6680.

Devices with earlier BB versions can be easily unlocked with a code that can be generated here. Your phone has BB5 technology in it, if it's SIM-locked and doesn't get unlocked with the code from the aforementioned page.

Why is Symbian programming so difficult?
The first Symbian devices were very low on resources and they could be continuously on for even months. Yet the user interface had to be fine-looking and fast, so the programming had to be more specific than for e.g. a computer environment. The programming language of Symbian is Symbian C++, and it's - obviously - derived from C++, by adding some properties which can be used to have more control over the operating system.

Currently Symbian (but only S60 v3.x) supports the C programming language via OpenC plug-in, so the C programmers out there can program and port applications onto Symbian fairly fast and easily.

Where should I start Symbian C++ learning?
Before learning Symbian C++ you should have
  • a good knowledge on C++
  • the SDK (Software Development Kit) of your desired device, which can be obtained for Nokia user interfaces from Forum Nokia
  • a good ability to read English
  • patience and motivation.
When all of these are obtained, you can start learning Symbian C++. For example, here is a large document for a Symbian programming beginner (although it's focused to S60 and its programming principles). You can also go to a Symbian programming course, which are nowadays arranged in many cities.

What are Series 40 and Series 30?
The namings Series 40 and 30 are used for less-intelligent Nokia's color screen mobile phones, which don't have the Symbian operating system. Series 40 is an official platform, but S30 is used for phones that are simplier than S40 phones, for example Nokia 3510i. S40 and S30 don't relate to Symbian in any way.

Tell some quick facts about Symbian.
With pleasure.
  • founded in the year 1998
  • by the 16th of November 2006 there was 100 million Symbian devices shipped
  • the statistics of June 2006 showed that Symbian was dominating smart mobile market with 67% share
  • Symbian's file system uses the character \ as the separator between folders, just like PC
  • about 80% of the code of both Symbian OS and the applications are OS specific, other is specific for the user interface; the programmer has to modify only about 20% of the code of his S80 application, so he can get it working in the same OS version's UIQ user interface
  • there are approximately 2.5 million Symbian programmers in the world
  • programming for Symbian doesn't cost anything; all centric software development tools are free