Post

iPhone V.S. Windows Mobile V.S. Symbian

I’m currently in the US attending Apple’s WWDC (World Wide Developer Conference), although I’ve always wanted to attend Microsoft’s MEDC (Mobile Embedded Developer Conference). Unfortunately, when I applied for a visa for MEDC in 2006, I was rejected. This time, since I have an official passport, the visa officer asked almost nothing and passed me. My first trip to America goes to Apple. I met Bill Gates’ partner-in-crime Steve Jobs, witnessed the launch of the 3G iPhone, attended many sessions, and ate lots of terrible American food. Having received so many “benefits” from Apple, I’d feel guilty if I didn’t write something for the American people and Apple. Hence the article below.

I have to admit, Apple’s presentation was精彩. The PPT (probably not PowerPoint, but old habits die hard) was exquisitely made and very persuasive. Steve Jobs’ two-hour keynotes felt like a dream — I kept cheering, laughing, clapping, and whistling with the crowd. Only one word: Fantastic. Maybe Bill Gates’ keynotes at MEDC are also精彩, but I wouldn’t know — blame that bald guy who rejected my visa.

Writing this title, I know I’ll get flamed. There are already too many platform and product comparison articles on the internet. I don’t intend to add fuel to the platform war, nor do I want to get into优劣 arguments. My purpose is to analyze these popular mobile development platforms from an outsider’s perspective, based on my own understanding. Not necessarily right — just my understanding. Take it as entertainment.

Why no Linux? Because while Linux is used in mobile, there’s no统一 standard — applications (especially those with UIs) are hard to port across platforms. Why no Android? Because there aren’t any Android phones yet. Why no BlackBerry? Because BlackBerry’s architecture is actually quite similar to Android’s (or maybe vice versa, chronologically speaking). We’ll talk when Gphone is released. Why include Symbian? Because Symbian invited me to a resort in Beijing for “learning” last year — I owe them one :-). Why no Elastos? Do you even know what Elastos is? Although I know it well, I can only say I’m very sorry.

For comparison, we need criteria. This article isn’t comparing phone优劣, so I won’t compare megapixels, color depth, battery life, contacts, or inbox容量. I’m looking at them as mobile development platforms.

I. Platform Openness:

Before discussing openness, let me share my opinion. Many people think a platform should be as open as possible — ideally with open source code, nothing hidden. After analyzing the iPhone recently, I now believe that from both technical and商业 perspectives, closed也有 closed benefits.

Among the three platforms, iPhone is the most封闭. Apple writes the software, designs the hardware, sells in Apple’s own stores. Before the SDK was announced, even the apps were made by Apple. If Samsung, Moto, or Bird wanted to make a phone running iPhone OS, it would be a pipe dream. Apple doesn’t公开 its OS source code, so writing drivers for iPhone is impossible. Apple also runs增值 services on the platform, like MobileMe. And Apple reaches into the operator端 of the value chain by binding with mobile operators and taking a cut of their revenue. I think if conditions allowed, Apple would love to start “Apple Mobile” or “Apple Unicom,” with their own iCDMA or iGSM. We always talk about the value chain — Hardware Vendor, Platform Provider, Mobile Operator, Design House, ISV, etc. each playing their role. But Apple wants to go against the grain. Why can’t iPhone launch in China? Because Apple met its match in the equally tough China Mobile.

In contrast, Windows Mobile is the most open. Microsoft only wants to make and sell the OS. Hardware comes from various vendors, and operators don’t matter. That’s why we see Windows Mobile phones from many companies, but no Microsoft-branded Windows Mobile phone. The underlying Windows CE OS source code is partially shared (I didn’t say open source). China Mobile, China Unicom, T-Mobile, Cingular — all can support Windows Mobile. Windows Mobile has a rich ecosystem of software and services, helped by its similarity to Windows development.

Microsoft and Apple are both trying to replicate their desktop success. In the desktop era, Microsoft only made the OS, not hardware (ignoring mice, etc.). The open PC platform meant whatever hardware you bought, you ran Windows. That made Microsoft dominant. Apple always made its own hardware, using Power CPUs incompatible with PCs. Only recent revolutionary pressure pushed them to Intel, but they still kept UEFI instead of BIOS, so complete兼容 is still lacking.

Now let’s talk about open vs. closed. iPhone is much more封闭 than Windows Mobile. Yet iPhone has grown much faster than Windows Mobile. The Windows Mobile platform — even counting from Stinger, not just Windows CE or Pocket PC — has been around for 5 years. But iPhone, barely a year old, has already attracted developers and users. Today, with the 3G iPhone launch, Microsoft’s hard work seems swept aside. Why? Efficiency matters — not algorithmic O(logn) efficiency, but Time-to-Market efficiency. From idea to implementation to product — speed is crucial. First to market is innovation; followers just pick up the scraps.

In this regard, iPhone has the advantage over Windows Mobile. Since Apple does everything in-house, there’s no third-party沟通 or hardware compatibility issues. Just implement quickly and release. Windows Mobile? Suppose I want a feature that depends on hardware (like accelerometer or multi-touch). Microsoft has to find a Design House, say “build me a prototype.” After development, test it on Moto phones, Samsung phones, xScale CPUs, Samsung CPUs — compatibility everywhere. If one hardware vendor lacks a peripheral, how do I remain兼容? The process is complex and labor-intensive. That’s why Microsoft always announces things that never materialize — still in alpha testing. Apple is much happier: same hardware, same CPU, same camera, same resolution, same company — faster development, better results.

Finally, Symbian’s openness falls between iPhone and Windows Mobile. Nokia both builds the stage and performs on it, but allows others on stage too. Windows Mobile only builds the stage. iPhone both builds and performs, and doesn’t let others on stage.

This post is licensed under CC BY 4.0 by the author.