Sponsored Link •
This is a blog about Symbian: What it is, why you should care, and every little thing about how to play there as a developer. First, a confession. I love small systems programming. Crazy about it. Stunned that I actually get paid to do this. So there you have it. We all have our quirks, I suppose. Enough about me. Let’s talk Symbian.
This is a blog about Symbian: What it is, why you should care, and every little thing about how to play there as a developer. I’ll start with a small confession. I love embedded systems programming. Crazy about it. Been at it for an embarrassingly long time. I recall many occasions when, in the course of a typical day at work, I took a few moments out to be stunned by the fact that I actually get paid to do this. So there you have it. We all have our quirks, I suppose. Enough about me. Let’s talk about Symbian programming.
As much fun as it is down-linking satellites and running remote sensing instrumentation and making microwaves and set top boxes smarter than an honor roll student, today’s obvious playground for any embedded systems developer is ( you guessed it) the mobile device. And if you have any thoughts about targeting this new landscape of computing, you should definitely investigate Symbian: the OS, the native C++ language and dev tools, and the Symbian Signing process for getting software to market. Here’s why:
When next you reach into your satchel and extricate your insistently ringing smartphone, there is better than a seven out of ten chance that you’ll have something Symbian in your hand. Even the most conservative estimates give Symbian OS a 70% market share of smartphones and PDAs worldwide. At the risk of belaboring the math, this is more than twice the combined share of every other competitor in the space. The world’s leading phone producer, Nokia, builds the vast majority of its devices on the Symbian OS. Motorola, Ericsson, Fujitsu, Mitsubishi, Sharp and Samsung ship large numbers of Symbian 3G smartphones. Over 250 mobile carriers worldwide support Symbian phones. So, in a nutshell, here’s how the worldwide mobile device market shakes out:
• Symbian running on Nokia.
• Or Symbian running on somebody else.
• And, woops, the rest.
Symbian evolved in response to a unique confluence of technical, economic and social influences, several of which aren’t immediately apparent, viewed from a North American perspective. Understand these things and you’ll see why Symbian targeting is the prime opportunity for small device application software developers.
Symbian is an open standard, and the preferred Symbian development tools are open source. What’s to explain about this?
Symbian APIs and SDKs anticipate device evolution. Founded in 1998, Symbian is wholly owned by shareholders Ericsson (15.6%), Nokia (47.9%), Panasonic (10.5%), Samsung (4.5%), Siemens (8.4%) and Sony Ericsson (13.1%). Symbian OS moves forward based on the device development plans of these and others of its customers. Fully implemented, leading edge features are supported by Symbian SDKs first, and consistently, across most manufacturers’ devices.
Symbian builds bridges connecting worldwide telephony market “islands”. Due to the differing needs and motivations of consumers worldwide, the history of mobile telephony has frequently been one of isolated markets and incompatible technologies. The ubiquity and consistency of the Symbian platform creates a single market and economies of scale necessary to profitable software publishing for mobile devices.
Hands-on time! Next we explore the process of downloading and setting up Symbian tools and getting started with application development. Also, I’ll post the text of an interview with Dr. Bruce Carney, Symbian’s Director of Developer Programs and Services.
|Nancy Nicolaisen has authored three books on C++ programming topics; hundreds of articles for print magazines including Byte, Dr. Dobbs and PC Magazine; and was the chief contributor to codeguru.com's Windows CE Zone. Former researcher and Computer Science Professor, she specializes in small device and embedded systems programming.|