Why should programmers choose Python over Groovy?

Gamified learning for young and old, beginners and professionals

Games, fun and programming: 7 coding games for beginners and professionals

Ghosts, zombies, levels and awards: Coding games make the developer forget that you are learning something! We present seven gamified learning platforms for developers - and those who want to become one. For everyone who likes to blur the line between work and pleasure.

Everyone knows the old rule: “Work first, then have fun!” However, this does not apply to coding games - here, fun is the focus and you also learn something in the process. Of course, one can argue that programming is always fun. But let's be honest: There are few things that are not a little more fun if you slaughter a few zombies on the side.

7 games and fun for (budding) developers

There are many courses on the Internet for programming languages ​​and techniques that are based on the principles of gamification. Each of them chooses a different approach: Sometimes the focus is on earning awards, sometimes you can even expect a real game interface in which the learning content is almost forgotten. The latter is of course a matter of taste; Overall, there should be something for everyone: from games for children to platforms for absolute beginners to challenges for professionals who want to expand their skills, every skill level is covered.

Monster programming

Programming with ghosts! Well, if that doesn't sound like child's play ... and it is. The app "Monstermäßig Programming" is aimed at children between the ages of four and nine and first of all promotes logical thinking. At the same time, the app conveys some basic principles of syntax: With the help of given elements, the player has to drag and drop a chain of commands with which little monsters can be moved along given paths and perform tasks. The graphics are worked out with great attention to detail, the menus and game elements can be used in German and English. Children who cannot read will need some help operating the game; School children will quickly master the game principle themselves.

The app was developed for the CodeSchule, which the companies Kaasa healt, Kaasa Solution and Futurice offer several times a year free of charge in Düsseldorf. There, children between the ages of around four and nine can learn the first tricks in programming - like the app, the CodeSchule focuses above all on promoting logical thinking and introducing children to the use of technology. The Monstermäßig Programming app can be downloaded free of charge for Android and iOS.

Screenshot of the app “Monster programming” for Android. Copyright: Bastian Motschall, Download: Google Play Store

Code Combat

It can be a little more complex for school children and teenagers - Code Combat challenges this target group to learn to program in the form of a real RPG. Instead of the familiar game control via keyboard (which is even appreciated by its own meme with the phrase "I walk with WASD"), code is written in the selected language to move the character through the dungeon. In the classic way, the avatar can be selected from various options, is assigned equipment and earns skill points when you win the level. A real RPG!

Python, JavaScript, CoffeeScript and Lua can be learned here; the basic course is free. For the other levels, a subscription for the price of 9.99 US dollars per month must be taken out. The offer is designed for use in school lessons and comes with accompanying material for teachers. But everyone is allowed to play, even adult single players are welcome and can have fun here. It should be noted, however, that in some places in the game specially developed commands are used that only exist in the game world. In addition to the full-time Code Combat Team, a large community of volunteers on GitHub supports the development of the game.

Code Combat: Copyright © 2016 CodeCombat

Dungeons & Developers

Dungeons & Developers also takes up the idea of ​​the RPG, but in a completely different way: There are no programming instructions here, but an overview of various skills that web developers need. And that in the form of a Character Talent Tree, as you know it from various RPGs. In order to be able to activate a new talent, various skills should be mastered. Unlike in coding games, however, these are not checked: Those who state that they can work with CSS can activate the next level of the tree. In this respect, Dungeons & Developers offers a creative way to compare your own skills with those of colleagues or classmates - but less of an aid in learning new languages ​​and tools. The WebDev Character Talent Tree was developed by the developers at 352inc.

Empire of Code

Another game with a focus on optics is Empire of Code. Here JavaScript and Python can be learned by building and defending a space station; Attacks on other stations are also part of the game. The game character predominates here, however, so much that the game can even be played without code - editing code snippets is an advantage, explains the game description. To do this, you first choose a language that represents your own team; is programmed to develop your own strategies for attacking other stations. The game is still in beta.

Empire of Code. © CheckiO Inc.

Code Hunt

Code Hunt is an educational game for the languages ​​Java and C # from Microsoft. The player has to identify problems in a given code and is shown tips in the form of unit tests. He is rewarded not only for the right solution, but also for choosing a particularly elegant way. Competitions also give players the opportunity to demonstrate their skills.

The game is constantly being further developed on the basis of user input. As Judith Bishop reports in the Microsoft Research Blog, previous attempts at solutions are used to give specific tips on the solution that are based on the strategy of the respective player. According to Bishop, this should mean that frustrating experiences during the learning process are minimized - thus the dropout rate among the players drops significantly. The possibilities of using coding games for teaching programming languages ​​and the knowledge generated from the data sets of the Code Hunt players will be discussed on November 14, 2016 as part of the 2nd Code Hunt Workshop on Educational Software Engineering (CHESE 2016).

CodinGame

The CodinGame offer impresses the willing player with an immense selection of languages ​​and games: C, C ++, Java, C #, PHP, Python, Ruby, Javascript, Objective-C, Go, Haskell, Scala, Perl, Dart, Bash, Pascal , Groovy, Clojure, VB.NET, Lua, F #, OCami, Swift and Rust are available. You learn again with games in which you can graphically understand what your own code is doing. And here you have to slaughter the zombies mentioned at the beginning!

Various challenges can be solved round-based in a programming language of your choice. The game principle is not based on a uniform character development, but uses different games for each challenge. You can play alone and against friends; In competitions, prizes can even be won for the best code. In this respect, the site is not primarily aimed at beginners, but at everyone who enjoys programming or wants to get it. The CodinGame offer is free of charge.

Screenshot of the Code vs Zombies game on CodinGame.com. Copyright: © 2016 CodinGame

CodeFights: Arcade

Every developer should know the CodeFights platform. It is aimed at programmers with previous knowledge and offers different types of competition: You can compete against other players and bots and put your skills to the test in challenges. Tests ask the player's knowledge of topics such as Python and application security. In the event of success, badges and places on the leaderboard will be given.

In September, the offer was expanded to include the CodeFights Arcade. It was a learning platform with a level system: Starting with easy tasks that can also be solved by beginners with little previous knowledge, players / developers have to solve increasingly difficult challenges in a selected programming language in order to unlock new stations on a map. The map is illustrated with pictures, but the code editor remains free of gimmicks. In the future, the offer is to be expanded to include other areas of IT; A DevOps version of the arcade is to be released this year. CodeFights currently has 15 programming languages ​​available: JavaScript, Python2, C ++, Java, Ruby, C #, F #, PHP, Pearl, Go, Scala, Swift, Haskell, Visual Basic and R.

And how do you study

Coding games are therefore available in various forms and versions. But everyone has a different way of learning, and some people may prefer books or videos instead of playing. Some of the games presented are of course to be understood more as a small finger exercise for real developers and not a real challenge. In this respect, there is probably not one platform that every developer can use to playfully have more success in their job. But maybe the playful approach will help you just try something completely new!

Our editorial team recommends: