Get Better Gear!

Premier Sponsors

TechRestore

Other World Computing

Top 5 Free Apps

Release Date: August 05, 2009
Genre: Games
Release Date: May 22, 2009
Genre: Games
Release Date: August 29, 2009
Genre: Games
Release Date: March 27, 2009
Release Date: August 07, 2009

iTunes New Music Releases

Release Date: September 29, 2009
Genre: Rock
Release Date: September 20, 2009
Release Date: September 15, 2009
Release Date: August 25, 2009
Genre: Rock
Release Date: August 25, 2009

Top 5 Paid Apps

Release Date: April 22, 2009
StickWars $0.99
Release Date: March 31, 2009
Genre: Games
Bloons $0.99
Release Date: April 05, 2009
Genre: Games

Discover New Music

  • Playing the Angel

    • 8 out of 10
    • Depeche Mode
    • Oddly enough, Playing The Angel is a return to form for Depeche Mode, even though it may well be argued that they never truly deviated from their roots in their more recent offerings. In the

  • Modern Lovers

    • 10 out of 10
    • Modern Lovers
    • This timeless masterpiece is little known, but it has inspired almost as many bands as The Modern Lovers' own inspiration -- and only slightly better known -- The Velvet Underground & Nico.

  • Trouble

    • 8 out of 10
    • Ray LaMontagne
    • At first, Ray LaMontagne might strike you as just another breathy-voiced knockoff of folk/rock guitarists like John Mayer and Jack Johnson. But he's actually got a better voice than either, he tell

  • One Word Extinguisher

    • 8 out of 10
    • Prefuse 73
    • It's an album about a breakup, done with beats instead of mopey lyrics. But the beats are raw, and the emotions are there, even if there aren't many words on top of it. While possibly not Scott Herren
  • With Teeth

    • 4 out of 10
    • Nine Inch Nails
    • In the sprawling post-A&R rock and roll world, there are two camps: the Beatles and the Stones. The Beatles are the artists that like to explore, evolve, and change styles. The Stones are the artis

Reader Specials

Visit Deals On The Web for the best deals on all consumer electronics, iPods, and more!

News

Apple’s iPhone Notification: Push and a Little Shove

Appleis presentation at WWDC of an alternate approach to background processes for the iPhone, compared to Microsoftis Windows Mobile, has implications for both developers and users. It requires developers to invest in new systems and takes away some of their direct control of the iPhone, but it also improves the user experience and allows Apple to develop an enterprise revenue stream.

Background on Background

Historically, many smartphones have used background processes to respond to external push notifications and e-mail. One problem with that approach is that an undisciplined background application can chew up the battery and steal performance from the user interface. This has been a major criticism of background applications on other smartphones.

The dilemma is that if the phone manufacturer uses a faster, more expensive CPU to improve the user experience, the battery life is reduced. As a result, itis hard to have a snappy interface, background processes, and a long battery life. Something has to give.

One of the typical things developers like to build into their smartphone apps is notifications, and notifications have typically used background processes to respond. For example, a forthcoming iPhone app called Loopt, will be able notify the iPhone user than a friend has just come within a certain distance -- the friend might be available for, say, lunch. On another platform, a background process would be waiting for that notification, and that creates the problems described above. Add a few more like that, and the phone starts to feel like molasses.


Photo Credit: Getty Images

The WWDC Keynote

At WWDC, Appleis annual Worldwide developer Conference on June 9th, Scott Forstall, Appleis Senior VP for iPhone Software, spoke about this issue. [The keynote is the only part of WWDC not under a non-disclosure agreement.] Mr. Forstall described a limitation of the current SDK for iPhone developers, namely, there is no way of generating external notifications when the developeris app isnit running. As a result, developers whoive been working with the SDK have asked Apple for a solution. Since push technologies are very popular on other platforms and Apple was under pressure to check all those enterprise boxes, the company did indeed need to come up with a solution.

For reasons that will be explored later, Mr. Forstall explained that Apple believes background processes are not the right way for the system to respond to incoming notifications. The reason, he said, is based on experience with other mobile OSes -- a gaggle of background apps can seize control of the CPU, degrade the user experience by interfering with the smooth operation of the phone, execute without the useris knowledge and chew up the limited battery power of a smartphone.

With all that in mind, Mr. Forstall made his point by demoing a strained solution in Windows Mobile ... and poked some fun at it ... a task manager. With a task manager, the user is required to tinker and decide what resources a process gets. If the user makes a mistake, and degrades or quits the wrong background app, something annoying could happen - a missed event. "This is nuts," Mr. Forstall said.

Appleis Approach: Some Push and Shove

Mr. Forstall explained that Apple absolutely wants to solve the problem, but itis going to do it without utilizing background processes and geeky task managers. The way they plan to do it is with a push notification service that developers can invoke to push badges, sounds and text alerts. [Badges are those tiny red numbers next to an iPhone app icon that tell you how many items you have waiting.]

In the case of a badge, the user who notices the badge can launch the associated app and let it receive the data to be pushed. In the case of a text alert, for example, thereis a button that can launch the app to receive the data. The good news is that when the user later quits the application, itis stopped for good and thereis no danger of a lingering background application, unknown to the user, chewing up the battery. The catch is that the notification must come only from an Apple server via a persistent connection of Appleis design.

