The 10 Best Free Coding Games of 2020

Level up your coding skills and have some fun, too

Being a programmer isn't a specialized skill reserved for those working in IT departments or technology-centric industries. An array of careers require some level of coding prowess to land an entry-level position.

The following free coding games target all ages and experience levels and are designed to help you get started in a number of programming languages.

All games in this list can be played on all major web browsers, except where noted.

01
of 10

CheckiO

CheckiO
What We Like
  • Chrome and Firefox browser add-ons extend the feature set.

  • Translations are available in several languages.

  • Community code reviews ensure that you're on the right track.

What We Don't Like
  • The user interface is a bit clunky in some places.

Intended for beginners as well as advanced developers, CheckiO tasks you with solving challenges using Python or JavaScript. You're given the option to sign in with an email address or use your Google, Github, or Facebook account to build a base from which you attack or ward off enemies through programming tasks.

02
of 10

CodeCombat

CodeCombat free coding game
What We Like
  • Well paced, fully absorbing lessons.

  • Advanced users can build their own levels.

What We Don't Like
  • Advanced levels require payment.

  • In-game tutorials are a bit confusing for newbies.

CodeCombat's core team joined with hundreds of open-source contributors to create an enjoyable way to learn to program while adventuring through dungeons, forests, mountains, deserts, and other cool landscapes. Learn CoffeeScript, JavaScript, or Python while your character gains experience points and loot, completing mini-quests along the way by writing code in a classic RPG setting.

As you progress, you can unlock advanced areas, ensuring that gameplay never gets tiresome. The CodeCombat classroom edition offers tools for teachers and students, allowing you to monitor progress and become a legitimate programmer even at a young age.

03
of 10

CodinGame

CodinGame free coding game
What We Like
  • Impressive gamification with job recruitment resources.

  • So engrossing that you may forget you're meant to be learning.

What We Don't Like
  • We haven't found any noteworthy cons with CodinGame.

CodinGame's mini-games are designed to take competent programmers to the next level. It's a challenge-centric environment where you learn one of over two dozen programming languages, including the major options, as well as lesser-known digital dialects like Dart and F#.

Games include solo and multiplayer turn-based challenges, with the option to participate in leaderboards to get those competitive juices flowing. Whether shooting aliens, racing motorcycles, or trying to make your way through a treacherous maze, CodinGame's learning methods are addictive and enjoyable.

04
of 10

Codewars

CodeWars free coding game
What We Like
  • Can be extremely effective in the long term if you stick with it.

  • Subscribers can interact with others in the Codewars community.

What We Don't Like
  • Tough questions are sometimes presented too soon in the learning process.

  • Can't create an account until you prove your basic code knowledge.

Offering lessons for over 20 programming languages, including PHP, Python, SQL, C++, Java, JavaScript, and Ruby, Codewars takes a unique approach to learning. Students train in a virtual dojo, practicing kata exercises as they strive towards true perfection of their code.

Qualified programmers can take advantage of the vast lesson library and interact with others in the Codewars community. There are costs associated with these exercises and games. We included Codewars on this list because a fully-functional free trial can be requested through the company's website.

05
of 10

Elevator Saga

Elevator Saga free coding game
What We Like
  • If your code isn't completely accurate, you'll fail the challenges.

  • Only experienced JS coders complete the final challenge. 

What We Don't Like
  • Not enough feedback provided for JavaScript beginners.

  • The interface isn't as flashy as other options on this list.

This game requires you to complete individual challenges with a virtual elevator bank, such as transporting 15 people in 60 seconds or less. You're asked to code the movement of these elevators using JavaScript, employing predefined functions like goToFloor and loadFactor to achieve your goal.

06
of 10

Robocode

RoboCode free coding game
What We Like
  • You write the artificial intelligence code for a robot and have control over how it behaves.

  • Must consider what potential opponents have planned for the arena.

What We Don't Like
  • Competitions are aimed at lower-level programmers, so seasoned coders have too much of an advantage.

In Robocode, you're tasked with creating a virtual tank in either Java or another language like C# or Scala, which you then send into real-time battle with other user-generated robots. Essentially, you play the role of an online BattleBots contestant, replacing a soldering iron and steel with identifiers and operators.

07
of 10

Ruby Warrior

Ruby Warrior free coding game
What We Like
  • Accounting for your warrior's health requires advanced coding solutions for Ruby newbies.

  • Teaches artificial intelligence lessons so your hero can make their way to the top level.

What We Don't Like
  • If you aren't familiar with Ruby's basic syntax, you won't get far in this game.

Ruby's easy-to-read style makes it an ideal language to learn through this type of game. Your knight character ascends a tower rife with peril, including dangerous obstacles and angry enemies, all through the magic of code that you're tasked with writing.

08
of 10

Swift Playgrounds

Swift Playgrounds free coding game on the iPad
What We Like
  • All but eliminates the feeling of being overwhelmed, which is common among new coders.

  • Can be a great segue into the Apple development world.

What We Don't Like

Swift Playgrounds is a free iPad and macOS app geared towards teaching the Apple Swift language, which is used to build apps for iOS, macOS, Apple TV, and Apple Watch. Part of the Apple Everyone Can Code initiative, Swift Playgrounds begins with coding fundamentals and works its way up by presenting puzzles and other challenges that can only be solved through programming concepts.

Download For:

09
of 10

Tynker

Tynker free coding game
What We Like
  • Hits the mark in kids' games — feels more like playing than learning.

  • Play 20 coding games for free before reaching the paywall.

  • The free version includes all Minecraft skins, mods, add-ons, and access to a free private server.

What We Don't Like
  • Some of the help pop-ups are too verbose for the target audience.

  • Tynker is not as intuitive as it could be, especially considering the target demographic.

Intended for children 7-years-old and up, Tynker teaches several programming languages, including HTML, JavaScript, Python, and Swift, along with block-based coding. Various code puzzles are offered, as well as fun challenges to create Minecraft skins, mods, mobs, and add-ons.

Multi-player games are also available, allowing you to pit your programming skills against other junior coders by participating in different activities. Some activities include collecting monsters and training them to win battles or casting spells against your opponents in a four-player arena.

10
of 10

VIM Adventures

VIM Adventures free coding game
What We Like
  • Nice starting point for anyone unfamiliar with vi or vim.

  • Used by administrators, programmers, and power users, VIM Adventures takes you through a dungeon-style maze using vim syntax.

What We Don't Like
  • A fee is required to learn anything past the basic controls.

An enhanced version of the vi text editor for Linux-based operating systems, vim's key bindings and multiple modes make it more powerful than a standard notepad-style application or a word processor. Bearing the apt tagline, "Zelda meets text editing," the game permits cursor key movement but strongly suggests that you use h, j, k, and l instead to simulate the true vim experience.