Is iPhone out of business?

analysis
Jun 13, 20074 mins

Jobs tells developers that for them, iPhone is purely a portable browser. Microsoft, Nokia, and RIM rejoice. At Macworld Expo in January 2007, Steve Jobs told the crowd that Apple's upcoming mobile device, iPhone, runs OS X. I think that it's an easy and reasonable leap from that statement to the expectation that iPhone will be open to custom applications, an expectation that I held and which I'm sure many devel

Jobs tells developers that for them, iPhone is purely a portable browser. Microsoft, Nokia, and RIM rejoice.

At Macworld Expo in January 2007, Steve Jobs told the crowd that Apple’s upcoming mobile device, iPhone, runs OS X. I think that it’s an easy and reasonable leap from that statement to the expectation that iPhone will be open to custom applications, an expectation that I held and which I’m sure many developers shared. A Unix phone with Apple’s UI panache? Touch, Wi-Fi, Bluetooth and mobile phone in one device? I was ready to take a three month sabbatical from InfoWorld just to spelunk around inside iPhone’s APIs and its OS X core.

Looks like I’ll have to continue to hone my mobile app development chops in the familiar domains of BlackBerry, Symbian/Nokia, and Windows Mobile. At the Worldwide Developer Conference on June 11 2007, Steve Jobs paved the way for the June 29 delivery of iPhone by telling a crowd of some 4,000 that where developers are concerned, iPhone is a handheld Safari browser. “You don’t even need an SDK,” Steve said before he invoked the magic phrase “AJAX and Web 2.0,” to let the press know that iPhone is open to all applications that take advantage of these state of the art paradigms. Steve cited Salesforce.com as the exemplar of the type of Web-based application one would run on an iPhone.

That sounds pretty until you realize that of all the ways to write and package software, none is less suited to mobile use than a Web application. Salesforce makes this plain with Salesforce To Go, custom native software targeted to Windows Mobile, BlackBerry, and Symbian devices. Like other companies with experience in mobile software, Salesforce realizes that its software and its service must compensate for the uniqueness of the mobile environment. Mobile connections to the Internet are unreliable. Delivery of data cannot be guaranteed, nor can it necessarily be transferred in the single POST chunk that Web servers expect. A pervasive queued request, pushed data model is essential so that users don’t have to make more than one request for any information or fill in any form more than once. Off-line access to documents is key as well, and it won’t do to have users rummaging through their browser cache or manually saving Web pages or documents linked to them.

Quite apart from the technical issues, core problems with usability accompany the use of a browser as a front end for mobile applications. If Excel shut itself down after ten minutes of inactivity, replacing your spreadsheet with a full-page notice reading, “your session has timed out. Log in again,” how often would you use it? No user interface standards exist to govern the behavior of Back and Refresh in interactive applications. If the Web interface for an application was designed, as most (unforgivably) are, with the assumption of a 1024 x 768 minimum display area, iPhone’s Safari browser might be able to reformat such a site to fit, but even the best adaptation can’t make input forms scale to the size of a handset’s display.

I’m willing to give Apple some benefit of the doubt. There is a chance that the JavaScript implementation in iPhone’s Safari browser exposes some iPhone functionality. Apple demonstrated dialing the phone and reporting the device’s GPS coordinates to Google Maps — a native third-party application, so at least one developer has an iPhone SDK — from within a Web application. It went by awfully quickly, but it looked like a Web app might have been able to call up an entry in iPhone’s Address Book. If iPhone’s JavaScript is appropriately wired to the device’s built-in applications and capabilities, then there is cause to hope that practical applications could be written in JavaScript. If that’s so, then it may be possible for developers to create limited local applications as well.

Jobs did not mention whether iPhone has a Java virtual machine or a Flash player. I couldn’t tell whether it was possible to have multiple instances of Safari running, which would offer the potential to run multiple JavaScript programs simultaneously. But even in the best case, iPhone developers cannot create applications that extend iPhone’s functionality. Extensibility is what makes a smart phone smart. Nokia, Samsung, Motorola, HTC, RIM, and absolutely every smart phone player but Apple understands the need for this. If Apple couldn’t pull an SDK together in time, or if it just decided that custom apps didn’t fit its business model, which is the case with Apple TV and iPod, Steve Jobs should have said that. I can handle having my expectations go unmet. But to trumpet AJAX and Web 2.0 as iPhone’s development platform is worse than spin. It strains my faith in Apple.