![List of Coding Games to Practice and Improve Your Programming Skills](https://soshace.com/wp-content/uploads/2019/12/list-of-coding-games-to-practice-and-improve-your-programming-skills.jpg)
In this post, we’ll take a look at some of the best online games to learn new programming languages and practice your existing programming skills. Some of those are beginner only, others may seem far advanced at the start, but give it a go, and you’ll thank us later. If we forgot to mention something, or you’re building a cool game of your own, do let us know in the comments! Happy learning!
Codewars
![Codewars](https://soshace.com/wp-content/uploads/2019/12/codewars-1024x444.jpg)
Twitter handle: https://twitter.com/codewars
If you ever tried making the learning process of programming languages and concepts a little more fun, then we bet you’re familiar with Codewars, and if you’re not, then it’s the best timing to check the site out.
Codewars is made to help you improve your skills in more than 20 languages by solving real code challenges created by the community; moreover, you can check how others tried to solve the challenges and vote on the best answers. All coding tasks can be solved right in the browser with whatever coding style you prefer. Your ranking (the difficulty of which is measured in virtual so-called “katas”) is recorded as you progress through the multiple challenges of varying difficulty, so you’re later paired with the relevant challenges that match your existing skills. Again, you can compare your solutions with other members for a greater understanding of different programming concepts or different ways to solve the same challenge. You can also create your own kata games and challenge the community with your understanding and superior knowledge (if you have any ;-).
Codewars is free to use, but before you start, you really have to have at least some basic knowledge of coding. What I’ve also noticed from my experience is that some challenges which are supposed to be really beginner-friendly subjective-wise turned out to be quiet a challenge for my IT teacher, not that he’s bad or anything, it was just not for beginners. Challenging — yes? Very much so!
Codingame
![Codingame](https://soshace.com/wp-content/uploads/2019/12/codingame-1024x438.jpg)
Twitter handle: https://twitter.com/codingame
We’ve already covered this great platform in Coding Interview Tools, so check it out for more details on other platforms where you can check other programmer’s knowledge. But, if you’re here for an adventure or learning opportunities, don’t you worry — Codingame has it all for you! More than 25 languages addressing all the hot programming concepts and topics, where you can easily advance to the next level with a new set of coding challenges and peer-review. The most fun with Codingame is that you can challenge your schoolmates, friends, family, coworkers and even your boss in super interactive challenges where you can finally convince someone you deserve that promotion; and if even you don’t have anything prove, maybe just have fun for once with your knowledge? There also plenty of contests, which you can join for pure fun or maybe a little bit of glory? Moreover, you can actually use your Codingame profile to land that dream job of yours proving your track record in your chosen technologies by completing challenges and making your profile visible to only those employers you care about.
The companies can use the Codingame platform to source, screen, employ, and retain new employees: engage within the community, use existing online tests, organize game-based interactive hackathons, and more. Companies that have already joined and taken advantage of the said opportunities are Facebook, Adobe, Deloitte, Nintendo, among others.
CSS Diner
![CSS Diner](https://soshace.com/wp-content/uploads/2019/12/css-diner-1024x447.jpg)
Twitter handle: https://twitter.com/flukeout
CSS Diner is a cute little game whose sole purpose is for you to practice correctly selecting specific elements for use in CSS stylesheets. There are 32 levels with hints if you feel stuck at any point in particular. In each of the different levels, you’ll see a table with plates set on it. The challenge is to select one of the plates by itself using CSS selectors. You can preview the elements in HTML so you can visualize the code.
Another game by the same author that has been out since recently is Paddleforce, the fast-paced update of the classic pong game designed for head to head play, it’s best enjoyed with a friend and two gamepads; however, you can also play with a keyboard. Nothing particularly educational about that last one, but if you’re in to have some fun, then this is the game to play.
Flexbox Froggy
![Flexbox Froggy](https://soshace.com/wp-content/uploads/2019/12/flexbox-froggy-1024x467.jpg)
Twitter handle: https://twitter.com/playcodepip
Flexbox Froggy is another fun game where you help a little green frog navigate through the pond by writing CSS code and learning the basics of aligning things in flexbox. Flexbox Froggy is made especially for complete beginners in CSS flexbox, so you can learn everything on spot by navigating the frog. And while simplicity is one of the biggest advantages of Froggy, it’s also quite a disadvantage — if you’re good enough with CSS and flexbox, then you’ll find the game very obvious, straightforward, and even boring.
Flexbox Defense
![Flexbox Defense](https://soshace.com/wp-content/uploads/2019/12/flexbox-defense-1024x455.jpg)
Twitter handle: https://twitter.com/FlexboxDefense
Flexbox Defense is another great way to master your flexbox skills. However, this time, you’ll move gun towers into position along a path to defeat oncoming waves of enemies. Unlike other tower defense games, in this one, you’ll have to exercise the power of CSS, and yes, you got it, flexbox properties.
Robocode
![Robocode](https://soshace.com/wp-content/uploads/2019/12/robocode-1024x454.jpg)
Twitter handle: https://twitter.com/robocode
Robocode is a programming game where the goal is to develop a tank to battle against other tanks in Java or .NET. The robot battles happen in real-time on-screen. Despite the site design being reminiscent of something from the long-forgotten 90s, Robocode gets updated on a regular basis with the newest version released in August 2019. Besides being a fun game, Robocode is used to learn how to program or how programming concepts work; schools and universities use the game to teach students programming and AI.
Robocode offers a complete development environment and comes with its own installer, built-in robot editor, and Java-compiler. The only pre-requisite for Robocode is JVM to already exist on the system where Robocode is going to be installed (Java 6 or newer must be installed on the system before Robocode is able to run). Robocode also supports developing robots using external IDEs like e.g. Eclipse, IntelliJ IDEA, NetBeans, Visual Studio, etc. The game can be run on any operating system with Java pre-installed, meaning that it will be able to run on Windows, Linux, Mac OS, UNIX.
Since Robocode is an old game, there are plenty of detailed tutorials and extensive documentation of every aspect of the game. The project is fully outsourced meaning you can reuse it and create something of your own, more or less sophisticated, or contribute to all kinds of modes and add-ons to the game. Moreover, Robocode is not just about Java, you can also use it to test your knowledge in other programming languages, like C#, Scala, .NET.
Among the disadvantages, as mentioned earlier, is a very simple design with basic graphics and interface.
Codegym
![Codegym](https://soshace.com/wp-content/uploads/2019/12/codegym-1024x458.jpg)
Twitter handle: https://twitter.com/codegym_cc
Codegym is an interactive, gamified online Java programming course that consists of four quests such as Java Syntax, Core, Multithreading, Collections, each consisting of ten levels. Each level has short lectures on Java theory followed by a set of tasks to test and consolidate your knowledge on new concepts.
So, what’s exactly in the game? Codegym is a futuristic city with its own characters and history: the character you need to upgrade is Amigo, the robot, who learns to program. If you complete the tasks correctly, you earn bonuses which are named “dark matter.” Even though there’s some inevitable amount of theory involved, you’ll primarily learn by practice. Starting from the middle of the course, you’ll start writing mini-projects like apps, chatbots, games, so that you can later include them in your portfolio, which you can submit to prospective employers. Every step of the way, you’ll receive feedback and help from the course instructors, Codegym alumni, other students, and developers.
Perhaps, the biggest disadvantage of Codegym is its price, which is subscription-based, starting from $30 a month to $50 a month. The only level which is free is level 0, you can take it, no strings attached, to see what features Codegym has to offer and if it works for you.
Vim Adventures
![VIM Adventures](https://soshace.com/wp-content/uploads/2019/12/vim-adventures-1024x445.jpg)
Vim Adventures is another cute online puzzle game for practicing and memorizing VIM’s keyboard shortcuts (commands, operators, motions). There’s no steep learning curve, the game is pretty straightforward and lots of fun. You start the game with the only ability to move up, down, left, and right, but as you progress you talk to people, collect items, and keyboard buttons, which add to the set of commands you give the cursor until you master VIM.
Shenzhen I/O
![Shenzhen I/O](https://soshace.com/wp-content/uploads/2019/12/shenzhen-1024x444.jpg)
Twitter handle: https://twitter.com/zachtronics
Shenzhen I/O is a puzzle game that teaches how to build circuits and write assembly code based on provided elements. Although not focused on any specific programming language, it is one of the best games there is to learn programming concepts and skills necessary for many different jobs and purposes. If you’re interested in programming in the good old fashioned way, without the fancy frameworks or IDEs, then this game will allow you to practice in full.
In Shenzhen I/O, which is available for somewhat around 10 dollars, you’ll build circuits using a variety of components from different manufacturers, like microcontrollers, memory, and logic gates; write code in an assembly language; read the manual with over 30 pages of original datasheets, reference guides, and technical diagrams; build your own games and devices in the sandbox.
Games for kids:
Further resources on the blog:
- Podcasts Series
- FREE Python Courses for Beginners
- Best Web Dev Udemy Courses
- Web Development Blogs on Medium
- Best Resources for Preparing for Your Tech Interview
Thanks to the users of reddit, we have the following suggestions to add to the above list:
1) Human Resource Machine – a great introduction to assembly programming TIS-100 – Zachtronics game about parallel programming
2) Exapunks is more fun and slightly more approachable language.
3) Spacechem is visual programming and better for newbie programmers to hone their algorithmic thinking.
4) Opus magnum is even further along the spacechem route of visual and better for newbies.
5) Screeps
Hi there! I’d love it if you’d give TwilioQuest a try as well:
https://www.twilio.com/quest
You can learn Python, git, JavaScript, and Twilio APIs as you earn loot and XP for your character.
thanks for your comment!
Other suggestions from Reddit users:
Hacknet
While True Learn()
Autonauts and Automachef
Gladiabot
7 Billion Humans
War games examples:
http://overthewire.org/wargames/bandit/
https://razvioverflow.github.io/starthacking
http://smashthestack.org/wargames.html
http://smashthestack.org/wargames.html
https://linuxsurvival.com/linux-home-directories/
https://learngitbranching.js.org/?locale=en_US
https://web.mit.edu/mprat/Public/web/Terminus/Web/main.html
Was a cool game here https://www.fightcodegame.com/ hope they restore a domain name
My friend recommended this game https://pikabu.ru/page/interview/jobseeker/?t=frontend2 but only who knows Russian
Great article, Marina! As a wannabe programmer I can say that Codingame is probably the best on this list. I would also love to include BitDegree here as well since some of the courses there really resemble a similar experience that codingame gives you. Try space doggos 2 and see for yourself!
Thanks, Oliver! I really appreciate your suggestions!
The only addition i have is CodeSignal https://app.codesignal.com/arcade (formerly CodeFights). I wasn’t aware of the the majority that you listed in this post and so I really appreciate your putting this great resource together!
I have tried Code Miner: A Programming Game at https://leanspiration.net/CodeMiner
I’ve just started learning web programming from w3schools and Udemy, but most coding games are made for kids (block-based and cute). Code Miner is for adults (real JavaScript to program a robot), and I like the experience so far. Will be good for practicing.
I would like to share with you a great experience with the service in the field of coursework. As a student, I often face lack of time and difficulties in completing my coursework assignments. However, thanks to coursework writing service https://essayservice.com/coursework-writing-service, my life has become much easier.
Slot online Indonesia menyajikan beragam permainan slot yang menarik dengan peluang kemenangan yang menggiurkan bagi para pemain di seluruh Indonesia.
Slot online Indonesia https://tmibrtl.cc/menyajikan beragam permainan slot yang menarik dengan peluang kemenangan yang menggiurkan bagi para pemain di seluruh Indonesia.