Skip to Content

iPhone developers will need servers to push

Former TUAW blogger Erica Sadun has a cautionary post for developers regarding the pending push notifications coming to iPhone OS 3.0: better get yourself some reliable servers. The implication, delivered via headline, is that smaller developers won't be able to afford push notification. Indeed, as Erica says, coding for an app that can run in the background is one thing -- you may need to scale things down a bit for resource management -- but deploying a reliable push notification system is a tall order by comparison.

Instead of coding once and deploying, developers will now have to manage servers to handle the load of users who will be receiving push notifications. This ongoing server maintenance issue is the sort of thing we used to laugh about when digg first started, or Twitter, or MySpace, or any number of services that grew a little ahead of server capacity. After speaking to one of the network engineers at Twitter during SxSW this year, I don't envy the task of staying ahead of these curves. But push, in my opinion, isn't as onerous as that.

Push notifications aren't serving entire pages. The difference in data throughput overall is much slimmer than even the light pages Twitter serves. Erica correctly points out that in aggregate, the push server might be hit pretty frequently; however, and there's more of a concern with reliability for a finance or medical app than something like Twitter or digg. But even when you throw in the added hurdle of security I'm guessing the resources for this are available at a reasonable cost.

I get that this is more work for developers, but Erica makes it sound a little threatening, like developers' only resolution will be to cobble together a mighty datacenter from spare computer parts. My assertion is that developers who wish to play the push game will simply need to look for outside resources and factor that into their price. Maybe fewer $.99 apps is a good thing? You certainly don't need 30 apps trying to alert you during the day -- how would you get anything done?

In the end, push notifications are welcome, and I'd rather have that than a one-hour battery life for the day. Plus, I would agree that some smaller developers will have to forget push because the potential costs are too high. Guess what? That's as it should be. If your product requires it, your cost should reflect it. There's no shortage of service providers out there, and as we've seen in the past (look at the podcast services that popped up when that blew up a few years ago) the market will fill the needs of the developers if they aren't in the business of making their own server farms. It's certainly a new twist to the iPhone dev game, and it's an opportunity for someone who can deliver a reliable push framework at a reasonable price -- perhaps one running atop Amazon's EC2, Google's App Engine or even Microsoft's Azure cloud service.

Former TUAW blogger Erica Sadun has a cautionary post for developers regarding the pending push notifications coming to iPhone OS 3.0:...
 

Add a Comment

*0 / 3000 Character Maximum

35 Comments

Filter by:
Erick

Ok, im a little suprised by Erica here because looking through the specifications of what Apple expects form the developer is literally bits of info. And they wont be pushing anything to the developer. The developer is expected to poll the feedback service to find any non responding devices that need to stop getting notifications (so as to limit the needless notifications sent to Apple).

Sure, you will need an active server to push these things but we arent talking data center, fiber connections with Atlanta highway sized bandwidth. We are talking shared hosting using mysql and php and a cron job. I already do that with my app that updates scores. Weaksauce Erica.

April 14 2009 at 9:54 AM Report abuse rate up rate down Reply
J.G.

I was very glad to see that Erica had stopped posting to this blog. Please don't post her drivel here.

April 14 2009 at 2:07 AM Report abuse rate up rate down Reply
drunknbass

If you had an app that really needed to run in the bg or use push just stop and thing for a sec, what would consume more bandwidth? Push or an open socket the WHOLE time? Also amazon web services seems like a good idea, but you also pay for put/get requests so I don't know if that is very cost effective or even matters when doing pushes.

The thing I thing the original poster was trying to say was, if push is something that costs a decent chunk of $ maybe it won't be over used like a lot if us are predicting.

April 14 2009 at 12:24 AM Report abuse rate up rate down Reply
Gregory Pierce

This is the most confusing 'non-news' that I have ever seen. We've always known that we would have to publish events to the phone. The Apple push servers couldn't "use the force" and pass our applications data on for us.

If the whole point was to allow applications to run in the background and send/receive data, how is this materially more expensive to the developers than would have been otherwise? You were going to have to push data to those those devices or those devices would have been polling from some service(s) you were running.

