Wednesday, October 03, 2007

Quo vadis, iPhone?

People all over the web are giving Apple hell for breaking unauthorized and unsupported third-party iPhone hacks with its 1.1 software update. There are two types of these hacks: ones enabling the iPhone to be used with any SIM card; and others which just let users install third-party apps on the device. The former directly hurt Apple and AT&T, therefore Apple is actively trying to prevent these hacks. The latter, however, don't do much harm, thus Apple doesn't go out of its way to break them. Break them it does, nevertheless, prompting liberation movements to spring up and demand the franchisement of the iPhone from the evil tyranny of Apple. What could be more ridiculous than that?

Some of these critics jump to the conclusion that Apple doesn't get the importance of third-party applications. Well, chance may have it that Apple doesn't plan to ever allow third-party apps on the iPhone, but we don't know that.

I'm more inclined to believe that Apple wants to do it right.

There's a common sentiment out there that accuses Apple of some sort of haughty elitism. Wil Shipley put it this way:

I know Steve Jobs; he's actually amazingly like my old business partner Mike Matas. They both love closed systems, for a simple reason -- they both know they're smarter than anyone else on the planet, and they don't need anyone else mucking up their systems. Steve would rather have no third parties for Mac OS X if he could get away with it -- Apple, of course, would do a much better job on anything, but since customers insist on Photoshop and Office and other apps, he puts up with them. (Well, except, now Apple has their own office suite.) Steve knows that on a computer, having a broad spectrum of apps is more important that having them all be Apple-perfect.

But on iPods, Airports, Apple TVs, and now iPhones, Apple wants every app perfect. Which is nice, in theory. In practice, it means innovation only happens at Apple's pace. The marketplace of ideas is much smaller, and the devices are much poorer because of it. (Example: Why can't I stream music from my iPhone or iPod touch to my Airport Express?)
Emphasis mine.

Now, we don't know if Apple plans to open up the iPhone for third-party developers. But Wil is right: Apple doesn't need anyone else mucking up its systems. Some of those unsupported, unofficial third-party hacks would do just that. Muck up the system.

If Apple opens up the iPhone for developers, making third-party apps official and a supported feature of the phone, it won't be able to afford to have those apps crash the phone.

Apps on a computer can crash, sure. We're used to that. There are about five ways to force a misbehaving Mac app to quit, and a crashed Mac up will leave the rest of your system intact.

But remember the days before Mac OS X? Remember the bomb?

Remeber when a crash could render your entire computer unusable?

Do you also remember what happened when your frontmost app got unresponsive? Basically, so did your Mac.

With the limited user interface of the iPhone, a misbehaving app can easily create the illusion of a misbehaving iPhone. How do you know that it's only Johnnie's Shareware Recipe Editor that froze, not your iPhone? Will you blame Johnnie's Shareware Garage, LLC, or Apple, Inc?

Besides, people are far less forgiving about a frozen phone than about a frozen computer. A phone is just a phone, even if it can double as a computer.

What next? Your car keys freezing? Your beer opener?

If Apple does plan to allow third-party apps, it needs to perform some magic that prevents the user from just about ever having an iPhone locked up by third-party software.

Perhaps a daemon should be running, monitoring every application's responsiveness, and returning to the home screen when the frontmost app is having problems? Add a status message that informs the user of this incident? Or should there be a well-advertised, sure-fire, and foolproof user action that never fails to quit a misbehaving app? These things would need to be sorted out.

And besides, Apple would need to isolate parts of the system from direct access by third parties. We know that the iPhone was completed on a tight deadline, remember why Leopard hasn't shipped yet? So, it's not unreasonable to think that its software still has some rough edges, and nobody other than Apple's engineers should really be playing with it for a while.

So even if third-party application development is in the iPhone's future, it's only reasonable to expect that it takes time to implement properly.

I think that, for the near future, iPhone development will consist of the following:

  1. Apple delivering significant and free software updates: Notice how Apple's subscription-based iPhone accounting suggests that the iPhone will have more features in the future courtesy of Apple.
  2. Hand-picked third parties delivering applications, either for free or for a small fee: think about Google Maps already on the iPhone, and iPod games that are sold via iTunes. The iPod is also a closed platform, but there's still some third-party development going on, closely controlled by Apple. There's nothing stopping Apple from doing just that. As they would get to "bless" any third-party app before it becomes available, Apple could maintain its strict quality standards for the phone. A rumor to this effect is already out.
  3. Web applications may transition into Widgets. Rumors already suggest that improvements to the WebKit framework are on their way, enabling "web applications" to be stored offline. What exactly separates an "offline web app" from a Widget? Not much, mostly the capability to run arbitrary code (including Cocoa Objective-C). I'm inclined to think that a Dashboard-like SDK may be a compromise between the needs of Apple and developers: a sandbox with limited access to iPhone features, but at least not something that runs on a server.
Unlimited, no-holds-barred third-party development could turn the iPhone into a PDA and more. It could turn the iPhone into a VoIP device, causing a loss of revenue for AT&T (and thus for Apple as well).

Apple's new software updates for the iPhone will certainly serve as an indication as to where Apple wants the device to be heading. The first software update has come and gone, and we still don't have a clipboard, making the iPhone basically useless for any text editing apart from typing out a quick e-mail. There's no user-accessible file system, no SSH client, no instant messaging, no editing capabilities for Microsoft Office documents. In other words, the iPhone is not a PDA, and it's definitely not targeted at enterprise users or geeks.

The iPhone may be the smartest phone ever made, but it's not a smartphone.

Does Apple even want to change that? I'm getting the impression that Apple wants the iPhone to be pretty much what it is today, and those of us who expect software updates to turn it into a device with a greatly expanded set of capabilities will be ultimately disappointed.

I hope to be wrong, but I think Apple wants the vast, almost unlimited potential of the embedded OS X operating system to remain largely unfulfilled on the iPhone.

If the rumors of the Newton's revival are true, then perhaps those of us waiting for an ultrasmart PDA from Apple should set our sights on this new mythical beast, and resign to the fact that the iPhone is, and will always be, a cellphone.

No comments: