Choosing Your First Programming Language


programmingWhat is a programming language? Most of you may know, but for some of those who are absolute beginners, a programming language is a constructed language that computers understand. It is basically a list of commands (source code) that the programmer tells the computer to perform. The commands are typed in one or more files and then compiled using a compiler. To begin programming, you will need a compiler and an IDE.


What is a compiler?


A compiler is a program that transforms source code into an executable program that most people are familiar with. Some examples of an executable program are Photoshop, Firefox, Safari, Skype, Spotify, and Minecraft.


What is an IDE?


IDE stands for Integrated Development Environment. It’s software kind of like a notepad that helps you write code. It highlights syntax and provides code suggestions.


Okay, where can I get a compiler and IDE?


It all depends on what programming language you want to learn. There are several IDEs with compilers that you can get for each kind of programming languages. Some of them are free, and some you have to pay for. First, you will need to pick a programming language that you want to learn, and try some of the programs and see which one you like best. To find an IDE and compiler for the programming language you want to learn just google the programming language and add IDE and compiler at the end. ex. “c++ IDE and compiler”. I would like to cover which IDEs and compilers are out there that you can download for free (maybe in another post), but there are lots of them.


What programming language should I choose?



Decide first what kind of game you want to make:

  • 2D Graphics Game
  • 3D Graphics Game


And platforms:

  • Mobile devices (iOS, Android, Windows phone etc.)
  • Web or Browser game
  • Desktop computer (Windows, Mac & Linux)
  • Console Game (PS4, XBox One, WiiU)


If you chose a 3D graphics game, you have a lot to learn and after you learn, you have a lot of work to do. It’s better to work in a  team if you want to achieve a big project like that.


If you want to make a simple 2d graphics game, it’s still a lot of work to put together, but it’s not too complicated.


Mobile Games

Mobile Platforms



If you want to make an iOS game (this will sadden a bunch of Windows users), you will need Mac computer with Xcode(compiler) installed. The programming language you will have to learn is Swift or Objective-C.


In order to publish your work, you will need to get an iOS developer license. The subscription costs $99 a year. Sounds like a lot for one game, but if you have more than one game, you can publish multiple apps with the subscription. It shouldn’t be too bad if your game is making a lot of money. For more information on how the Apple Developer Program works, click this link.



To build Android games you will need to download Android Studio, and learn Java.


Like iOS, there’s a fee you need to pay for publishing to Android. You will have to create a google payments account and pay a $25 registration fee. See this link for more details.


Windows Phone

To build games that are windows phone compatible, the best programming language to learn is C# (C Sharp).


All Mobile Platforms

If you want to build games compatible for all mobile devices, the best language for you to learn is HTML5. Keep in mind, if you want to publish your game for iOS or Android devices you still need to register and pay the fees.


Web or Browser Games

Web Browser Game Platform


If you want to write a web or browser game, you have several options;  you can choose HTML5, Actionscript or Haxe. If you want to learn Actionscript, use Flash Develop. If you want to learn Haxe get the Toolkit HERE.


Desktop GamesDesktop Platforms


If you are interested in making desktop computer games there are a lot of options for you:

  • C++ (C plus plus)
  • C# (C sharp)
  • Python

These three programming languages are the most commonly used ones. You will have to download and install additional programming libraries if you want to make video games using these languages. If you don’t know what a programming library is; it is a collection of additional functions and commands. It can handle low-level tasks such as playing sounds, creating windows, loading images, and drawing an image on a screen.


What programming libraries are there?


It all depends on the programming language and the type of game you want to make. Most game libraries are capable of rendering 2D graphics, and very few can render 3D. The best way to decide which library you want is to choose your programming language first. Then you’ll need to decide if you want to make a 2D or 3D game. Check each of these libraries to see if it supports the game type you want to make, and start learning it by reading the website’s documentation.


Most commonly used libraries for C++ are Allegro, QtSFML, Direct X, and Open GL.


For C# there is XNAOpenTK, Direct X, and OpenGL.


For Python, you can also use Qt and Pygame. Check this link here for more additional game libraries for Python


Console Games

Console Platforms

This one is a little bit tough. I do know that if you want to make XBox One games, you can program the game using the C# language. Most of the indie games published to console platforms that I’ve seen have been made using game development software. I have talked about some of these in other posts:



Hopefully, by now you have a better understanding of which programming language is the best for you. If you haven’t decided a language yet, look around, and see which one is the best for the type of project you want to create.


Before you get started on any of these projects, I would recommend learning the programming language first.  Study the language, when you get a better understanding how it works, then go back to this post and try some of the libraries.


On my next post, I will be showing you software that you can use to make games with little programming knowledge. Hopefully, that will give you a better understanding of how a game is put together. Take some time and learn your programming language as I upload my next tutorials. I think you will have like this next post. This post is about software you can use to make 2D games.


Don’t forget to comment, share, subscribe, follow, and like.


About Justin

Computer programmer and owner of
Bookmark the permalink.


  1. Great introduction to game programming! Are people still using Alegro? I almost forgot about it. Looking forward to reading through more of your site, keep us posted.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.