« Bits of Skype culture: Millimallikas | Main | Best wishes to Tropicaljantie »

3G iPhone misses continuity of connection

The next iPhone remains a single tasking beast, seductive as hell. Apple Pushiness is One WayBut the iPhone lacks the background processing Skype uses to keep you connected.

Skype does wonderful things in the background.

  • Sharing your availability and mood message.

  • Queuing inbound friend-requests and retrying outbound requests.

  • Persistent chat room messaging.

  • P2P supernoding that keeps the Skype network connected.

  • File transfers that continue after you start something else.

  • Updating the presence, profile, and mood of each of your contacts.

  • And answering Skype calls, when you are using your device for something else.

Rob Hof of BusinessWeek live blogged Monday's Apple WWDC keynote:

[Scott] Forstall [SVP iPhone software], however, has more to talk about. He sets this up by trashing companies — he shows Samsung [Instinct] — that allow apps that run background applications after you think you've stopped an app. Forstall says this eats up battery life and slows performance.

So Apple instead is providing a push notification service for developers, which allows them to send various types of alerts after the application is no longer hooked up to the network. He says this scales better because there's only one persistent connection needed. This works over WiFi and cellular. It will be available in September.

Engadget quotes Forstall in more detail:

"There has been one feature request that doesn't currently exist... it's mainly come from clients like IM, where by their very nature they want to get a notification even if the user isn't running the app. We absolutely want to solve this problem, the question is how?"

"The wrong solution is to enable background processes... to allow an app to continue to run even after their user thinks they quit it." Windows Mobile, we're looking at you. Why's it bad? "First, battery life, it drains power. Second, performance, it sucks up cycles and makes other things feel sluggish." Uh oh, he's showing the WinMo task manager.

"We've come up with a far better solution -- a push notification service Apple will provide to all developers.

Apple will maintain a persistent IP connection to the phone, where a 3rd party server can ping Apple's notification service to your device. It can push badges, sounds, and custom textual alerts (like how SMS overlays look).

"The great thing about this: it scales... it's a unified push notification service for all devs. It preserves battery life and maintains performance. And it all works over the air -- WiFi and cellular. Available in September, but next month we'll be seeding to devs. This has been an update of the SDK, thank you!"

But this push service sucks.

  1. It intermediates Apple. You want to talk to your customers? You have to go through Apple. It's a bottleneck, single point of failure, and a (gag!) walled garden.

  2. It is hostile to P2P. Customers cannot talk to each other. One way notification goes from servers to phones. Phones can't send notifications back to servers or to other phones.

  3. Notifications kill foreground sessions. For Apple's push service to do anything useful, they need to invoke an application on the phone. And since apps only run in the foreground, they will close your current foreground app to launch themselves. Is this consistent with good UX design? 

Finally, Apple's Push abandons Cluetrain values. Where the Cluetrain Manifesto empowers people, their tools and the edge of networks, Apple's Push Notification Service concentrates power in Apple's hands while tying user hands.

TrackBack

TrackBack URL for this entry:
http://skypejournal.com/blog-mt/mt-tb.fcgi/4032

Comments

Your point about Skype "sharing availability" would be a good one - except Skype consistently gets the availability wrong, and seems incapable of fixing it, so how exactly is that an advantage? Likewise, incoming/outgoing "friend requests" are only delivered when BOTH parties are online simultaneously, so when Skype is consistently wrong about the presence of one or both parties, the delivery of such requests can be delayed by days or weeks unnecessarily.

There's one point, you haven't thought about: The Push Service is just a notification and does not include any personal data - so it just tells you, that your app is getting some new infos. So are still communicating via web / umts and not via Apple. And the point, that you have to close the current app is not true - you can do it when ever you want to. Its just a sms...

1: the iPhone is allready a walled garden, no?
2: I get sms and emails, even though the sms or email application is not in the foreground.

The situation will probably be the same with the official push notification service.

You bring up valid points, but it seems to me those pale in comparison to the points that Apple raises: namely, the high likelihood that background processes will consume significant power and CPU cycles.

Would you mind at least addressing those concerns? Do you think they're valid?

I think your third point--that notifications will kill foreground processes--is likely incorrect. Apple didn't say that the iPhone wouldn't support background processes...they said that 3rd parties can't create them. Apple can, and of course they already do, as we can see when a phone call comes in and you happen be to using a different app.

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

Brought to you by:

Convenos_125x125.active.gif

Auto generated tags