From my POV: Building an iPhone Game

How I uploaded my game to the app store in 8 weeks, and how you can too


Photo by Andrew Zhou

Andrew Zhou_optWhen you tell people you’ve built and launched a game onto the App Store, you’re often associated with the words “nerd” or “geek.” But, in reality, there’s so much more to being a iPhone game developer than many people realize.

When people ask me about the process I went through when I created my iPhone game, they are often surprised when I don’t mention anything about the code that operates it.

Developing an iPhone game is not about knowledge of code or your artistic abilities. While those two skills are valuable and necessary in creating a great game, people underestimate the necessity of application design.

I wouldn’t personally call myself a skilled coder, nor an artist, but by the end of these eight weeks of development, I felt proud of the design choices I had made for my app.

Rewind to June – I had already wasted two weeks of summer binge-watching TV shows on Netflix, and I wanted to spend my remaining eight weeks of freedom doing something interesting. I decided to take on this project.

When I started, I had a vision. I wanted to create a minimalistic, well-designed puzzle game. It was simple conceptually, but I wanted all sorts of cool features added into it.

I wanted so many levels that it would take hours to run out of content. I wanted multiple textures for the ball as well with a system to unlock these textures. I even wanted a mode where players could create their own levels.

I set a string of what I thought were relatively reasonable deadlines by which I wanted to have features completed, and had an ultimate goal of finishing the product before summer vacation ended.

With a timeline I was determined to stick to, I started the process of development. However, after just a few days, I had already fallen behind.

In fact, at the end of the entire process, I accomplished less than 40 percent of what I set out to do. I was simply too ambitious in trying to cram too much into such a small time frame. I cut out two thirds of the extra features I planned on adding.

If I were to give an aspiring iOS game developer some advice in approaching their first app, I’d probably reference the 80/20 rule. That is, create 80 percent of your product with 20 percent of the effort.

It’s important to focus on that specific 80 percent, and not get off track with the unnecessary 20 percent.

The time I spent adding last minute special features should have been spent polishing and fixing bugs, which were scattered throughout the finished product.

Fast forward a few weeks, and my minimum viable product was done. I was nearly ready for launch, and the deadline I set was a few weeks away. Reluctantly, I decided I would begin to test my game rather than add new features.

One by one, I had people play my game. I watched as they played, and took notes where the testers got stuck.

The feedback I got was astonishing. Despite my incredibly simple game mechanics and my own ability to quickly and easily beat my own game, I found that my tutorial levels were far too difficult. Half the time, I had to explain to the user what they were supposed to do, which was not an option I would have  after the launch.

After weeks of testing and tweaking my game, my five tutorial levels turned into 10, which turned into 15, which eventually turned into 25 levels. Eventually, 100 levels turned into 200 after I added filler levels to smooth out the difficulty curve.

I repositioned buttons, recreated some introductory screens, tweaked some features, and even fixed a few lingering bugs found by testers. Looking back now, I’m incredibly glad I chose to go with user testing instead of whatever features I wanted to add.

The game was ready to launch after weeks worth of testing and two months of work. Despite the mistakes I had made, I was very happy with the game I had created.

And I think this reflected in my app’s results, too. Further back in the development process, I added analytics in, which essentially tracks the users and their progress for feedback.

I remember literally cheering when some guy from Germany got to level 150 in two days. I remember watching the screen as a player from Saudi Arabia finally beat a level they were stuck on for a while. But more importantly, I remember analyzing which levels users died the most and spent the most time on, and going back to tweak those specific levels.

I think the most important thing I’ve learned is that you don’t really need to be a good coder, or a good artist, to build an app or a game. In fact, I am definitely not, I still have a lot to learn.

I think what’s truly important is having realistic goals and a lot of heart.

If you’d like to see what eight weeks got me, check out my game Surreality here: