Interview w/ Beats Creator from PennApps 2010

Background: Due to my success success with Beats during the very first PennApps 2010, I was interviewed and asked to give advice to new hackers/participants in the upcoming PennApps Mobile 2011 hackathon.

I took some time to interview Philip Peng, a junior studying Computer Engineering at the University of Pennsylvania. As the lead developer of a mobile game called Beats developed on the Android platform, he and his team transformed a concept hastily developed at the PennApps hackathon into an official Android app today with more than 100k downloads.

How did you find out about PennApps and what motivated you to get involved?

I received an email advertising PennApps, and I viewed the competition as a perfect opportunity to take a break from the daily routine of classes and studies. The prospect of playing around with code in a compressed amount of time to build a real product excited me.

What is Beats? How did you conceive of the idea?

Beats is a mobile clone of the popular game Dance Dance Revolution. Instead of your feet, you use your fingers. I had played an existing DDR clone available on the Android market and was entirely unsatisfied with the game. The PennApps’ theme consisted of products intended to improve student life; we thought the best way for a stressed out student to seek relaxation would be through a mobile game. It’s fun, easy to play, and you can bring it everywhere. It’s the ideal game to play between classes.

How did you divide up responsibilities among team members?

Our team was comprised of three members: Matthew Croop, a junior CS major, Yui Suveepattanaont, a sophomore studying Digital Media Design at Penn, and myself. Matt and I took programming roles while Yui designed the graphics. I worked on the timing engine and synchronization between the user and the game, Matt took care of the appearance of the arrow graphics and their falling motion, and Yui worked with Adobe Illustrator to make things look sleek and designed the icon.

What did you do after the PennApps hackaton to make Beats what it is today?

Since we had only 48 hours, the game was largely incomplete. It was buggy and if players took actions that weren’t within our test cases, the game would crash. We wanted to fix these bugs, add some new features, and complete what we started. After a considerable amount of hard work, Beats was finally releasable to the general public. I registered on Google’s marketplace as an official developer with a website at beatsportable.com. I never imagined Beats to take off like it did. Downloads grew from a few hundred, to a few thousand, to 113,239 downloads and an average of 4.5 stars with 909 ratings. As I saw the numbers going up, I realized that Beats wasn’t just for hardcore gamers – we had tapped into the casual gaming audience. We plan on releasing the next version around the time of PennApps Mobile. It’ll be a big update and we’re very excited.

Did you have experience with Android development prior to PennApps?

Nope, no experience. I had recently purchased an Android phone but had not plunged into any documentation until the competition. My team and I learned as we went along.

Any good tutorial suggestions for someone interested in getting started with Android development?

Google’s website has a plethora of tutorials. They may initially seem complicated, but if you keep at it you’ll be able to learn the majority of tools that you need. They also have an excellent support group. StackOverflow is another great resource if you have specific development-related questions. Lastly, check out this IRC channel: #android-dev. It has a bunch of official google employees willing to answer any of your questions. They were very helpful during the PennApps hackathon.

How many hours do you think your team spent coding? How many red bulls did you drink?

Out of the 48 hours, roughly 20-25 hours. I avoided red bull, but drank 15 cans of root beer and 10 bottles of green tea. You need caffeine to keep you going.

Is there anything that you wish you guys had done differently during PennApps? Any advice you would give to someone participating in a hackathon?

A majority of our frustration resulted from learning Android development for the first time. I wish we had familiarized ourselves with the language prior to the competition. This would have cut out the time spent figuring out how to set up the environment and begin coding. My advice would be to begin early familiarizing yourself with what to do and how to test your work, so when it comes time to cranking out the code you wont have to sweat the small technicalities.

Any advice for continuing development of a product after a hackathon and acquiring users?

Be mindful and aware of your target audience. Listen to feedback from your users and act on it. We first focused on functionality because we imagined Beats to be popular only among a select group of technical gamers. However, when we received requests from casual gamers to make it easier to upload new songs and to improve the graphics, we shifted our focus. With this new update we are giving the users what they want.

Will you be back for PennApps Mobile?

Yes. I’ll be giving a tech talk on Android development this week. It’s an enormous hassle and barrier for developers to get started, so I’m looking forward to demystifying this process.