Developers Perspective: Strengths/Weaknesses of Mobile Platforms

In my last post, commenter David pointed out that Symbian OS controls the biggest slice of the smartphone pie but I never talk about that platform.

One hard won lesson over the years is that the platform with the biggest market share isn’t necessarily the best platform for development. And that’s why I rarely talk about Symbian. It’s not that I have some European bias or that I don’t want to develop for overseas markets, it’s that no one knows they have a Symbian device! And if the customer doesn’t know it then the developers can’t sell to them.

So I thought I’d do a little SWOT Analysis from a developers perspective on why each platform has and does not have merit. I’m going to focus this post on the S (strengths) and W (weaknesses) portion. I’ve written many times on various platforms O (opportunities) and T (threats). In alphabetical order:

Android

Strengths:

  • Growing rapidly, lots of buzz
  • Multiple hardware partners (potentially more devices)
  • Deep-pocketed backer (Google) who sees this as strategic
  • Attracting name-brand developers
  • NDK supports C engine
  • On all carriers

Weaknesses:

  • Poor app store experience (hear say)
  • Customers aren’t buying tons of software yet
  • Development environment is Java (this is great if you are a Java developer but most of the mobile world is focused around C)

BlackBerry

Strengths:

  • Strong growth, second largest smartphone OS sold
  • Entrenched in enterprise
  • On all carriers worldwide

Weaknesses:

  • Poor app store experience/not installed on all devices
  • Biggest sales to enterprise and consumers. Enterprise has devices locked down, consumers don’t buy software
  • Development environment is Java (this is great if you are a Java developer but most of the mobile world is focused around C)
  • Fundamentally two different operating systems between touch and non-touch devices

iPhone OS

Strengths:

  • Strong growth, not lacking for buzz
  • Controlled infrastucture means incredible user experience (easy to buy apps and install, syncs seamlessly with desktop, etc.)
  • Attracting name-brand developers
  • Development in C (or off-shoot anyway that supports ANSII C/C++)
  • Customers buying tons of software

Weaknesses:

  • Lengthy release cycles
  • Apps are really cheap and expectations are set
  • On only one carrier per country
  • App Store as only purchase location means limited means to market, apps easily lost in the noise

Symbian

Strengths:

  • On more smartphones than any other operating system
  • Development in C
  • Multiple sales locations
  • On all carriers worldwide
  • Has leading hardware vendor (Nokia) backing it

Weaknesses:

  • Most users don’t know they have a Symbian device
  • Multiple versions of the OS makes development costlier

webOS

Strengths:

  • Development in standard web technologies with (rumor has it) the best mobile development environment
  • Moving to Verizon and AT&T this year
  • Very few developers

Weaknesses:

  • Minuscule market share
  • Very US centric at this point
  • Does the perception that Palm won’t survive turn into reality?
  • Very few name brand developers

Windows Mobile

  • Uh… hmmm…

The bottom line, to me, is that platforms like Windows Mobile and Symbian are hard on developers. There just isn’t the momentum, recognition to make that work. Android and iPhone are clearly outpacing everyone else at this point and generating the buzz. The platforms keep improving and changing. BlackBerry is border line. While it has lots of die-hard users, the app store experience is poor (mostly because it’s not pre-installed) and the customers aren’t buying en masse.

In my mind, webOS is a wild card. If the goal is to maximize revenue in 2010 and 2011, I’d look very closely at it. I think device sales are going to triple or quadruple with AT&T and Verizon on board. With all the buzz on iPhone and Android, and all that buzz attracting developers, a smaller pool might mean less competitors and higher prices, which in turn could translate to higher revenues.

Let’s be honest, though. We are talking about the potential to build small businesses. If you’re goal is to support a family, right on! This SWOT analysis is for you. If your goal is to build an Angel or VC fund-able business, focus on a more global approach that incorporates the web and how mobile is an extension. After 13 years, I just don’t see a big business for third-party developers writing only for the mobile device.

Of Android, iPhone and Mobile Development

The launch of Google’s Nexus One phone is great news for mobile developers. Now that Android can show the kind of functional and market presence as the iPhone, the market for mobile applications is quickly coalescing around these two platforms and they will likely dominate mobile computing for the vast majority of consumers and prosumers.*

First I want to comment that when I talk about mobile computing I’m not just talking about smartphones. I’m actually talking about the rise of an array of mobile computing machines that includes smartphones but also includes other notebook-sized devices traditionally called tablets. (It’s only a matter of time before we start replacing spiral bound notebooks with some sort of computing device. Microsoft is expected to show one today at CES, Apple has an announcement coming up in late January, and don’t let anyone fool you into believing that we won’t see Android/ChromeOS-powered notepads real soon.)

The beauty is that, in order to support all of these devices, developers will have to be an expert in only a couple of development languages and device-specific APIs. And with the market forming around two platforms we will start to see real innovation around third-party development tools that allow us to write once, use everywhere as these tools can be honed for a small group of devices and screen sizes.

Will 2010 be the year of mobile computing? I think so. I think this is the year where standardized form factors become the norm, where a couple of platforms take control and become the thought and market leaders in the space, and where consumers start to adopt these devices en masse.

