Trapped Dots: Built in 17 Days
I turned 25 this month. I have been a full time front end developer since 2007 and for a long time I have felt that I needed to get out of my comfort zone. So in late March, I decided to learn how to develop an iOS game by April 17th, my 25th birthday. I spent the rest of March mapping out my game plan. I’m not a software engineer just a front end developer, so I have no experience creating applications. Also, I have zero experience developing games of any sort, so I knew this was going to be a challenge. On top of everything else, I have a full time job that is fairly demanding. The job is with a team that is 100% remote with people all over the world, so hours are unpredictable. Needless to say, this was going to be very hard.
Learning the iOS Way
I bought two courses on Udemy. One on iOS development as a whole and another that focused solely on iOS game development. The goal was to have an app submitted to the app store by April 17th which gave me exactly 17 days. Most people told me this would be close to impossible given that I had no experience and a full time job. I might have no experience developing any iOS app, but I knew I was a quick learner and practiced some intense productivity hacks. I spent the first two days going through the courses. I explored the Xcode’s playground and I was able to pick up the basics pretty quickly. After the the first 2-3 days of intense course work I felt comfortable enough to move forward and begin developing my game. I constantly had my goal in my mind: to create a game in 17 days. When I was reading and going through the courses I was focused. When I wasn’t eating, resting, or exercising, I was developing my game. I was constantly thinking about the different aspects such as the art, monetization, gamification, framework, and name. I had decided on all these things before I was even done with the crash course, which enabled me to hit the ground running when the real work started.
After about three days I felt I had enough to get started on my app. I wasn’t by any means fully prepared to develop the app, but I knew the basics and that was enough for me. To keep me on schedule I followed a rule of 3: never give yourself more then three options before you make a decision. This kept me from wasting time on decisions. I designed my game in Sketch 3 and all in one very long evening. For me the hardest step is always the first one, but once I get going I don’t stop until I physically have to. In one afternoon, I designed the entire game from launch icon to ‘game over’ screen. Once I had the main character created the rest just designed itself.
When I finally had a prototype, I was ready to purchase my SDK license. This is where things got tough though because work picked up. I finished what I intended, but it wasn’t easy. I normally sleep about 5 hours a night, but that week I was lucky to get 4 hours. I tested the prototype on a few phones and felt ready to move forward and develop the production version. Creating the prototype was the hardest part for sure and that’s clearly where my inexperience showed. The game is simple and I got a lot inspiration from brick breaker, but I didn’t realize how difficult it would be to design and how much trigonometry I needed to know.
The main goal of the game is to keep the dot trapped in the round platform. If it touches the purple outer ring you lose. The only way to keep the dot trapped in the cirlce is by moving the red platform around the circle. Every time you touch the red platform you score a point. If you are able to aim the dot into a white diamond you get an extra point. However, if you cross a red diamond then the dot goes into frenzy mode and things get even harder.
After 17 very long days I finally finished! I submitted my app in the late afternoon and it was then approved about 7 days later. While it got approved quickly, I haven’t been able to pull the trigger and publish the game. I decided it wasn’t ready and in the 7 days it spent in limbo I revamped it and gained so much progress. I’m currently working on implementing Soomla’s framework to add the social integration. After doing a lot of research, I found that it’s pointless to launch an app without social integration. I will be submitting my app again in early May, and I’ll hopefully be able to launch it around mid-May.
To learn more about my journey and keep up to date, subscribe to my blog. Lately, I’ve been writing posts on productivity hacks I utilized to get through this crazy journey. I’m very proud that I was able to accomplish my goal and it’s good to know that I’ll be faster next time. I have a new project brewing in the back of my head that I’ll hopefully begin in June, so be sure to stay tuned!