PhoneDuel: What We Learned

by Russ Heddleston & Naman Shah

Design is Key
When we first came up with the concept for the game, it seemed very simple: an asynchronous mobile game where users eliminate each other in a bracket structure using trivia questions. However, from looking at the huge graveyard of mobile phone games that never made it off the ground we realized that we really had to pay attention to the details. Therefore, we decided to change our initial implementation plan. At first we were planning to have the game work over SMS between users. However, the design using only SMS made things significantly clunkier. We decided to upgrade to having the game be an iPhone app, where we could make more use of the social side of the game. We’ve tried to pay very close attention to design, but we’ll only really know if we’ve gotten it right after we’ve launched.

Outsourcing is Difficult 

There were three different technical pieces to creating our iPhone game: the website, the server backend code, and of course the front end iPhone code for the game itself. We built the website and the server backend code ourselves, but for the iPhone code we decided to outsource to a team in India since we didn’t have the time/skill to do it ourselves.

The actual cost of outsourcing to India was very low, around $15 per hour of developer time. This is dramatically lower than than the >$100 per hour rates we would be charged for a developer in the US. The project was projected to only be ~80 hours of development time, which would have been only $1,200.

The problems we encountered came in two areas: the delivered product and the amount of time required. Despite our very detailed technical specs, the developers did not understand what we wanted built. One issue was that we talked to a sales representative from the outsourcing company and not the developers directly. The instructions he got from the sales person were different than what we originally said. This required a number of iterations before they even understood what we wanted built. When the product was finally delivered, it looked really bad. We are now in the process of redoing the design to make it look better. All of these iterations caused this to go from a one week project to a one month project. Cost also increased to ~$2,000 as a result.

Integrating It All Together
We realized that putting a complete game together requires a number of different pieces, which can be a little overwhelming to put together. Coming up with the product design, creating the website, finding/hosting a domain, coding the backend, coding the frontend, and then actually launching is a lot to get done. We found that there are a lot of free/cheap tools out there to really help with this and we’ve listed a few below:

  • Product design: we fell in love with Balsamiq as a mockup tool. This was a big improvement over PowerPoint, which we used before. 
  • URL and logo design: we searched for 10 minutes before deciding on, we bought the domain, and then created a logo in another 10 minutes. There are lots of free logo templates online if you have access to photoshop. 
  • Website hosting: there are a ton of really cheap providers in the market. We chose since it’s under $10 per month and they have everything you could ever want already installed on the shared servers you get access to. 
  • Website: we used wordpress which only took a couple minutes to setup. We started with their default theme, stripped everything out, and added in a plugin called Gravity Forms. This allowed us to setup a simple landing page where users could signup for access to our beta. This took only a few hours in total to get running. 
  • Backend server code: we used the same hosting for the backend as for the website. It’s written in PHP and uses mysql so everything’s free. 
  • App distribution: since this is an iPhone app, we’ll have to go through Apple at some point. To avoid the app store, it’s fees, and the one month approval delay (at least for our beta) we decided to have adhoc builds of the app distributed using TestFlightApp. This is a free service used to distribute app builds to users wirelessly.