You want to ship what? When?! …Welcome Tap Tap Revenge 2.6 by Jess

June 17th, 2009



The story of adding support for Apple Push Notification service in under four days, to the biggest game on the iTunes App Store, in the middle of WWDC.

You want to ship what? When?!

Things often happen on a pretty tight schedule here at Tapulous, and so it wasn’t completely out of the ordinary when, last Tuesday, Bart and Andrew returned from a meeting with the following questions for me: 

  1. Would it be possible to ship a version of Tap Tap Revenge 2 that ran on all versions of the iPhone OS, but included support for Push Notifications when run on iPhone OS 3?
  2. Would it be possible to do so by Friday at midnight? (No, not this coming Friday. Last Friday, which meant a total of just over three days of development time.)



I had about an hour on Tuesday afternoon to sort out whether this was something that could even be attempted, and subsequent to that, a deadline of end of day Wednesday to say definitively if we were going to be able to make the Friday midnight ship date. Not shipping wouldn’t mean the end of the feature; it’d simply leave Push Notifications in the sizable bucket of things we’d like to do for our next big release of Tap Tap Revenge. Shipping, however, would be of strategic interest and benefit to Tapulous, and so clearly, the pressure was on to get Push implemented, and in record time!

Three weeks, maybe. Three days, no way!

Of course, the first thing I did was login to the Apple Developer Connection, and read up on the Apple Push Notification service. What I found was that the client application engineering for this feature would be pretty straightforward. There’s a bit of hairy stuff related to code-signing, which becomes even more restrictive when developing features using Push and/or In App Purchase, but it’s clearly documented. 

The part that started to sound scary was the back end, or Provider interface. Unfortunately, I can’t yet go into details about it, because you’ve got to be a registered ADC member and have agreed to various legal clauses about gaining access to OS 3 information. It’ll have to suffice to say that, even with an engineering team that runs a sizable server component for more than a dozen client iPhone applications, with over 13M unique devices on our network, I was intimidated by getting a Push provider up and running so quickly. It needed to be secure, reliable and scalable, and up and running in three days’ time. It sounded like something akin to madness.

Urban Airship to the Rescue!

When Bart asks the seemingly impossible, he’s pretty good about stepping in and lending a hand while we work hard to try to make it happen. He’ll do anything and everything, from project and people management, to testing, to buying dinners. What he did in this case, that proved to be critical to our ability to deliver Push Notifications in three days in Tap Tap Revenge 2, was make an introduction between myself and Scott Kveton, a founder of Urban Airship.

Turned out, Scott’s team — he and his folks have impressive pedigrees in secure, scalable web sites and services — was about to ship their Apple Push Notification provider service, and they were eager to take us on as a first big client. Urban Airship serves as an intermediary between your client iPhone application and Apple’s Push servers. In Tapulous’ case, they serve as an intermediary between our existing servers, and Apple’s servers. It’s as if we added that Push provider support to our back end, but without it taking three or more weeks, and without the risk that if we’d done something wrong, we’d be compromising the uptime of our existing systems and the products and features that depend upon them.

Integration with Urban Airship was a breeze. Scott’s team made themselves very available to us, as we brought our feature up in a development sandbox, and again just two days later, when we were ready to switch to production. We really felt like the Urban Airship guys were a part of our team for a few days, and we a part of theirs. They even all hung around with us in IRC on Friday night, waiting until we confirmed that we’d uploaded Tap Tap Revenge to iTunes Connect for review, before heading out for a celebratory cocktail. I only wish our offices were located nearer to one another, because for sure that round should have been on me!

Want to hear the really good news? We didn’t even need much help! The bulk of the work we had to do was to support our internal logic as to when to notify Tap Tap Revenge users, and what about. The actual delivery of these notifications was handled entirely by Urban Airship, and was enabled by filling out a simple form on their website to configure our application with them, uploading the required certificates for that application, and making a few calls to a straightforward RESTful interface from our server, to theirs.

Flying High

When Bart and Andrew asked me to ship Push Notification support in Tap Tap Revenge 2, to millions of users, in just three days, it was nothing short of laughable. That said, we at Tapulous like to try to push the envelope (bad pun fully intended), and so I took them up on the challenge. The end result is that we were the first application to go live in the App Store with support for the Apple Push Notification service, and it’s been a blast! Our users are excited about it, and the press picked up on it too, which is always fun for us! 

