Friday, April 27, 2012

Pew Pew Chronicles: You are a Winner!

This is part seven of a series of blog posts about a crazy journey that eventually led to Pew Pew becoming one of the first apps in Microsoft’s App Store. On a long flight from Seattle to Omaha in December 2011 I learned about Metro and got immediately hooked.  After installing Windows 8 Developer Preview and playing with Metro I discovered that I could even cross-compile Pew Pew to Metro. But there was a problem: this game was “crappy”, not “charmingly crummy” and unsuitable for submission to the Windows 8 First App Contest. My Death March Plan boiled down to improving Pew Pew first before implementing Metro features. Everything seem to be on track until my friend Christina made a video that recorded her first attempts to play the game. I clearly needed to to redesign a new joy stick and there were still a few Metro features missing. In the end everything worked out: after a few intense days of “coma hacking” Christina approved the new joystick and all of my Metro features were finished and I finally submitted Pew Pew to the Windows Store. All I had to do next was waiting for the verdict.

Shortly after submitting Pew Pew to the Windows Store on 1/8/2012 I received a friendly email from Microsoft’s staff to let me know that the finalists would be announced a week later on Sunday, 1/15. After my “coma hacking” week prior to the Pew Pew submission my regular work week felt like vacation. Sunday came and I was checking my emails throughout the day. But there was no email from Microsoft. I had to face the bitter truth: Pew Pew didn’t make it into the finals.

I have to admit I was disappointed as well as a little bit surprised. Granted that Pew Pew was only a “charmingly crummy” space shooter game it was also loaded with Metro style features like view states, tiles, settings charm, share source support, roaming data storage, and pause and resume. Pew Pew must have been up against some tough competition, I thought. I had read that Microsoft teamed up with game developers to create HTML games like Cut The Rope and Pirates Love Daisies. If those had been the kind of games Pew Pew was compared against then it wouldn’t have had the slightest chance.

If there is one piece of wisdom I learned from our dog Joe it is moving on to the next interesting thing quickly and not dwelling on failures. It still amazes me how fast Joe is able to disconnect himself from unpleasant events and focus on all the exciting opportunities that lie in front of him. Joe’s “event horizon” is approximately one minute. Mine is in the best case about one day .

“Well, that didn’t work out” was my first thought when I logged into my computers the next morning at work. I almost reached “Joe Zen” state by late afternoon until I saw an email from Microsoft. The subject said, First Apps Contest: You are a Finalist! I guess, Microsoft missed their own deadline by one day and elected the finalists on Monday instead of Sunday. That was fine with me!

After doing a little dance in my office and calling my wife I also contacted Mike Chambers to let him know that Pew Pew made it into the finals of Microsoft’s First App Contest. He laughed and said: Microsoft must be in trouble. He was humbly referring to the crappy quality of his original Pew Pew version.

Microsoft’s congratulation email included some information about the next steps that would follow. They kindly asked every finalist to do four things:

Install a new development version of Windows 8Compile and update the app using that new Windows 8 and Visual Studio 11 beta.Sign up for a Windows Store account.Submit the app to the Windows Store before 2/3/2012.

I don’t recall the details but I pretty much ended up ignoring that email for a few weeks. Perhaps I was a little bit burnt out, or I thought that installing the new Windows 8 and recompiling my app shouldn’t take that long. But for about a month I did literally nothing for the contest.

Then on 2/23 I got an email from a staff member of the  First Apps Contest Team politely asking about the progress on migrating my app to the new Windows 8 version. The term “migration” woke me up. I thought it was just recompiling. I also realized that the next deadline on 2/3 was coming up in less than a week. In fact my sabbatical was starting on 1/30 and our plane to Mexico was leaving on 1/31. In other words I had to be done by 1/30.Installing the new Windows 8 version was easy but then I ran into unexpected problems when recompiling Pew Pew. When I launched Pew Pew in the debugger I found myself staring at a white, empty screen.

Now, as part of downloading and installing the new Windows 8 build I also did sign a non-disclosure agreement (NDA), which prevents me from getting into any details of this particular Windows build. But let’s say the reason for my broken Pew Pew were a combination of unexpected Metro changes and my own code in respect to loading images. To be fair, I think the problems were more in my code than it was Metro’s fault. In order to fix those problems I had to rewrite the image loading code, which also significantly improved Pew Pew’s performance.

I was pretty busy that week wrapping up my projects before I was leaving for my six week sabbatical on 1/31. The Pew Pew changes were not that hard but I just didn’t have a lot of time that week. I ended up testing and getting ready for the app submission on 1/31, which was just one day before my wife and I would take a plane to Mexico City. That’s when I hit a pretty big roadblock: Microsoft’s Windows Store website refused to accept my new version of Pew Pew and I couldn’t figure out why.

Finally I gave up and sent an email to my contact person for the First App Contest. I said that I was unable to submit my app to the store and that I would probably not make the deadline on 2/3, because I would leave early next morning for Mexico. I would only have three hours left to get Pew Pew into the store.

I have to admit that I was impressed how fast the Microsoft guys reacted to my email. Another Windows Store specialist got quickly pulled into the thread and he promptly sent me instructions from his Windows 7 Phone. Microsoft’s response team actually helped me with my problems within an hour and the new Pew Pew version was in the Store shortly afterwards. Without their help I would have missed the deadline and Pew Pew would have been disqualified.

Looking back my biggest mistake was probably not starting earlier with my work on Pew Pew. But life is complicated and sometimes you have to improvise. In the end it all worked out and I definitely found new respect for those busy bees at Microsoft.

Sabbatical! Adobe is a great workplace and offers its employees one sabbatical every five years. I have been with Adobe for over 15 years and got the maximum of six weeks. There are three rules for Adobe sabbaticals:

