Zeke Weeks

Web {Developer, Strategist, Native}

Tag Archives: development

What iPhone OS 4 means to everyone

0

Today Apple announced their latest revision to iPhone OS, the mobile computing platform behind the iPhone, iPod Touch, and iPad. iPhone OS is running on over 85 million devices, so it’s a pretty big deal. I don’t want to waste my breath repeating every announced feature, so I’ll just refer you over to Engadget’s excellent summary of it all.

This will be the fourth major release in four years for Apple. But for the first time, this release seems to be more evolutionary than revolutionary. Overall, I think Apple is trying to keep up in feature parity with this year’s huge new threat from Android devices. That competition isn’t necessarily a bad thing; Apple has a long history of waiting to enter a market and then turn it upside down and shake all the customers out of the competition’s pockets. (See: iPod, iPhone, possibly iPad.) But I think OS 4 in specific brings up some new issues for everyone who has a reason to care about mobile computing.

Innovators & Developers

What worries me most is Apple’s approach to allowing background tasks to run. Instead of implementing real multitasking in the same way desktop computers do, where every program stays running and can request CPU resources at any time, they have created seven services to allow specific actions to run in the background: audio, VoIP, geolocation, push notifications, local notifications, task completion, and fast app switching (which isn’t really a service, but the new behavior of “sleeping” rather than quitting an application.) Yes, this allows for a lot more functionality in apps while addressing a lot of the problems inherent in allowing multitasking on a mobile device. But why it’s interesting, and in my opinion not so great, is because it limits ways developers can innovate and make the next “killer app.” It’s like Apple said, “What can’t people do without multitasking?” (Or more likely, “What is Android doing now that we can’t?”) and then put out specific fixes for those existing use cases. Yes, users will soon be able to leave Pandora or Skype running in the background. But guess what? You don’t work for Pandora or Skype, and you probably don’t want to compete with them. This is a stop-gap reaction to current iPhone deficiencies instead of a new platform upon which innovators can make the Next Big Thing. I’m not saying iPhone OS multitasking itself is a bad feature; I’m saying that the platform is restricted to moving in directions chosen by Apple instead of letting developers take the helm. My bet is that we’ll see killer apps continue to be more functional on Android before they get “backported” to iPhone versions.

Another disturbing revelation is Apple’s banning of tools that allow applications to be developed with other platforms and then cross-compiled to run as native iPhone apps. MonoTouch allows iPhone apps to be written in .NET, and later this month Flash CS5 will add iPhone support as well. The new terms:

3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).

I believe this crosses the line and is textbook anticompetitive behavior. It’s one thing to say your OS will only run Objective-C apps. It’s another thing to say that your Objective-C can’t have been created by certain tools. I’ll leave it at that because John Gruber already has a thorough analysis of this issue.

Consumers

Customers can look forward to yet another great evolution in one of the best – if not the best – mobile platforms. The new features keep up to par with all the new Android phones while still beating them on ease of use. If Apple’s track record continues this year, there will be a whole lot more for consumers to be excited about when new iPhones are announced this summer.

The Competition

  • Android (Google): Android’s key differentiators are gone, except for Google integration and the open development model. Google had better hope the iPhone stays exclusive to AT&T. If Android doesn’t keep up on performance and improve the user experience, fighting the iPhone will get a lot harder this year. Potential game changer: open app marketplace yields a killer app unavailable on the iPhone.
  • Windows Phone 7: iPhone OS adds better and better enterprise features with every release. Trying to convert to the same business model as the iPhone is a fatal mistake. Microsoft needs to kill WinMo 7 and buy RIM or Palm if they have any will to survive in this space.

Cell Phone Carriers

Skype has an amazing iPhone app. It will soon be running all the time and will let people make and receive unlimited calls for free. AT&T has already changed its mind and decided to allow unlimited VoIP traffic on their cellular data networks. The days of bundling tiered voice plans to smartphones are numbered.

Me

This just further intensifies the smartphone identity crisis I’ve been going through all year. As a consumer, I feel like I’ll be very happy buying an Android phone or a new iPhone later this year, as both serve my needs so well. Apple still creates a better holistic product due to their vertical control of the whole experience. But at the same time, my long bet is on Android’s success as an open platform. The feature parity is so ridiculous now that I’ll be mostly considering non-OS aspects to make my purchase, like network providers, hardware features and build quality.

Follow

Get every new post delivered to your Inbox.

Join 802 other followers