informa
5 min read
Blogs

How to Go From Game Programming Beginner to Expert

Many students ask me what kinds of engines or programming languages they should use to get started making games. Here are the best languages to get you going, from beginner all the way to expert.

This article is cross-posted from The Game Prodigy, a site for students and parents interested in careers in games. Visit for resources and a free 29-page Complete Toolkit.

Photo Credit: ericnvntr

Many students ask me what kinds of engines or programming languages they should use to get started making games. We live in a golden age where anyone with a computer and an internet connection can start making their own games from home, teaching themselves what to do. This is wonderful! But the downside is that when you are just starting out, it can be very confusing and bewildering to pick what kinds of software you should get familiar with.

The answer is: what programming language you should learn depends on your skill level. What you want to do long term is build up skills that are interesting and fun for you, but also useful to a game company that needs to ship products. These might be Flash games, mobile titles, console games, or something else. If you have the skills to build these titles, then you'll have a much easier time later on in Stage IV when you are trying to land a job.

Beginner Difficulty

If you are a beginner and have never made any games before, then I recommend starting off with a simplified programming interface like Game Maker. This will start to teach you the concepts of making a game, how things work, how you get a character to start moving across the screen, how you make levels and detect collision so that the game knows when you've gotten hit and taken damage. It's important to understand these ideas, to see a bit of the engine under the hood, before you get into more complicated programming.

Once you understand these basic concepts, however, it's important to get off of simplified programming interfaces as fast as possible. They are appealing because they let you build games quickly and easily, but over the long term programs like Game Maker will not help your career. There aren't any game studios that use Game Maker to build their titles, because professional titles typically are more complicated.

You can find a free copy of Game Maker here.

Medium Difficulty

Next, you should move to something that is closer to actual programming. I recommend Adobe Flash. You can purchase the Flash development software from Adobe, or you can get a free development environment like Flash Develop and get started. Flash will allow you to make some very robust games that you can put online at sites like Newgrounds on Kongregate. Many large game companies like King.com also build their games in Flash for Facebook.

Another suite that I recommend is Unity. Unity is used by many professional and indie developers alike as a great mobile engine. It is much more advanced than Game Maker and lets you build 3D games and can export across many platforms and devices.

Most importantly, both of these start to introduce you to actual code, which is paramount to being able to make real games. It's not so complicated that you will take a long time to get going, but you can also get fairly advanced in either Flash or Unity.

Here are some links to get started with programming in Flash and Unity:

Hardest Difficulty

Programming in C++ (used for PC and console games) or Objective C (used for apps) is where you want to end up eventually. These are very powerful programming languages used to build just about every kind of software you use across all types of devices and computers, not just games. Using DirectX with C++ is one of the top ways to build top-notch PC games. Additionally , these languages will introduce you to some of the more advanced topics within computer science, such as memory management and data structures, which will be helpful to you not just in a game career but also in school and other software industries as well.

Here are some great resources to get started programming C++:

Think Long Term

It's important to think long term with your game making skills and take it one step at a time. If you are already advanced, then I would encourage you to try making some games in the more difficult languages to grow your skill set. If you are just getting started, then feel free to get started with simpler programs like Game Maker, but be sure not to get stuck on them and never move on. Moving towards more difficult skills will allow you to build better games and also land better jobs later on.

Best of luck!

This article is cross-posted from The Game Prodigy, a site for students and parents interested in careers in games. Visit for resources and a free 29-page Complete Toolkit.

Latest Jobs

Treyarch

Playa Vista, California
6.20.22
Audio Engineer

Digital Extremes

London, Ontario, Canada
6.20.22
Communications Director

High Moon Studios

Carlsbad, California
6.20.22
Senior Producer

Build a Rocket Boy Games

Edinburgh, Scotland
6.20.22
Lead UI Programmer
More Jobs   

CONNECT WITH US

Register for a
Subscribe to
Follow us

Game Developer Account

Game Developer Newsletter

@gamedevdotcom

Register for a

Game Developer Account

Gain full access to resources (events, white paper, webinars, reports, etc)
Single sign-on to all Informa products

Register
Subscribe to

Game Developer Newsletter

Get daily Game Developer top stories every morning straight into your inbox

Subscribe
Follow us

@gamedevdotcom

Follow us @gamedevdotcom to stay up-to-date with the latest news & insider information about events & more