We owe a huge thanks to Urban Airship’s crack engineering team and their easy-to-use, scalable and reliable service. I’d recommend it to anybody without the time or the expertise to implement a Push provider, as a great way to ship support for Apple Push Notification services in your iPhone application: no muss, no fuss.

For some more information from Urban Airship’s perspective, about our partnering with them to deliver Push Notifications in Tap Tap Revenge 2, check out their press release on the topic.

…and so: Welcome to Tap Tap Revenge 2.6

It’s on the App Store now, and when it went live, it was the first app to have iPhone OS 3.0 features. Best of all, it works great for iPhone OS 2 users. Here’s what new:

  • Better challenges. When you complete a game, you can now challenge any of your friends using a friendly picker. Or you can initiate a battle, where you’re challenging the entire Tap Tap Revenge community to beat your score. If you’re running iPhone OS 3.0, you no longer get booted out of the game if you send an email challenge;

  • Notifications. You’ll see a little red badge over the TTR app icon when you have new friends, completed challenges and other TTR news. And if a friend sends you a challenge, you’ll get an SMS-style alert. You need to be on OS 3.0 to get these notifications, but all 2.6 users will see the challenges in the feed (the small button just below the featured box on the main screen). This is a big day at Apple, so there’s a good chance there may be slight delays in notifications in the first day or two;



  • More reliable online play. We’ve given the servers for our online play a good workout and the scoring system should be more reliable. If you’re confused about how the online scoring work, please check out our support page.
    • Twitter
    • Facebook
    • Technorati

There are 15 comments

  1. Mr Brown
    June 17th, 2009

    Nice write up, but isn’t it a teeny bit early to declare them to be reliable and scaleable considering that iPhone OS 3.0 isn’t in full release yet? When your 12 zillion users start hitting it for real, then let us know. :)

  2. Cool. When I first downloaded 3.0 last week I was wondering what it was. I still don’t exactly know.

  3. oboewan
    June 17th, 2009

    Wow… that was nuts! Though really, it probably could have waited until today… you didn’t need to rush.

    I assume that there’s a reason that TTR1 is now $.99? … And will this reason affect the current practice of releasing a free song every week?

    P.S. Twitter is failwhaling as I say this. Probably everyone talking about 3.0.

  4. hiezely
    June 17th, 2009

    I’m french so I don’t understand verywell the push notifications
    Is it the messages on facebook profil ?
    Is it the arrow when you move the Iphone?

  5. NICE JOB JESS AND THE WHOLE TAPULOUS TEAM!!!

  6. Haha great story. 3 days? Dang that was quick!

    Anywayz: Love the update. Tested it out by sending a challenge to myself. If anyone wants to challenge me add me as a friend. My Tapulous ID is the same as my name on here. I’ll add anyone who posts.

  7. trekluver
    June 17th, 2009

    Something you need to ad is a per-to-per local gameing feature. Sure it wouldn’t work on anything but 3.0 but it sure would be nice if you want to play and don’t have wi-fi. Also two words: Celtic Thunder; would be the greatest songs on tap tap.

  8. The kids at my high school always listen to lady gaga and all the other pop musics. But pop and i are like fresh water fish in salt water. Sure, i like the prodigy, kaiser cheifs, and 311, but i think you guys should get songs on tap tap from the band Muse, Queens of the Stone Age, and The President of the United States of America. If 3 songs were on Tap tap from those three bands, Tap Tap Revenge would definitely be my favorite app for the ipod. (just a suggestion though)

  9. THExGUITARxHERO
    June 17th, 2009

    Wow. You guys are gods at making apps! Thank you Tapulous for making my favorite app even better. Haha.
    I just got a question for you guys. Do you guys plan on putting peer-to-peer gaming in your TTR games?

  10. awesome :D

  11. Charlie
    June 18th, 2009

    Wow, interesting blog post. Congratulations on getting this out so quickly!

    So, do you use IRC as an inter-office communications thing, or was this on a public network?

  12. Oboewan
    June 18th, 2009

    I haven’t seen any pushes yet (aren’t we supposed to get them for new songs?)

  13. BillyLeeSwagger
    June 18th, 2009

    It’s not working! Please offer step by step tutorial of how to setup game with friends using push notification.

  14. Long live Jess! Now that you can implement this in 3 days, why can’t you implement a Retry Button in about 3 months?

  15. some one... 8-)
    June 22nd, 2009

    nice

    too bad i have an ipod touch though and it costs 13 bucks :(
    i aint payin that

Add your two cents!