33 Comments

Summary:

When Apple announced its push notifications for mobile software titles, I was skeptical. That’s not surprising, because I was raised in a multitasking world. In that world, you just run multiple apps at the same time and flip around from one bit of software to another. […]

iphone-push-notificationWhen Apple announced its push notifications for mobile software titles, I was skeptical. That’s not surprising, because I was raised in a multitasking world. In that world, you just run multiple apps at the same time and flip around from one bit of software to another. It’s the world that we all live in today with our computers. But the mobile world isn’t the same as the desktop world. Running multiple applications can hit the CPU and radios harder on our handsets, which, in turn, use more battery power.

So Apple’s idea is to manage software events on its servers and push a notification of those events to your handset. Essentially, the software relies more on the network and servers than the client hardware. The benefit is that a third-party app isn’t just sitting there running when there aren’t any events that require it to be active. This paradigm saves battery life because software only runs when you need it to. On the other hand, it requires third-party developers to channel all events through Apple’s infrastructure. I find that to be limiting, but it’s a necessary evil to gain the benefits.

For the past few weeks, I’ve been able to use two handsets, my Apple iPhone 3GS and my Palm Pre. These represent the two ends of the spectrum. The iPhone supports the effective push notifications, while the Pre offers superb multitasking capabilities. And I’m on the fence about which is better. Simply put, they both work well, but with tradeoffs.

The Pre offers the same desktop computing paradigm where I can load up and run several applications all at once. It’s easy for me to navigate to different apps. And it’s fast, too; by leaving apps up and running, I don’t waste any time waiting for an application to fire up. But I suspect part of the Pre’s fast battery drain is due to running several bits of software all at once.

On the other hand, the iPhone doesn’t waste CPU cycles with software that’s simply sitting there churning and burning. And when the push notifications are working 100 percent, it’s a relatively seamless experience. Using Beejive, for example, I can be “logged in” to IM, even though the app isn’t running. When someone at work starts an IM conversation, a notification is pushed to my iPhone, and I can start the app with one button press. The app fires up, and the IM conversation is there for me to read and respond to. But again, push notifications are only as good as the service they’re on, and I’ve seen a few slip through the cracks or take more than a few minutes to show up.

Which is best? Both have their share of pros and cons. While I like the multitasking approach that Palm offers, it may hit the battery too hard for power users of the Pre. And I’m not sold on the reliability of Apple’s notification service just yet. If forced to choose a model, I’d probably go with push notifications, simply because a device with a dead battery is a useless device. Any way I can use my handheld effectively and save battery life is appealing.

In an ideal world, I’d really like to see a third-party provide push notifications. Such a company would offer open standards for developers on all platforms to use the notification service. That would provide the same type of experience across all mobile devices and not tie the technology to a single platform or device. Until then, however, my notifications go through Apple.

I’ll be looking at some other apps with push notification over the next several weeks. Maybe the experience will get me off the fence, since I like both push and multitasking at the moment. So far, the battery on my Pre generally gets me through a full day, so the multitasking isn’t eating juice too much. I also have both devices set to fetch email every 15 minutes, even though both can handle push email. I don’t consider email an “instant” communications method: For that, I have a phone and instant messaging.

