The best games to teach programming
-
Codecombat
Codecombat is a fairly popular browser game that is designed to teach the basics of programming in a group of students with a teacher (there is even a special Classroom Edition), but it is also suitable for single users. In essence, Codecombat is a set of tasks and puzzles that can only be solved using program code. Allows you to learn the basics of Python, JavaScript, CoffeeScript, as well as the Lua language, which is used in game development (game development). One of the strengths of CodeCombat is the fact that players have access to three different courses with an emphasis in computer science , web development and game development.
-
Robocode
One of the most famous, oldest and at the same time having a cult status of games for programmers. We have already written about Robocode in an article on the use of Java in the field of artificial intelligence .
Robocode is a popular open-source Java game that allows users to learn Java programming concepts and more (the game lets you code in Scala, C#, and other languages). It is also well suited for learning the basic principles of robotics and artificial intelligence .
In Robocode, the player creates his own robot tank, programs its strategy and develops software intelligence, competing with the robots of other users. First created back in 2000, when games teaching programming were still a rarity, Robocode is still one of the most popular and well-known games for coders.
-
Codinggame
Codingame is another popular browser game, one of the main advantages of which is its support for a huge number of languages (more than 25), including Java, C#, Python, JavaScript, Lua, Go, Rust and others. It offers quite a variety of thematic tasks and puzzles, which, precisely due to their diversity, do not get boring to solve.
Another strong point of Codingame is multiplayer - you can play with friends and colleagues; the game also regularly hosts international competitions.
-
Screeps
Screeps is an MMO strategy game in which the player must use JavaScript to control game entities and build their own empire. Although Screeps, like most MMOs, is a paid game ($9 per month), the basic version allows you to play solo on a private server for as long as you like, and also gives you 30 days of free access to the game on the official server.
-
Vim Adventures
Vim Adventures is a simple but fun tutorial game for learning how to use Vim, the quirky, feature-rich text editor that pro developers love. Many programming experts advise beginners to learn Vim, as this editor helps you write more efficient and, most importantly, understandable code.
-
Codewars
Codewars is a popular browser game that is a set of puzzles and puzzles that allow you to practice writing code and solving algorithmic problems. For solving each problem, the user receives points, the number of which depends on the method of solution - the more effective it is, the more points. One of the best features of Codewars is the ability to study solutions to problems proposed by other users - this way you can learn approaches to algorithmic problems from more experienced and savvy colleagues.
The game supports a huge number of languages, including Java - 21 languages in the main version, plus another 17 less common languages in the beta version.
-
Shenzhen I/O
Shenzhen I/O is a simulator for an electronics designer - circuit engineer. This is a good, and quite hardcore, it should be noted, puzzle game in which the player must create simplified circuits and write assembly code that works on the specified circuits. The player designs various types of devices, receiving concept documentation with a brief list of tasks by email.
-
CodeMonkey
CodeMonkey is a simple, visually pleasing online game aimed at primary and secondary school children, but also suitable for adults thanks to its fun and addictive gameplay. Designed for users with no programming skills at all and teaches the basic aspects and concepts of coding. CodeMonkey uses a programming language called CoffeeScript.
-
Human Resource Machine
Human Resource Machine is another very good example of a programming game with a fun set of puzzles where the player uses their coding skills to control little office workers who must move objects between different areas. The good thing about the game is that it is suitable not only for programmers, but also for everyone else, because it trains logic, memory management skills and finding solutions. Human Resource Machine can also be an excellent educational game for children; you can start learning programming with it or continue mastering coding skills after the very simple CodeMonkey.
In 2018, Tomorrow Corporation, the developer of Human Resource Machine, released a sequel called 7 Billion Humans. The sequel is made in the same style, and the approach to gameplay has not changed. 7 Billion Humans is perfect for those who liked Human Resource Machine, offering players an even greater variety of tasks and puzzles.
-
TIS-100
In TIS-100, players must solve different types of puzzles while competing against each other to optimize the game's multi-threaded assembly code. The game is made in an unusual and stylish aesthetics of computer manuals of the 80s (which, however, will probably scare off many). TIS-100 is a parallel computer architecture consisting of synchronous heterogeneous connections. The TIS-100 is ideal for applications that require processing complex data streams, such as automated financial trading, data mining and human behavior analysis.
TIS-100 also allows players to create their own puzzles in three types of sandboxes.
Good games for learning programming that weren't in the top 10
And finally, games that teach programming, which did not make it into our top, but definitely deserve at least a mention.-
A simple yet fun game to learn the basics of CSS. It is free and includes 32 levels, the difficulty of which increases as you progress.
-
A good option for those who set out to master the difficult Ruby language. Suitable for both completely new “rubberists” and those who have already mastered the basics of this language.
-
CheckIO is a futuristic strategy game with versions for learning JavaScript and Python.
-
Another entertaining collection of tasks and puzzles that supports a number of languages at once, and therefore can be an alternative to almost all games for learning programming. The languages that Cyber Dojo supports include Java, Ruby, JavaScript, PHP, Python, and others.
-
An enjoyable game for learning Java and C#, developed by Microsoft Research Division. The player's task is to analyze and correct code fragments.
If we forgot to mention some good programming games that deserve to be in this top, write about it in the comments.
GO TO FULL VERSION