Seven Coding Games to Help You Build Your Programming Chops

Coding Games Featured

Coding is all about using the tools available to you to solve problems (then solving the problems that resulted from your solution to the previous problems, of course). That also happens to be the basic idea behind most video games, so the two combine naturally. These coding games cover plenty of languages, age ranges, and skill levels, so whether you’re a complete beginner or looking for something on the next level, there’s a game to help you learn coding the best way: by doing it.

For further learning, check out our list of free programming websites.

1. Code Combat

Code Combat, a coding lesson wrapped up in a medieval RPG, is designed for beginners and kids. It’s a compelling concept: guide a hero through levels by coding their movements. The game starts with simple concepts and provides much guidance. While it manages to keep the basics fairly interesting, the gameplay isn’t much to write home about: you can’t skip levels, and there’s some divide between the skills you learn here and real-world applications. Play Code Combat with the Python, CoffeeScript, Lua, Javascript, HTML, CSS, C++, and Java languages.

Coding Games Code Combat

Pros

  • High production value in terms of graphics and audio
  • Guided content is great for learning basic programming concepts

Cons

  • Some features and languages are only available with a subscription

2. Ruby Warrior

Ruby probably isn’t the most relevant language to learn anymore, but this coding game may be worth a shot anyway! Ruby Warrior is a 2D text-based game that lets you control your character using Ruby and general programming logic. It’s geared for intermediate and expert programmers and tosses you right in, having you read and write files in your text editor. Like classic text adventures, the game itself invokes a sense of adventure and draws upon your imagination. Whether or not you need to learn Ruby, the game is fairly interesting and may leave you wanting to keep improving your solutions!

Coding Games Ruby Warrior

Pros

  • Available offline as a downloadable command line game
  • Game’s open source code allows you to learn from or modify it

Cons

  • Last updated in 2012

Good to know: prefer watching videos? Learn to code from these 10 YouTube channels.

3. CodinGame

CodinGame is essentially a puzzle repository with a focus on algorithms and problem-solving using code. The fun/gaming aspect is definitely there (it’s fun watching your lasers annihilate swarms of enemy ships), but your brain may start to overheat as you work your way through some of these challenges. They can get pretty rigorous and require some complex thinking and programming expertise to get through, making the game suitable for intermediate to advanced coders. It supports many different languages, including C, C#, C++, Java, JavaScript, Python3, Bash, C, Go, Ruby, Rust, Swift, and PHP.

Coding Games Codin Game

Pros

  • Multiplayer games are available
  • Many programming languages supported
  • All content is free

Cons

  • Puzzles require heavy thinking

4. CodeGym

CodeGym is more a course than a game, but there’s a pretty serious story element included. The goal is to get you from a beginner to a junior Java developer using story-driven challenges and projects in the IntelliJ IDE (Integrated Development Environment), which is a great introduction to the coding tools you’ll be using later. There’s pleasant cartoony artwork throughout the story component, making this course feel fun and whimsical. While you have to pay for some parts of CodeGym, the free content gives you a good taste of whether the course will fit your Java journey.

Coding Games Code Gym

Pros

  • Learn via fictional story or educational material
  • Content can be skipped based on skill level

Cons

  • Completed exercises can’t be redone with different solutions

Helpful hint: check out the top five websites to learn Python for free!

5. CheckiO

CheckiO is a collection of solid coding challenges that are great for novice programmers who are starting to learn either Python or Javascript. The “game” part of this is actually a thin shell layered on top of the challenges and documentation, and you may find yourself wondering, “Wait, when does the game start?” after you start playing around with it. For instance, the page where you do the puzzle solving doesn’t include any text that connects back to the story (which is barely hinted at in the level selection page). Yet, the hopping between different coding islands theme brings some color to the experience.

Coding Games Checkio

Pros

  • Hints available if you ever get stuck
  • Solutions of other players can be viewed

Cons

  • User interface design is a bit clunky and distracting with ads

6. Elevator Saga

If you already know a your way around JavaScript and are looking for some interesting problems to solve to keep your skills sharp, Elevator Saga could be fun. The idea is pretty simple: give an elevator rules for travelling to different floors, picking people up, and dropping them off. It gets complicated fast, though, so you may find yourself quitting and coming back to it a few times. When you get the hang of it, though, watching your elevator system run like a well oiled machine is super satisfying. Check out Elevator Saga if you’re an intermediate to advanced Javascript coder.

Coding Games Elevator Saga

Pros

  • Allows you to get creative and continuously improve your solutions
  • Speed can be increased to run through the challenges faster

Cons

  • Documentation must be read on a separate page to progress

7. Untrusted

Written for JavaScript ES5, Untrusted is a very cool way to practice the ins and outs of Javascript. It’s a text adventure where the plot revolves around you hacking your way out of a sticky situation by changing the code your captors are using against you. It’s a fun device that makes the code seem like a natural part of the story. Different soundtracks (there’s new music on each level) makes you feel like a hacker straight out of a Hollywood movie. It’s not for beginners, and even experienced programmers may have a hard time figuring out the solution the game wants you to use. While Untrusted may not teach you the most useful or up-to-date JavaScript, it’s still a fun challenge!

Coding Game Untrusted Level 3 Comment

Pros

  • Gameplay is unique and forces you to think outside the box
  • Solutions are autosaved to the cloud as a GitHub gist

Cons

  • There isn’t much practical programming to be learned

Tip: if you like to keep your programming mobile, check out some of the what to look for in a programming laptop.

Other resources

Some sites didn’t make this list, as they weren’t quite game-like enough, don’t teach code, cost money, focus on young learners, or are targeted specifically to pretty advanced coders, but they deserve a mention nonetheless!

All these coding games do is help you practice, though. Ultimately, being a coder is about building your own things. Using sites like CodinGame and Codewars can help you keep your skills honed and growing, but after you’ve learned the basic syntax, building progressively bigger projects is the best way to keep learning.

Tip: learn what questions to ask to help you learn the fundamentals of programming.

Frequently Asked Questions

What programming language should I start learning first?

Generally, it’s a good idea to choose a language that’s widely used. A list of the most popular programming languages will usually include Javascript, Python, Java, and C-based languages, so those are all safe bets.

You should also consider that you must use certain languages for certain use cases. For example, Java or Koitlin are used to develop native Android apps, while Objective-C or Swift are for native iOS apps.

Can playing these games help me get a job as a software developer?

They could! If you’re a beginner, learning to code in an entertaining game format may help you stick with it long enough to get a job instead of quitting.

If you’re more advanced, check out the games that contain code puzzles and algorithmic thinking. These are more challenging and may help you develop a problem-solving mindset that’s useful for getting through programming job interview questions.

What is the best way to learn to code?

There is no single way to learn how to code. Some people learn successfully from a traditional four-year computer science degree. Others prefer to learn from things like online resources, bootcamps, or coding games like the ones mentioned in this article.

It is important to know yourself. Figure out how you like to learn: do you like reading, face-to-face communication, or learning by doing? Also, do you have strong interests or passions that you can intertwine with your coding? For example, if you like gaming, you could get far trying to program a game.

Image credit: Pexels. All screenshots by Brandon Li.

Is this post useful?
Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox

Brandon Li

Brandon Li is a technology enthusiast with experience in the software development industry. As a result, he has a lot of knowledge about computers and is passionate about sharing that knowledge with other people. While he has mainly used Windows since early childhood, he also has years of experience working with other major operating systems.