A curated list of games that can teach you how to learn a programming language.
Latest commit 8411224 Feb 15, 2017 @michelpereira committed on GitHub Merge pull request #34 from granthusbands/patch-2
Added Embedded Security CTF


Games of Coding

A curated list of games that teach you a programming language

Awesome chat

Follow me on Twitter.

Table of Contents

Generals IO

generals.io is a fast-paced strategy game where you expand your land and battle with enemies over theirs. You lose when your general is taken, but capturing an opponent's general gives you control of their entire empire.

Robo Dojo

Robo Dojo is a game in which you build robots that build, corrupt and destroy other robots in an attempt to eliminate all competitors.


Robocode is a programming game, where the goal is to develop a robot battle tank to battle against other tanks in Java or .NET. The robot battles are running in real-time and on-screen.

Programming languages: Java, Python, Node

Code Hero

Code Hero is a game making game that teaches you how to make games. It is a first-person coding puzzle platformer that equips you with a code ray that casts C# at your target.

Programming languages: C#, Unity


Corewars is a game of warrior vs warrior, programmed by two opponents, and placed into a virtual 'ring' to fight to the death.


TIS-100 is an open-ended programming game by Zachtronics, the creators of SpaceChem and Infinifactory, in which you rewrite corrupted code segments to repair the TIS-100 and unlock its secrets. It’s the assembly language programming game you never asked for!

Shenzhen I/O

Shenzhen I/O is a game in which you build circuits using a variety of components from different manufacturers, like microcontrollers, memory, and logic gates, and then write code in a compact and powerful assembly language where every instruction can be conditionally executed.

Embedded Security CTF

Embedded Security CTF is a game in which you bypass a series of locks, essentially hacking them, in order to get through a series of warehouses.


CodinGame is a platform to learn and compete. Proposes a variety of multiplayer games and contests as well as optimisation challenges and solo puzzles. You can contribute your own too. Choose your language, enjoy the graphics.


Screeps is about scripting your creeps. No point’n’clicking any longer! You write real JavaScript* which controls your units autonomously. Any time, everywhere, even while you are offline.

(* Or any other language using compilers.)


MHRD is a hardware design game, in which you design various hardware circuits in a hardware description language. The hardware circuits you design get more complex as you go until you create a fully functional CPU design.

Javascript Fight Club

"The Red King and the Blue King are at war! Your Javascript skills are needed to determine the victor: Can you code an effective AI for honor and glory?"


Box-256 is a game about writing assembly code to match a shown graphic.


Scalatron is a multi-player programming game in which coders pit bot programs (written in Scala) against each other. It is an educational resource for groups of programmers or individuals that want to learn more about the Scala programming language or want to hone their Scala programming skills.


In Vindinium, players write scripts in the programming language of their choice (optionally using one of the many starter packs) to control a 16-bit hero through HTTP requests, guiding him to collect gold, do battle with other players, and even visit the tavern.

Elevator Saga

Write Javascript directly in the browser to program an elevator, such that it reaches its efficiency goals. Start with simple "getting started" scripts, and ramp up to much more complex situations with many floors and multiple elevators.


Colobot is a 3D video game where you program your bots to ride, fly, find, bring, refuel and destroy. Game is using a language called CBOT, similar to C++ and Java. Colobot offers tutorialed campaign with gradually harder tasks or you can play scenarios to challenge your skill.


Choose your hero and code your way through the ogre patrols, lava pits, and laser beams of Kithgard Dungeon. Level up, earn gems, and loot magic items to unlock new programming powers. Join millions of players and go from a total beginner to writing advanced multiplayer AI in Python, JavaScript, CoffeeScript, or Lua in this open-source programming game.

Empire of Code

"Empire of Code is a space game with a mix of strategy, tactics and coding." The game is Browser based and requires a free account. After account creation you have to choose your team: Python vs. JavaScript!

Build: Improve algorithms so that your factories produce more effectively
Conquer: Code your defense strategies to protect your base from encroaching enemies
Rule by Code: Develop a bot to attack other players, steal their resources and... their algorithms.


Code Games is a real time programming game where you compete against other players by coding the behaviour of a space ship. The programming language is easy to learn and the game is super fun. Subscribe to one of our tournaments and compete for the prize.


RubyWarrior is a browser based game where you control your avatar through various levels filled with enemies using Ruby.


CodeFights is about improving your coding skills by solving programming challenges. You can do this in a number of different ways:

random VS fights: you're paired up against another random CodeFighter for a 3-round fight, friendly VS fights: you challenge (or accept a challenge from) a friend, best of 3 rounds Bots and CodeBots: automated opponents that you can challenge to 3 round fights Challenges: you solve more difficult programming problems and try to get the shortest solution Tourneys: you get matched up against multiple opponents at once


To the extent possible under law, Michel Pereira has waived all copyright and related or neighboring rights to this work.