It has been a while since our last post so we want to start off again in grand fashion by a 3 part series on ways to make or acquire an app to sell on the App Store(s). In this first part we will look at the process of making an app yourself (in-house) from start to finish. As an example we will use our own Happi 123.
In part two we will talk about outsourcing part of your app development and how to protect your idea while doing so. Part three will look at other ways of getting into the app business such as buying a “re-skinnable” app or having a development company realize your original idea for you.
Naturally, different companies and individuals will follow different processes when developing an app but they will all have a few things in common. Those things can be divided up into tree major areas; idea development, app programming and graphical look and feel.
At Happi Papi we develop learning games. When doing so we start by coming up with an app idea around the particular learning concept we have settled on for the app. In the case of Happi 123 we wanted to focus on the fact that most kids when they first start counting and adding do so using their fingers. Thus we wanted to create fingers that were fun and useful to use while solving simple math problems.
A first draft of our hand/finger concept and the game screen where they are used. You tap or drag fingers open and shut.
A very early draft of the game screen. This look did not make the cut.
Making Your App Feature Worthy
Once we were happy with how our fingers looked an performed we had our main concept. Time to flesh out the idea a little bit more: What exercises should our players solve using the fingers, what can we do to make the exercises and the game in general visually stunning (this part is major if you want a feature from Apple) and lastly, how do we reward our players for solving the exercises correctly.
Below are some screen shots showing and explaining how we continued to develop the app idea/game concept and how we built the graphical user interface to deliver the experience.
Main menu on its way to final product.
Final version of the swipe-able main menu. As you can see we settled on a cardboard theme to resemble a makeshift puppet theater.
Addition exercise game screen.
Domino reward game to enhance the learning objective from the addition screen by slightly altering the concept. The cardboard theme is continued on the domino screen to keep the overall design consistent.
When completing a domino puzzle the player will earn a disguise for Papi the puppet master. As a reward you can then dress up Papi in all his different costumes on the reward screen.
By answering the main exercises correctly the player wins more stickers that will then be activated and used in the game. This keeps the player wanting to play on.
The key when developing any app is using quick iterations looking like this: think-develop-test-rinse-repeat. In Happi Papi’s case this is actually easier done than said as our main developer is also our graphical artist extraordinaire. Not all companies are that lucky which will ultimately make the development process a little harder.
The reason to constantly test what you have developed is to balance the process. After more than 10 years in the game development business (we made DVD-boardgames before the app revolution) we know from experience that no matter how good or straight forward your app idea is, it will have to be tweaked multiple times on its way to a finished product. If testing wouldn’t start until the development process was supposedly finished, you would end up with a finished product with a lot of logical mistakes. Please note that we are not talking about bug testing or public beta testing at this point. That type of testing comes after you as a developer believe you have a finished product.
When the app idea has been realized through development/programming and dressed up accordingly in your graphical profile of choice you have an app to start bug testing on. At this stage you will notice if you have done your iteration cycles explained above correctly by the amount of feature creep* introduced from now on.
Next time we will look at a good way to speed up the development process by outsourcing your programming.
* Feature creep, for those who are not familiar with the expression, is added functionality beyond the initial scope of the app, or “nice to haves” as we call it at Happi Papi.