DIY: Coding, Animation, UI, Sound, and Game Design (Guest Post)

Beetle Bounce icon
Share on Facebook0Share on Google+0Tweet about this on TwitterShare on LinkedIn0

Naomi Kokubo is the indie developer of Beetle Bounce, an October App of the Week winner. Brand new to mobile development, Naomi used Corona SDK to build her first game. From writing all the code, to creating all the animation, Naomi writes on her “do it yourself” approach to building a game she’s proud of.

I believe you can’t build a truly great game unless you iterate like mad, and there’s no better way to iterate than to code it yourself.

A little over a year ago, I had no real programming experience. I did have ample business experience. I was the COO of two venture-funded startups and had worked in the gaming business for years.

So I was faced with a choice: I could hire an engineer, artist, designer and composer (as I’d always done), but this gets expensive fast! Or I could try to make a game entirely on my own. I really wanted to develop my own, personal games without being dependent on anyone else for funding, design and implementation. I’m also a mother with two kids, and I wanted the flexibility of working from home. Everything considered, I chose to go it alone.

With virtually no coding background, I began looking around for the best solution that would allow me to get up and running quickly, but wouldn’t limit my game in the long run.

  • Game Salad looked simple enough, but it was too limiting.
  • Unity 3D seemed nice for 3D games, but creating a 2D game seemed like a lot of work with a high learning curve.
  • HTML 5 was sexy but had lots of issues. In my opinion, it just wasn’t ready for games.

After analyzing all of the software packages on the market, I decided on Corona SDK because it felt like the right blend of functionality and flexibility. It also cross-compiled to iOS and Android, a huge plus for an indie developer.

Now, here’s how ignorant I was. I didn’t even know what an API was. I used to blank out when anyone talked tech to me. When I started with Corona, I literally had to look up on Wikipedia what an API was.

Less than 6 months later, I’d completed my first game, and I not only coded it, but I also did 100% of the art, animation, UI design, game design and every other task. It was a fantastic experience, and the one thing that made it possible was the support of my peers in the Corona community. Without their support, I couldn’t have done it.

