I've wanted to release an iOS app ever since my freshman year as a Computer Science undergraduate. I think everyone in the computer science field wanted to release an app or game, at some point in their career.
I never created a meaningful iOS app during my undergraduate career. I was generally lazy, intimidated by the amount of learning involved, and believed that all of my ideas weren't worth the effort.
On May 29th, 2015, my game Ludemus became available on the iOS App Store. The journey to releasing this app taught me a lot about myself and my limitations.
Let me start at the beginning of the journey. I work at Skillz Inc. as a mobile engineer. Our core product is an iOS SDK that enables skill based competitions in mobile games for cash prizes. I was hired as a mobile web engineer, but because of work demands, I was converted into an iOS engineer around September of 2014. Over the course of a few months, I learned about Objective C, various Cocoas frameworks, and the iOS app submission process.
The knowledge that I could pick up basic iOS skills in a few months gave me a basic level of confidence. It convinced me that if I set my mind to it, I could create an iOS game.
Initially, I tried to learn SpriteKit on my own. I quickly realized that on a typical weekday I didn't have much time in the evenings, between work and dance practice. I couldn't spend those hours learning on my own because it was too slow. If I wanted to create a game and submit it to the App Store in a reasonable amount of time, I would have to rely on some substantial tutorial.
Outsource the learning process
Luckily, I discovered Ray Wenderlich's iOS Game Starter Kit Bundle. It was expensive. However, I figured that it would pay for itself in the long term since it would increase my iOS skill set.
I am happy with my purchase.
It helped me ramp up in iOS game development quicker than I could have done by myself. Furthermore, it taught me new concepts and gave me a bunch of utility methods. The big take away here is that, I shouldn't be scared to shell out money for the things that will make me better. It's a good idea to outsource things when I am limited on time.
I spent a month, going through the Game Starter Kit Bundle's space game tutorial. I typed every line of code that was provided and made tweaks along the way to assert that I understood the material presented. At the end of it, I felt confident enough in my familiarity with SpriteKit to create my own game. It's in the same genre as the tutorial's space game; however, the game play, logic, and implementation are drastically different. I won't go into the details of my game since you can just download it and try it out.
During the entire development process, I never thought a lot about how to market my game. My game plan was "put up a Facebook ad, people will come".
I was wrong.
First, I've learned that marketing isn't some necessary evil that everyone does. Marketing is about getting people, who are interested in what you have created, to be aware of it. Without realizing it, I was already "marketing" my game whenever I talked to friends that were interested in space games about my game and its development process. I wasn't selling them anything, I was just sharing something that they found interesting. I made the mistake of not doing this kind of "marketing" online too.
Second, Facebook advertising isn't trivial. No wonder, there are people whose sole job is to tweak and refine advertising via Facebook. Facebook, and I suppose advertising in general, requires a lot of measuring and experimentation. You have to decide what image to use, when to show the ads, and who to target. For each category, there are at least a hundred permutations. You have to launch an ad, wait awhile, measure results, tweak something, wait awhile, and repeat. It's a long, meticulous process. If you aren't meticulous, you are just throwing money into the dark.
I was not prepared for this.
For Ludemus, I failed miserably. I set an initial budget of $50 for 7 days. At the end of the 7 days, the ads earned me 6 installs. That's a terrible return on investment.
Funny enough, a friend of mine posted a link to my game on a miscellaneous subreddit. It earned me more installs than Facebook in a shorter period of time. There is a lot for me to learn about marketing.
My Ugly Baby
This entire journey took about 6 months of nights and weekends. Ludemus is my first game in the iOS app store. It has flaws. It's ugly in some ways. However, there are also great bits in it.
I am proud it.
The best thing about the whole experience is that it has given me the confidence and know how to start my next app. I already have a few idea's in mind.