* This is not a comment about enterprise devices, where BlackBerry and Windows Mobile are still dominant. I still believe RIM can catch up in prosumer but they have a lot of work to do. I also think that we naturally expect touch and this is something that RIM just doesn’t do well yet. The fact that RIM is primarily a non-touchscreen device company also makes it hard for developers. We build expertise in an interaction model and that model, with iPhone and Android leading the way, is touch screens.

Mobile Site v. App: A Project Manager’s Guide

Attention software developers and project managers: please use your brain when developing mobile applications.

I know writing apps for iPhone is all the rage, but why would you write an app if you didn’t need to? Do you realize that it takes speciality skills and specialty knowledge? Aren’t you aware that you write it once and run it on one platform? Oh… and you have to pay to put it in the store and deal with review processes and the like! Why would you subject yourself to that? Don’t you read what other developers are saying?

I’m talking to you, IMDb.com. I’m talking to you, Weather Channel. And I’m sure if I spent 20 minutes perusing the apps in the iPhone App Store I could find another three dozen examples.

There’s this great thing called the Internet. It basically works the same on every platform, under the hood, and can be seamlessly customized for each device with a ton of code re-use. It’s beautiful! In fact, we’d all be writing web apps if we could get away with it.

So I’ve put together a little guide for you here when planning your mobile app. A few questions to help you decide:

  1. Is your app useful without pulling information off the web?
  2. Does your app contain capabilities that are required when you have no Internet connection?
  3. Does your app require special hardware to function well?
  4. Does your app work best only on a single platform?
  5. Does your app require special graphics or other capabilities to work well?
  6. Do you need your app to respond to device orientation changes?

If the answer to all of these is YES, then by all means write a native app. But if your answer is NO to the majority of them then for goodness sake focus on writing a mobile web site instead. In fact, spend some time thinking about the required product before hand. Lop off any features you don’t need first then ask yourself these questions.

And in this last point, I’m particularly talking to you, IMDb.com. You write an app and don’t even have a mobile web site! What’s wrong with you people?

Vonage: How To Make Your Customers Disloyal

It is very rare that I have an experience that ends in such utter failure as the one I just had with Vonage.

I signed up for Vonage two years ago, liking the idea of getting a phone line that was less expensive than the landline offered by my local phone company and not quite ready to dump our phones for cell phones. But over the past two years, our need for a home phone became less and less, getting to the point where all of our time spent on the phone could easily be done within the cell minutes.

Unlike others on the web, I had a few connection issues but always had a good experience when calling their support or using their systems. The problem didn’t arise until I tried to cancel. The word deceptive practices is an understatement.

So I called two months ago to cancel, waited on the phone a short time for a representative. When he came on, he told me he could handle that for me, no problem. He politely offered a few options to keep me on, as I’d expect. No company likes losing a customer and they were actually good deals. He offered to cut my bill in half for a year, for example. But when I politely said no, he said he’d have the phone disconnected on December 3, giving me the interim time free in case I wanted to change my mind.

I confirmed all this, got a confirmation number and hung up, thinking I’d been taken care of.

December 3 came and went. We still had a dial tone. December 4 came and went. Still had a dial tone. December 5 I called to find out what was going on.

The first person looked at my account and immediately transferred me to a manager. The manager was cordial, apologized for the mis-communication and explained to me that by accepting the free month, they required me to call back again to disconnect! News to me, as I would not have accepted the free month if that was the case. She immediately disconnected the number, gave me a refund for the month (although she still charged me $.90 or so, which I can only assume was the 1-day fee for the month) and sent me on my way.

I don’t mind having to jump through a hoop to disconnect by making the phone call. Nor do I mind that they spend a bunch of my time trying to get me to stay on. What I do mind, though, is the deception. The key to customer satisfaction is pretty simple, I think. Say what you’re going to do, do it, then tell them it’s done.

Now, Vonage lost me. (And apparently I’m not alone.) If I ever need a home or business number again, it sure won’t be with them. And before, when I recommended them to friends and associates, now I’m telling everyone who reads my blog — thousands of people every month — not to touch them with a ten foot pole.

The Real Apple-Developer Goal

Maybe this is Steve Jobs master plan. It seems like the company from Cupertino rarely does anything that isn’t thought out to the nth degree. So why would the App Store be an exception?

The pain is real. Developers are annoyed at Apple, annoyed at the review process, annoyed at the App Store’s winner-take-all approach. The average developer has only made about $8500, after all, barely even worth the time and effort.

At the introduction of the iPhone three years ago, I vaguely remember Steve Jobs saying over my dead body when it came to native apps, saying web apps can be just as good. Eight months later and Apple introduced a development kit.

So maybe this is part of the plan. We’ll allow native apps, Apple decided, and that will allow the developers to write apps. After all, native is really good for certain applications. But when it started getting out of control, we’d just let things stay that way. The reality is developers will go to the money and as long as Apple is killing it in volume, the developers will keep writing.

Apple still talks web development, keeps improving web apps, keeps advancing the capabilities, speed and power of mobile Safari. And now the conversation has started, a swing away from native and a conversation about web.

So Apple will bide it’s time, improving its platform, knowing that more developers will find web development preferential. After all, not all applications are better for being native. The problem of reviews will resolve itself.

And maybe that was the plan all along.