You have to take them within 2 years.You are not allowed to split your sabbatical up in smaller pieces.You should have fun.

I made up rule #3. But Adobe really means it: You should have fun and recharge your batteries. For example John Nack went to Guatemala for his sabbatical roughly at the same time I was starting mine. I was definitely planning on having fun and relaxing in Mexico.

For my trip to Mexico I established similar ground rules like I did back in December 2011: no more than 4 hours of work per day. It turned out that I worked perhaps 2 hours of work after one week of not working at all. Frankly, I didn’t know I could do that.

My time in Mexico was rather uneventful in regards to developing Pew Pew. I worked only for a few hours but continuously and over time improved  Pew Pew little by little.

I added a few more settings for adjusting ammunition and speedI also added a button for clearing the high score to the Game Options flyout.I improved the accuracy of the ship movementsI improved (“fixed” is probably a more appropriate word here) the collision detection algorithm.I removed the game area boundaries (game objects re-enter on the opposite side).UFOs now shoot too.

In the meantime Microsoft sent me an email asking me to install yet another version of Windows 8 and to resubmit Pew Pew by 2/17/2012. After avoiding a disaster caused by doing nothing I was eager to start my work early. But this time it looked like the re-submission process would be only a matter of recompiling the app, because Microsoft was planning on releasing the next new Windows 8 build on 2/14. There was one tiny problem: Our flight was leaving on 2/15. If I downloaded the new Windows 8 version back in Seattle I would only have two days to fix any problems and submit Pew Pew to the Store. At that point I really didn’t want to mess up again. I had to start my work in Mexico City.

My wife and I left Oaxaca  in the morning of 2/14  and arrived in the late afternoon in Mexico City. Before I unpacked my luggage I checked my email and sure enough there was the announcement for the new Windows 8 version. I logged into my connect.microsoft.com account and clicked on the link for the Windows 8 images. The progress bar was crawling. The ETA for those two images was 15 hours.

That didn’t worry me, because I could just let the browser download over night. The next morning I realized that the process got interrupted after downloading about 10%. The new ETA had been reset to 12 hours. We had to be at the airport in 7 hours.

If you ever run into a similar bandwidth problem abroad try what I did: I went to the reception and asked whether the hotel had a land line (they did not), or whether they had different routers (they did). Then I tried every router until I found one that was faster. I eventually picked a router that downloaded my images in 4 hours.

I got my Windows 8 images  just in time before we entered the plane. But if your laptop’s battery only holds about 3-4 hours of juice, how do you make use of the precious power so it would last a long flight?

Here are my tips for saving laptop energy:

Turn off wireless and bluetooth.Pull down the shades and lower the screen brightness so you can still see the letters on the screen.Quit every app that you don’t use.Try to avoid compiling. Reading and writing is cheap, compiling costs more energy.Try to avoid running VMware. It’s a powerful tool that requires lots of energy.

In my case I didn’t have much choice and had to use VMware in order to install the new Windows 8 version.

Fortunately everything went well. No problems, Pew Pew only needed to be recompiled.

We arrived in Seattle on 2/15 at 2:00 AM and I got up 5 hours later at 7:00 AM in order to prepare the house for a video shoot for  Microsoft’s website. Microsoft told me that they would like to shoot a little video for their blog, which would introduce the finalists. In hindsight I suspect that by then they had already selected the winners and they wanted to have a video about the winners and not all of the finalists. I am saying that, because shooting a video is extremely expensive and labor intensive.

Microsoft hired Omelet, which is a video production company from L.A., and their friendly crew of about 8 showed up at 9:00 AM in the morning at our house. I also met three folks from Microsoft’s PR department. The whole video shoot took about 4 hours and in the final video you only see about 4 seconds.

If you have never been part of a video shoot, I can tell you it’s very interesting. The equipment they used was all high-tech. What to me looked like high-end photo cameras were fully functioning video recording devices. They had a sound guy that heard everything. From time to time he raised his hand and said “plane”, or “fridge” and only then I would notice that a plane was flying over Seattle or the fridge was doing whatever fridges need to do periodically in order to keep the chamber cold.

Adam, the director, told me that this shoot would be like an interview, except for they would never see him. That’s why it would be important that I incorporated the questions in my answers. It sounds easier said than done! At one point Adam asked me: So how do you like Windows 8? I answered: “Oh, it’s great” before I realized that I had to incorporate the question in something like “What I like so much about Windows 8 is …”. I apologized and offered a corrected version. Adam told me that that happens all the time and they can edit everything later. What I found funny is that one of the few sound-bites they used from our 4 hour interview was ”Oh, it’s great.” and “I like competition”.

Another funny trivia I learned later: This whole video cannot be shown in Singapore, because my dog Joe walks towards me in one scene and naturally turned his behind to the camera. Apparently showing a dog’s butt in a video is considered extremely rude in Singapore.

I was pretty tired when the video shoot was over. But I would do it again in a heartbeat. The Omlet crew and the Microsoft PR folks couldn’t have been nicer. It was an interesting experience and a pleasure working with them.

On 2/29/2012 Microsoft revealed their Windows Consumer Preview (which is pretty much the Windows 8 beta) as well as the new Windows Store. As part of their announcement Microsoft also introduced the winners of the First App Contest.

Pew Pew made it.

It was a lot of work but it was also a lot of fun. What started as a Metro learning project ended with a nomination for Microsoft’s First App Contest. I never expected that back in December 2011. Now, what’s next? Where do I go from here?

I’ll tell you next week in the final part of the Pew Pew Chronicles.


View the original article here

No comments:

Post a Comment