Ungravity: Unlocking a Career in Game Dev

David

David

Udacity’s mission is to empower our students to advance not just their education opportunities, but also their tech careers through online education. Today we’d like to introduce David Curras, a Udacian who took HMTL5 Game Development and created a fantastic game called Ungravity.

David is a busy software developer with a background in developing web applications. Between working full time and studying Information Systems Engineering in the evenings, David managed to fit in Udacity courses to supplement his learning, and he has discovered a new passion in game dev! Below, David shares his future plans and some great game development learnings.

Why HTML5 Game Development?

I’m interested in most of the Udacity courses, especially those related to Computer Science, but with the University classes and my job I don’t have enough time to take them all. For five years I have been developing web applications for various companies of Argentina and the USA, so I have a good knowledge about HTML, CSS and JavaScript, and when I saw a new course at Udacity called “HTML5 Game Development” I told myself, “You have to take that course!”

What makes a good game?

I tried to figure out which component makes casual games like Angry Birds so awesome and popular, and I found that games of this kind have simple game mechanics, colorful images and realistic physics. So I started learning how to use the physics engine called Box2d, trying to move a circle inside a box by changing the gravity, suddenly I realized that it was a good idea for a casual HTML5 game.

How has your career focus changed?

Udacity allows a person who lives in any place in the world to take Artificial Intelligence classes with teachers such as Peter Norvig and Sebastian Thrun, or learn how to develop HTML5 games with Google Engineers. I’ve reinforced my knowledge in computer science, specially improving my skills in web applications development. I would like to focus my career in HTML5 game development. Ungravity is my first game project, but I really enjoyed developing and researching and I’m sure that this is what I want to do in the future.

Do you have any advice for other programmers developing games?

Since it was my first game project, my objective was to have a game working in seven weeks (starting on May 13th the project deadline was July 1st). So, my recipe for success, without any previous experience in game development, was to follow some basic software development practices:

  • Make sure you have realistic and well known objective for the project.
  • Divide the project in tasks and make a schedule to check the progress.
  • Follow some coding standards and apply them strictly during the project.
  • Documentation is necessary but you will write less documentation if you have a clean and self-explanatory code.
  • Be social. Share your knowledge and doubts with coworkers, friends, forums and online groups.
  • Keep it simple, programmers tends to make everything more complex than it really is. “The perfect is the enemy of the good” (Voltaire)