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.

Open Mouth, Insert Foot

In the course of a single week, two behemoths of mobile technology have opened their mouths and inserted their foot. Last week Ray Ozzie, Microsoft’s chief software architect, spoke to a group of developers at Microsoft’s Professional Developers Conference. Among his comments:

It [smartphone application development] is a completely different situation from the PC market, where software’s built to run on a Windows or a Mac. Mobile apps require very little development, so it’s much easier to bring them onto every platform. [emphasis added, source]

Phil Schiller, Apple’s Senior Vice-President for Worldwide Product Marketing, tried to play one-upmanship in an interview with BusinessWeek. In his interview, Schiller claims that:

Developers are generally glad to have this safety net because usually Apple’s review process finds problems they actually want to fix.

While both Microsoft and Apple can have their opinions about mobile applications, it’s not recommended to disparage their developer communities. In Microsoft’s case, belittling the community that they need to help them succeed — in fact, the community that helped make Microsoft highly successful to begin with — doesn’t do much to endear the developer community to Microsoft’s fading Windows Mobile platform.

In Apple’s case, burying their heads in the sand about the problems — treating this situation as a PR opportunity instead of transparently laying out concrete plans for fixing it — doesn’t help the developer community feel better about it’s Apple relationship. Developers do care about the review process — most developers have at least one rejection story even if they don’t make it public and each is annoyed at the multi-week delay in getting their apps to market. There is a growing perception in the community that Apple is transforming into the Big Brother it parodied in its famous 1984 commercial. While it’s not true, at some point perception becomes reality.

The reality is neither platform — Windows Mobile or iPhone — will succeed or fail based on these problems. In Microsoft’s case, they have much larger issues with markets and manufacturers as they have been eclipsed in the enterprise by RIM BlackBerry smartphones, in the consumer market by iPhone, and by device manufacturers dropping Windows Mobile in favor of Android.

And Apple, for all the problems with the app review process, has bigger issues involving carrier relationships and enterprise compatibility. Even developers, who hate the review process and are threatening mass exodus, wouldn’t be complaining as vehemently if their apps were making them living wages.

In the end, none of these comments will have a huge impact on Microsoft’s or Apple’s mobile businesses. But it wouldn’t hurt if both extended olive branches to their developer community rather than smacking them with it.