Love ya Erica, but you this argument doesn't make sense.

April 13 2009 at 10:13 PM Report abuse rate up rate down Reply
Rick

Google's App Engine is perfect for this: Hosted, scalable, free up to a generous amount, and when it's time to pay, it's relatively cheap; the developer only pays for what he/she uses, and can even set budgets. Unless I'm missing something, the App Engine seems perfectly suited to small developers wanting to set up a push notification service of some sort.

And as others have rightly pointed out: if you're not already a web developer of some sort, and don't already offer some sort of online service to users, you're not likely to even need push notification.

April 13 2009 at 10:08 PM Report abuse rate up rate down Reply
mike

Uh, why do you need push notifications if your app isn't a native interface for a web app? If you've got a web app, you've got servers, and adding an API call to the notification service in a few functions (user gets a message) is very simple.

April 13 2009 at 7:32 PM Report abuse rate up rate down Reply
brainchild2b

It's not nearly as easy as people think it is. My entire world is web hosting and networking!

First most of the scripts (under NDA) that push are php/perl and require certain libraries that most hosts won't have on a shared $10/month hosting account.

2nd - I can't tell you how many iPhone developers have had their websites killed, or accounts terminated on hosting plans because the webhost would get hammered with 2,000 connections, simply because the dev thought they could write a casual non-efficient PHP script.

3rd - Security, most of devs I know, even the big ones had networking as an after thought.

Sure go ahead, $250-$800/month on a dedicated server, remember your going to manage it, secure it, patch it, and if someone gets access to it, or touches it, you could have huge backlash from customers.

It's trickier than you think, Erica was not being sensationalistic. It's a serious issue that needs to be treated a hell of a lot better than "Oh it's easy, just setup a box with some php"

You need to plan a strategy. Pray that your host knows macs, even gets what going on and gives a crap about your account. I know some apps were so poorly written they would die if the connection was down. You have to plan for downtime, your host killing you, your backup, amazon sucking, and other things.

It's a serious issue that shouldn't be taken lightly and as a sort of "anybody can setup a php script on the internet" issue.

April 13 2009 at 6:42 PM Report abuse rate up rate down Reply
1 reply to brainchild2b's comment
Christina Warren

It's certainly an issue that anyone planning on implementing push-notification into their apps will need to adequately plan for -- that should be a given -- but it's also not as doom and gloom as the article made it out to be. As Victor and others have pointed out, there are lots and lots of viable alternatives that fall in-between the $10 a month crappy shared hosting plan and a dedicated server. Amazon's EC2, stuff like the Joyent Accelerator stuff and Google's App Engine are all potential solutions. EC2 is what I where I would put my research, because it seems to be the ideal type of solution and is pretty darn reliable (every service has hiccups, Amazon's are very few and far between), but there are lots of potential options.

Obviously people who want to offer this as a feature need to take everything into consideration before just trying to launch something, but again, that only makes sense.

April 16 2009 at 7:19 AM Report abuse rate up rate down Reply
Mike O

Not quite sure what the hang up is here... wouldn't most of the type applications that require push service also require servers/infrastructure for their services anyway? Push would be in addition to standard services, but shouldn't require much extra. For added reliability I suppose these developers could use one of the cloud technology providers to make sure pushes happen...

April 13 2009 at 5:10 PM Report abuse rate up rate down Reply
Gwydion

Why a developer has to use a server to push notifications to To-Do's?

I don't understand the way Apple is going with all this stuff.

If I'm not online I can't have an alarm to sound when I have a meeting?

April 13 2009 at 3:32 PM Report abuse rate up rate down Reply
lackofcolour

It's cheap and easy to set this up. I've already done it for one of my apps. Unless you have hundreds of thousands of users, a standard hosting package with SSL will suffice for most applications.

April 13 2009 at 2:48 PM Report abuse rate up rate down Reply
Buy an ad here

Hot Apps on TUAW

Tweets

© 2012 AOL Inc. All Rights Reserved.