I am Drew Yeaton

and I design standing up.

0 notes

Think About Push in a Different Way

I’ve been anticipating iPhone Push app functionality for a while now—and it’s finally here. The interesting part about this concept, as opposed to having apps run in the background, is that it is a more distributed system.

Take, for instance, a simple background process that functions to check for new messages (eg. email, IM, etc.). A standard way of implementing this is to repeatedly poll a server every few seconds. When a new message is present, the user is notified. Depending on the checking interval, the appearance of “push” notfications can be faked.

This is the same type of system that the iPhone uses, except that there’s a single mechanism that handles this functionality for all apps needing it. So instead of having many seperate checks to various servers, there is a single check to an Apple server where various services hook into. However, this is not the interesting part.

Consider that, instead of a “background app” being an app that runs on your own phone, a “background app” is an app that runs on someone else’s phone, computer, or server. This effectively offloads the processing to wherever the change originates and uses Apple’s push conduit as a direct connection to your phone for notification. When thought about this way, the “workaround” for background processing is actually a huge advantage to developer’s wanting to create connectivity apps (which is a phone’s purpose in the first place).

Filed under programming iPhone thoughts