My game, Beetle Bounce ( went on to receive lots of great reviews, was a Featured App on the Kindle Fire, and was a Top Game Pick on the NOOK! I was thrilled.

I’m now working on my second game, which is more ambitious than the first. I recently learned MySQL and PHP and set up a database with multiplayer asynchronous gameplay. Amazingly, it works! The game is nearly done and will launch by Christmas.

I have to say that I love what I do. I plan to keep going solo for the time being. It’s so rewarding that even the pain of having to do it all yourself pays off in a million little ways. And I want to thank everyone in the Corona community who has been so kind to help me get this far!

Naomi Kokubo
Co-founder of LavaMind

NOTE: If you’re interested in trying out Beetle Bounce, you can download it from these sites:




Google Play:

Share on Facebook0Share on Google+0Tweet about this on TwitterShare on LinkedIn0

This entry has 24 replies

  1. Great guest post. I went the cheap route by enlisting my wife and son for a variety of duties as they have talents suited to the artist/composer/tester role whereas my background in I.T. allows me to do all the coding.

    • Naomi says:

      I’m totally with you. Having supportive and helpful family does a wonders.

  2. It is really an inspiring posting to me,,,After many years of IT experience, i too suddenly had decided to have my own company and pursue my own interests,,,I started my company last year and started building a mobile game using Corona SDK,,,Due to lack of funds, i am also going on my own and hoping to release my first game soon,,,,As a matter of fact, journey is not so easy ione but experience of taking this hard path and staggering forward has been soul enriching and satisfying one, for some unknown reasons,,,And of course, carrying on forward requires so much help and inspirational bits like these,,,All the best to your games,,,,

    • Naomi says:

      Thank you, and best of luck to you too. Encouraging to know that many of us are on the same boat.

  3. Mo says:


    Congrats Naomi. At first I was not sure if it the same Naomi that save my butt/helped me so many times over the years so I had to make a search and sure enough it was you:)

    Could not happen to a more deserving people in this community. Of course the app is excellent and I love your story. Are you doing games dev full time now?

    In any event a million congrats. Great job!


    • Naomi says:

      Thank you, Mo. I’m glad I have been of some help to you. Best of luck with your projects too!

  4. Nick G says:

    Naomi has helped out the community tremendously. I’ve picked up some tips and fixes for things I was working on. It’s great to see a good success story, having 2 kids is challenging I bet. My son is now 14 months old, so I can only imagine having 2 of him around! Haha. The whole DIY is the route I am going, it’s the same story. I worked in professional recording studios, studio musician, sound engineering etc, I work in IT, write stored procedures in Sql 2008 R2, but never really coded before. Sure I was using variables, and populating variables in TSQL, but that’s not really the same as coding in Lua or another language.

    Naomi, like myself is leveraging her business experience. She probably ran projects and managed resources, now she’s the resource and is managing herself. More challenging, but she always knows where she’s at in a project

    “Hell self”
    “Yes hello?”
    “Where are we on project X?”
    “Hi Self, we are almost finished, 11/16/2012 go live”
    “Ok self, thanks for the update”

    lol. I R funny.

    Congrats Naomi, well done.


    • Naomi says:

      Ha ha ha. Love the conversation you illustrated. You and I started with Corona SDK around the same time, and I am looking forward to your app announcement. Cheers!

  5. John Oliver says:

    Thats really inspiring story ! Doing same task over the years, we generally forget that one person can do lot of activities.
    You made my today!! I was thinking that some tasks are for me, but now I think that at least I should have to give full try.

    Well Hats off to you Naomi !!

    Good Luck

    • Naomi says:

      Thank you. You know, one of the hardest thing for me is switching between coding and doing graphics work. It feels like different parts of the brain need to be in full throttle to get things done right (and fast enough.) That said, it really is great to experiment and build what I want (even though I’m sure someone else would be able to do much better job than me) — because instead of spending hours trying to explain what I need to convey (be it game concepts & tweaks, ideas, layout design, look & feel, and even the bugs to be fixed…), I can spend the same hours working on it. 😉

      • Amy says:

        Thanks for posting your story, as I’ve been trying to work with my older son on creating an app–and trying to figure out where to build it has been a huge obstacle. We will definitely give Corona a try. Just wondering, which graphics program(s) would you recommend using?

        • Naomi says:

          I didn’t see your post until just now, which is a good while after I replied to Matt in the post below, where I describe how I use Adobe Flash for all my graphics work right now.

          I’m probably not the best person to recommend which graphics tool to use, but what I think is most important is to pick a tool and spend some time mastering it. (I found a person can do some amazing things with even the most primitive tools.) But then, you’d have to weigh the balance in terms of time it takes to master the tool and time limit you have (and then the cost of the tool, etc.) Also, the overall look would be somewhat determined by the graphics tool you choose, so you’d want to keep that in mind.

          One of the things about Flash I like is it being the vector based. It makes it so much easier to scale the images to accommodate various devices with various screen resolution. (3D software would also do the same, but it would take much longer to learn and master it…)

          It’s great to hear you’re collaborating with your son. Best of luck with your project!

          • Amy says:

            Thanks, Naomi! I’ve worked in Corel (Draw/Photo) in the past, and now we’ve been trying all of the different ‘apps’ in Adobe’s Creative Cloud. There’s a lot in there to explore! Thanks again for the advice. Good luck with your next game!

  6. Laura T says:

    you go girl!! 😀

    • Naomi says:

      Thanks, Laura. And you too, GO GIRL!!

  7. Hi there. Congratulations for your improvement in Corona development. I am also a enthusiast of Corona development. I’m learning Corona for some time. My question is: how do you get to produce such a beautiful game alone? What books did you read? How did you study? Thanks. 🙂

    • Naomi says:

      Thank you so much for your compliment. I didn’t specifically read books for designing games or received any formal training, but I have been working in game industry, so I have years of exposure to sofware development and production. And I think every bit of experience I have would contribute to things I create now.

  8. Matt says:

    What a great inspiration! Just curious – what tools do you use for graphics works?

    • Naomi says:

      For the graphic images, I used Adobe Flash. I started using it a few years ago (before I picked up Corona SDK.) I picked up a book and went through some lessons, creating images and animations. Now that I’m comfortable with Flash as a graphics tool, I make everything with it.

      That said, I should learn Illustrator, though. It’s much more powerful and can do some amazing things… Illustrator isn’t for animation but it sure does a beautiful job (based on what I’ve seen professional graphic artists do with it.) The problem is, it’s hard to change tools once you are comfortable with it. So… as long as Flash can deliver what I can live with, I think I’ll stick with it…

      I used to create art assets using 3D software called True Space. Although I loved True Space, I no longer use it because my dev environment is Mac now, and True Space only supports Windows machine (and I haven’t touched it too long to pick it up quickly again.) The thing is, what’s amazing about 3D software is that, the images are somewhat timeless. I mean, even if the images were made years and years ago, they still look like something that could’ve been made today.

      I also looked at Blender when my game started to come together. But it isn’t something I could pick up in a couple of weeks (I did give it a shot for about a week), and I decided I don’t have time to master it enough to generate anything I could live with.

  9. Steven says:

    Hey Naomi,

    Firstly congrats! I think what you did is really the dream of many people these days.
    I have 2 kids myself and am in the IT line for many years but having the same dream to do what you did.

    Similar to one of the posters above, would like to know how you get from practically zero programming knowledge to releasing a full-game in 6 months. Specifically how did you get by the learning curve of programming in Lua? For example, did you read through all the tutorials before you started building? Or did you build as you learn? Re-use code samples?

    • Naomi says:

      To me, learning curve wasn’t about how to program in Lua, but rather how to program at all. I ordered a book called “Programming in Lua”, 2nd edition, by Roberto Ierusalimschy while at the same time I started reading the Corona’s online guide:

      I was unable to make much headway with the book, because, I suppose, I virtually had no basics (or conceptual framework) to understand what’s written in it properly. (I’m sure I can learn tremendously from the book now that I have some basics to go on with.) What I was able to manage was the Corona’s online guide. I literally sat and read the online guide, and at the same time, I opened one of the sample projects that come bundled with Corona SDK. Using the basic project, I fooled around with the code as I learned things from the online guide, manipulating the code to see what happens. (I distinctly remember manipulating Fishy project when I was at it — and it became something completely different by the time I added different images and did some strange things to it.) And trust me, I did read through the guide (I thought if I couldn’t even do that, then I’m really not meant to learn how to program at all.) Even though I don’t think I retained all that much from the online guide, it was enough to get going. And then, I started building. Took a bit of time to sort out what kind of project, but once I did, I simply kept going, troubleshooting and learning what I needed as I went. And there are so many great code shared by the community, like the Director Class for scene transition and ICE for saving/loading (please note, GGData replaces ICE now), and much more.

      I’m still learning, and I sometimes find myself making some dreadfully ignorant comments and/or questions, but hey, if I’m afraid to sound like a fool, I will remain a fool until I learn somewhere somehow (and if not, I may actually remain a fool forever, eh?)

      And then, there’s this amazing community. I was delighted to find that the community of engineers/programmers is one of the most helpful and sharing breed I’ve ever encountered. Without it, I don’t think I could’ve learned the way I did and the way I still do.

      • Steven says:

        Thanks for your sharing Naomi. Here’s wishing you all the best in all your future projects.


  10. Sandy says:

    Naomi, approximately how much money have you made from “Beetle Bounce”?

  11. Sandy says:

    Naomi, approximately how much money have you made from “Beetle Bounce”?