Mr. Forstall showed a diagram similar to the one below that shows how Appleis notification system will work. With desktop systems, the app (or a background daemon) can always be running, and thereis no problem. However, with Appleis solution, the layer below the dotted line must now be added for iPhone users.


Above the dotted line: the old days. Below: what has to be added.

Developers React

The issue, of course, is that now the developer will have to deploy a new server to interface with his or Internet services and they will have to connect with only an Apple server that has the sole privilege of maintaining that persistent connection to iPhones. That may or may not be the way the developer would like to communicate with their product running on your iPhone, but thatis the plan.

Some developers may have even missed the subtext of having to set up their own servers. For example, if a developer wants to write a Twitter app that pushes, he also needs to set up a server (or even a bank of servers) that will login to Twitter, pull each useris data, and then turn around and push a notification to Apple. When the notification gets sent to the iPhones subscribed to the service, the user then knows itis time to wake up the Twitter app.

Craig Hockenberry, one of the principals with The Iconfactory, makers of Twitterrific, told iPO that this may not be a problem. "Sure, you have to setup your own servers. For most developers, thatis a better situation anyway -- more control over what gets sent as a notification," he said.

Such a system will have an inherent startup cost. Mr. Hockenberry sees that as beneficial as well. "[The cost] keeps developers from doing it ijust because itis easy.i Alerts are something that should be carefully considered: they require the users attention, and in a mobile environment, that attention is precious," he added.

Sam Altman, the CEO of Loopt agreed. "Weive done push services on other platforms and have an understanding of how this works," he told iPO. "Apple has done a good thing here. They faced a tough decision, and I can understand why they did it that way."

"We also igeti the idea that some [background] applications just shouldnit be trusted with battery management," Mr. Altman added.

However, not every developer, with a great idea and well accustomed to the Mac OS X way of writing applications, may have the resources to do what these two companies plan. Also more ambitious applications, too ambitious for the current state of the iPhone technology and SDK, may have to wait.

One developer worries about security issues. "Letis assume ten developers set up Instant Messenger applications, and each of them sets up a server bank to handle badge updates so you can see how many new AIM messages you have right from your ihomei screen. Are you willing to let those ten developers store your AIM username/password on their servers just so you can check out their app?" he asked.

Digging Deeper

While Apple hasnit divulged all the details of exactly how the system will work, starting in September, 2008, itis possible to make some educated guesses based on other smartphones. James Lee, the President of Tropical Software, told iPO that because the iPhone is so new, it has to remain lightweight for the time being. That is, when the phone rings, it must ring immediately. "To get that instant response, Apple is probably doing its own preemption, reserved to just them. All computing, for example Safari, is secondary to phone activities. The question is," he said, "how much control is given to the user in order to guarantee a certain kind of experience." That control, of course, places corresponding constraints on the developeris liberties.

"For example, there may come a day when viruses do develop for the iPhone, and a company would like to develop, say, an antivirus application that scans the storage system in the background," Mr. Lee pointed out. Thatis not possible right now. "Apple might allow that down the road, but for now, theyire taking baby steps."

Another issue is that Apple, by virtue of its high level preemption system, doesnit allow background "pull." So if a developer wanted to write an alternative e-mail client that would continuously pull down e-mail and always have it ready, it couldnit do that.

There are other implications for Appleis technique. Smaller developers may be forced to pool resources and share a single notification server, suggested Gray Rothkopf, the President of Zero One, a global groupware services company. "This absolutely will happen," Mr. Rothkopf said. "Itill be the source of some new innovation." The downside, however, will be that smaller developers will be depending on someone else to notify their customers. That could give them pause.


Appleis Business Case

Clearly, there are pros and cons to Appleis notification system. Some developers may feel constrained for the time being and others with more resources can afford to grow with the iPhone platform. How can one assess those pros and cons?

Mr. Rothkopf suggested that the way to analyze what Apple is doing is to look at the industry as a whole. "RIM is an important example," he told iPO. "RIM has been extremely successful building a revenue stream around their phones. Theyive done that with middleware required for enterprise use combined with an easy to use device. Apple has the second part, but not the first. Itis a business strategy to invoke the required control and and maintain a level of quality."

"For example, most customers donit understand these technical issues with misbehaving background applications. They just want the phone to work. And if their iPhone doesnit work right, who do they blame? Apple."

Mr. Rothkopf agreed with Mr. Lee that Apple is still a startup company when it comes to the iPhone. As a result, he believes Apple will, as it builds that revenue stream, continuously monitor the situation and change its business model accordingly as the platform grows. That could eventually give developers more control over the iPhone operation and user experience.

For now, however, Apple iPhone developers and their customers will have no choice to go along with Appleis strategy. Understanding both the technical issues and Appleis business model will go a long way towards appreciating how that new iPhone 2.0 will work in 2008 and possibly change down the road.

Post Your Comments

  Remember Me  Forgot your password?

Not a member? Register now. You can post comments without logging in, but they'll show up as a "guest" post.

Commenting is not available in this section entry.