Wednesday, July 20, 2011

Quick WP7 app development

I have often wondered, with the certification process of a centrally controlled online application database and store principle that is often used right now, if fast reactions to events in the form of a new app were still possible. After all, you cannot quickly hack something together and put it on a website so people can install and use it.

While this post is by no means a thorough treatise of this subject, it does offer one concrete example that shows quick development turn-around is indeed still possible in a centralized store arrangement.

This past week has been a bit of rollercoaster for me, building and deploying a Windows Phone 7 app with background information for the 3D Masters 2011. As a bit of background, I'll sketch a timeline of how this app came to be. All times shown are in 24h CEST and approximate, accurate to within maybe half an hour. Here goes:

  • Fri, Juli 15th, 18:30: Meet friends for diner in Haarlem, before seeing the final Harry Potter.
  • 19:00: Received an mail from 3D Masters about availability of an iPhone app for the event.
  • 20:00: After emailing back and forth a bit with Jeff Barringer during diner, I decided to try and write a WP7 equivalent.
  • 20:50: Harry Potter begins, or rather: ends... ;-)
  • Sat, Juli 16th, 7:00: I start a new blank WP7 solution in VS2010 and get to work.
  • 22:00: Made nice progress. Basic app structure, icons, panorama background, start of About screen and the complete interactive map section are done. Made good progress on starting to capture the manoeuvre and pilot data from the 3DX website into two included XML files. I did do some grocery shopping along the way, so I maybe put in about 13 hours or so.
  • Sun, Juli 17th, 10:00: I return to my 3D Masters solution. Manually getting all the data into the two XML files took relatively long time (most of it during the end of todays session), but I also wrote basic ViewModels, ListBox data templates in my panorama control and all the plumbing needed to get selecting en showing the two detail pages to work. Luckily, showing the external descriptions and the movies just took one Task object each given the URLs in the data I had. ;-)
  • Mon, Juli 18th, 0:30: After completing the XML data and quickly tombstoning the show panorama item (so you return to the one you left after going into detail pages), I call it a night and try to submit my app to the App Hub. With some break time (had to leave that chair some time during the day), I put in about another 13 hours of development time.
  • 1:30: Then I found out that submitting new apps to App Hub was broken, possibly related to the scheduled down time that was announced for monday and is no doubt related to not only the new functionality that has shown up in App Hub, but to the approach of Mango as well. Very frustrated, I gave up, and went to bed.
  • 6:00: Up early for work. Tried to submit again, and got the XAP file and all the meta data in. Dreading that this might be too late, I went to work.
  • 20:00: Saw that app submission status was "Testing in progress".
  • 22:00: Noticed that the App Hub was showing the "down for maintenance" message.
  • Tue, Juli 19th, 17:00: Saw that my blog post was linked from the 3D Masters website, App Hub was back up and the status of my app was now "Certified", which is not mentioned in the App Hub forum thread about possible states.
    Fearing the app might not make it to Marketplace in time for the event, I at least made the XAP available so people with developer unlocked devices could sideload it at least, would that turn out to be the case.
  • 21:30: I noticed an email from the WP7 Marketplace Developer Support telling me there had been a problem processing my app submission. When I checked App Hub however, the status had now moved to Published, leaving me well confused.
  • Wed, Juli 20th (=today), 6:00: I was able to find my app in Marketplace on my phone and download and install it. Victory!
  • 11:00: Started to write this blog post, as I think this whole story might be interesting to some of the WP7 developers out there. Please don't be shy in the comments if you think it is. ;-)
  • Fri, Juli 22nd, 9:00: Start of the 3D Masters event that will end the next sunday around 17:00 in Venlo, NL. Will I see you there on saturday, perhaps?
  • 11:00: Thanks for all your interest; this turns out to be my most popular post since I did that Samsung Omnia Qwerty review two years ago. ;-)
  • Mon, 15th of August: Download numbers seem to start trailing off around 60 downloads.
  • Early november: In fact, the download graph from publishing the app until now seems to have an almost constant derivative until now, just having reached the 200 download mark.
  • Fri, 24th of August 2012: Unbelievable, really. Even though I missed the 3D Masters 2012 deadline (the app still shows hardcoded data from the 2011 event right now), the download graph keeps on going up steadily, now at around 2500 downloads and about 100 active users daily (according to Flurry statistics). Possible this active user bases keeps coming back to watch the movies while practising?

So yes, there you have it. Even though I do not recommend anybody to do this on a regular basis, if you really need to and you maybe get a bit lucky with the time your app takes to run the certification procedure you can have very quick new app results!

In this case that means: some 26 hours of development time, starting a week before app was needed, about 4½ days (or 108 hours) from inception of the endeavour to having the app on my phone, downloaded from Marketplace.

Q.E.D. (now, when was that vacation again...?)

(Oh, and lots of ideas for version 1.1 of course, for the next 3D Masters and other 3DX events...)


  1. That version 1.1 has already been published. Mostly some small visual changes, link to the PDF with the new manoeuvres for this year and a quick check with the user about opening the rather large movie files for playing when the phone only has a cellular data connection at the moment (to save money and frustration).

  2. Current v1.2 also includes a quick pilot finder: simply enter the three digit competitor number (you see them walking around with this number and the numbers are often mentioned through the P.A. system) to open the detail page for that pilot.

  3. Even though I did not manage to update the 3D Masters app in time for the 2012 edition (damn!), it continues to amaze me that the app currently has nearly 2500 downloads, a clearly discernible upward bend in download graph around last May with again a almost constant derivative from that point onward and (according to Flurry statistics) about 100 active users every week. This app will continue to receive some much needed love and attention in the coming months, I promise..