A lot of changes have happened in the Symbian eco-system since the OS was open-sourced. Here are a few reasons why I think the tech community should give Symbian a second glance, in a world obsessed with apples and droids.
Featured
Without a doubt, Symbian is the most feature-rich operating system available today. Features that competitors are highlighting as major innovations (FaceTime, I’m looking at you!) have been part of the Symbian OS for years now. This includes video calling, true multitasking, support for varied hardware, tethering, voice dialling and comprehensive bluetooth support. Additionally, Symbian^3 now has features that are yet to be seen in the competitors’ offerings. Some of these include – Bluetooth 3.0 support, USB-To-Go (USB Host), ability to stream HD video with Dolby 5-channel audio over HDMI (with HDCP), PictBridge support, ability to map remote drives, near-complete POSIX C/C++ API compatibility, support for hardware-acceleration of encryption/decryption, and many many more. In fact, a glance at the following pages can show the plethora of features that were added in the past 2 releases (not counting the thousands of features already present in Symbian OS) :
Symbian^2: http://developer.symbian.org/wiki/index.php/Symbian^2
Symbian^3: http://developer.symbian.org/wiki/index.php/Symbian^3
Open Source
Symbian OS, and Maemo/MeeGo are the only 2 operating systems which are fully open-sourced, from the kernel, to the applications. Additionally, Symbian OS even provides open-source drivers for reference platforms (Beagle Board and the emulator). All of Symbian’s code is licensed under EPL 1.0, and has been available so, since February 2010. Already, the community, as well as big corporations, have jumped into developing the Symbian OS. Check the links below for some examples of the collaborative work happening in the Symbian OSS space.
Link to Beagle Board drivers (for those interested): http://developer.symbian.org/xref/oss/xref//Symbian3/sf/adaptation/beagleboard/omap3530/beagle_drivers/
Attempt to build a hobbyist platform: http://developer.symbian.org/wiki/index.php/Wild_ducks_project
Accenture to spearhead development of the emulator: http://blog.symbian.org/2010/05/10/accenture-takes-a-community-leadership-role-to-deliver-the-next-generation-of-symbian-emulation/
Open Platform
ymbian OS has, and always will be, an open platform. By this, I mean that there were and never will be any restrictions to what can be done on the platform. Don’t like the theme? Change it! Don’t like the font? Change it! Symbian C++ not your cup of coffee? Here’s some Java. Prefer Python? Go for it! Feel left out cos’ you’re a web developer? Don’t worry! Symbian WRT (web-runtime) lets you write applications for Symbian using technologies you are already familiar with. Hate Python and lurve Ruby? You can help contribute to bringing it up to speed with Python on Symbian. There are no restrictions to the tools that can be used to develop for Symbian, the features that can be implemented, the boundaries that can be crossed. I know that this would set off alarms in most people’s heads. Is Symbian a lawless dystopia? Is it overrun with malware that could hijack your phone and abuse your phone connection? Take a deep breath, and calm down. Symbian features one of the most effective security mechanisms ever implemented in an operating system (without really restricting developer freedom). Platform Security (or PlatSec) ensures that only those authorized would have access to various phone features. Writing an app to modify the address book, or access the entire file system? You will need to submit your application to Symbian Signed for verification and signing, a way of ensuring that your application works as expected, accesses what is signed-for and no more. This ensures that as long as your intentions are honorable (and your pockets are deep, since signing ain’t free for advanced features), there is nothing stopping you from modifying anything in the phone. Some examples that I would like to highlight:
Joikuspot (turns your phone into a Wi-Fi hotspot) : http://www.joiku.com/?action=products&mode=productdetails&product_id=310
List of applications and games written in Python: http://www.symbian-freak.com/downloads/freeware/cat_s60_3rd/python.htm
Don’t like the Symbian^2 UI? Replace it!!: http://www.spbsoftwarehouse.com/symbian-software/mobileshell/
Developing using WRT: http://developer.symbian.org/wiki/index.php/Web_Runtime_(WRT)_Quick_Start
Developing using Flash: http://developer.symbian.org/wiki/index.php/Flash_Lite_Quick_Start
Developing using .NET: http://developer.symbian.org/wiki/index.php/.NET_Technical_Overview
P.S: Signing is free for open-source applications. Isn’t that nice?
Hobbyist friendly
Though this was briefly mentioned above, I believe it deserves a spot on the list, since hobbyists make the (tech) world go around. The Symbian community is hard at work, to develop a (low-cost) hardware platform which would allow those interested to build an entire phone from (open) source. Currently it comprises of various components wired together, sprawled across a table. However, the dream is to formulate a reference hardware platform, and convince a hardware manufacturer to build it into a form factor. Just imagine! A fully free and open phone. This could be spiritual successor to the OpenMoko hardware (which, sadly, were discontinued and thus remain “legacy platforms”), enabling OSS enthusiasts to build and experiment with a fully open-source phone, where anything and everything, from the drivers, to the applications, can be modified and tuned to your needs and likes.
Current state of the Wild Ducks project: http://www.scribd.com/doc/32103793/Towel-Day-2010-Wild-Ducks
Solid Roadmap
“It’s all part of the plan!”.
The Symbian Foundation has laid out a solid roadmap for the development of the OS. Currently, one of the major drawbacks of the Symbian OS is its last-generation UI, which doesn’t really play nice with touch. Symbian^4 will focus on bringing a written-from-scratch, fresh UI, build from the ground up, to be touch-enabled. Though there are some early screenshots on the Symbian^4 page on the Symbian Foundation site, I think its better if we all wait for the final look and feel to be polished up, before we pass judgement, since S^4 is still months away from completion (and the screenshots aren’t exactly recent). However, there is nothing stopping you from checking out the code and trying it out yourself (in the simulator) and if you don’t like what you see, you can always propose and contribute changes to it! That’s the power of being open! Open source! Open platform!
Symbian^4 screenshots: http://developer.symbian.org/wiki/index.php/Symbian^4
Roadmap: http://developer.symbian.org/wiki/index.php/Roadmap_for_the_Symbian_Platform
The future looks good!