What are your thoughts about multitasking and push notification on mobiles so far?

  1. Don’t forget that the iPhone does support multitasking but Apple have chosen to limit it to their own applications. In effect they’ve created a two-tier system where their applications look good running simultaneously and everyone else’s are forced to rely on a slower, less fool-proof, Apple server dependant push system.

    Also, how bad is your Pre’s battery life because Palm have chosen a smaller battery than the iPhone (1150Mah vs. 1400Mah)? Do you struggle to get through a day on a full charge because the Pre’s battery is a little on the small side for my liking.

    Share
    1. Yup, the native apps can run in the background as you pointed out. As far as the battery life on the Pre, the battery capacity difference is one of many reasons the device might not run as long on a single charge, but I wasn’t going to outline all those reasons in this article. ;)

      Share
    2. That’s fair enough :)

      The Pre will be released over here shortly and I’m due for an upgrade so it’s on my list of phones to consider. However, battery life is a big factor for me – my N95 8Gb lasts the best part of the week on a single charge and I don’t really want to go back to charging daily if I can avoid it but I really like the look of WebOS.

      Decisions, decisions.

      Share
    3. Jake:

      I don’t think Apple is intentionally trying to make other people’s apps look bad – nor are they trying to force developers into using their system. The simple fact of the matter is that the 1st and 2nd gen iPhones don’t have a lot of RAM. Pick up any iPhone developer book & you’re warned repeatedly about how little RAM there actually is to work with.

      The iPhone and iPhone 3G both have 128 MB of RAM. After the OS is loaded, along with the various housekeeping tasks, you’re left with about 64 MB of usable memory. There is no swap-file or similar virtual memory system. 64 MB is all you get.

      In the old days of assembly language apps, 64 MB is plenty. But when you’re talking apps written in Objective-C with all the bells & whistles, that isn’t much room to work in.

      By limiting the programs capable of multi-tasking to their own, Apple is ensuring the stability of the phone – it’s not going to crash or become unstable because your IM client has a memory leak.

      Now, from what I understand the new 3GS has 256 MB of RAM, and future iPhones will presumably have even more. With more room to breathe, I’m curious to see whether Apple will continue the moratorium on 3rd party background apps or not. But I can definitely understand and appreciate it on their current hardware.

      Share
    4. I understand what you’re trying to say Mike but I just have one problem with your argument.

      Windows Mobile doesn’t have these problems so why does the iPhone? In fact, for years, Windows Mobile devices were released with a total of 32 or 64Mb of RAM (before loading the OS) yet still allowed multitasking. That includes modern apps developed in languages targeting the .NET framework.

      It’s awfully hard to reconcile those facts with the limitations imposed by Apple and it certainly seems as if this is just about giving their apps an unfair advantage so they shine over the competition. Maybe they are just ensuring that their phones stay stable without having to reboot too often but it seems a bit unfair to prevent users from choosing which apps they’d like to run in the background. Either way, push notifications seem like a dodgy solution to a problem that probably doesn’t exist.

      Share
    5. Just having started using the iPhone from a WinMo environment (HTC Fuze and HTC Advantage) I *really* appreciate that I don’t have to reboot every day or two. I haven’t booted this iPhone since installing my last app about a week ago. Bottom line: You can keep WinMo!

      Share
  2. Honestly I would like the best of both worlds. For IM apps push is great, but some apps need to run in the background (radio apps, etc).

    On a side note…unless you get like 10 emails every 15 mins it would take less battery to set your email to push.

    Share
  3. How are you liking the push notification for streaming media? Right exactly. It only works on messaging apps and does work well, but you quickly find the limit …

    My take – http://www.atmasphere.net/wp/archives/2009/06/23/the-iphones-closed-but-no-one-seems-to-mind

    Share
  4. The Pre puts the onus on the user to close something down to save cpu cycles and battery life.

    In my opinion that is more reflective of power-user friendly device than the iPhone.

    Push notifications are useful in far less situations than Pre’s multi-app and notification style approach.

    My two cents.

    Share
  5. An app that is just “sitting there” doesn’t waste CPU cycles. It may waste memory.

    The post doesn’t make clear what push is being used for. IM and e-mail, anything else?

    It seems to me to make sense for both because why should each application ask the server continually “has any new message arrived?”. But both programs should be running anyway: e-mail because it’s important, and IM because it depends on presence. Correct me if I’m wrong.

    Share
  6. I think push notifications is great for IM like applications. But listening to Pandora while surfing would be cool.

    On my Nokia E71 I have an app that silences my phone when I am at work (based on location) or at night (based on time). There can not be a third party app for the iPhone that does that.

    Share
    1. Unless Apple allows your phone to push your current GPS location to their servers on a set time interval, but I just don’t see that happening.

      Having an app running in the background to know your current location could open up so many new app ideas. Hopefully it’s not too long before the iPhone gets background apps, even if it’s just on the 3GS.

      Share
  7. I can do either on my iPhone and I am quite happy with that, yes, I am breaking Apple’s rules to do it.

    However, jailbroken iPhones have backgrounder as an addon and several other power user friendly value ad-on features. It’s not a perfect system, when it runs out of memory the apps just go away. (That is something that would be hard to do on the 3GS with double the memory)

    So for me…I will take both. Thanks.

    The sooner Apple gets with the program and addresses the issue the better. So bash away at them about it…but remember if you want it … it can be done on the iPhone.

    Of course…push notifications can not be replicated on the Pre (yet) no matter how much you want to….

    Share
  8. new thought … they are not trying to be the same thing. Push Notices are Apple’s answer to the Pre and Android active notification systems.

    Share
  9. I say there great, its just that there never instant and it takes a while to open up the app.

    Share
    1. Which is quicker?
      Pull up a list of all multitasking apps.
      Search for the app you wish to open.
      Wait until the app opens.
      or…
      Just reopen an app that’s NOT multitasking?

      Should take about 1-2 secs… either way.

      Share
  10. The only reason I’ve jailbroken my 3GS is for background apps. I like to be able to choose if I need to leave an app running, like internet radio.

    Share

Comments have been disabled for this post