18 April, 2020
Kodu Game Lab is a video game development platform developed by Microsoft to introduce young children to the basic concepts of computer programming, and was inspired by the event and behaviour-driven programming of robotics. Kodu is a visual programming language (VPL) which teaches coding via simple visual elements. Children connect tiles containing underlying code to build 3D worlds and games without the need to master complex syntax and typing abilities. The appealing multimedia and multisensory content present on the platform combined with Kodu’s simple and interactive interface renders it the perfect gateway to programming for young children.
Coding with Kodu begins by selecting a landscape from the main menu. Children can then create a 3D world using the options found in the Tool Menu, which include: object tool for adding, editing, and programming objects; terrain and water editing tools; ‘play’ option; and general world settings.
Users select ‘objects’ (characters or environmental elements) and combine different tiles to program the rules governing their object, animating the game world step by step. Each tile consists of a visual cue and text label, and tiles are often expressed in simple physical terms such as vision, sound, and time. The objects and tiles available are displayed on selector wheels, making it easy to navigate the options available.
Each rule is a conditional consisting of two commands: WHEN (condition) and DO (action). There are more than 500 different tiles which can be selected to form a rule. The rules combine to make a page of actions, and the pages make up the script of the program; each character can have up to 12 pages of rules governing its behaviour. Even with this simple WHEN/DO format, children can get acquainted with more complex programming concepts including Boolean logic, loops, variables, constructors, and control flow.
Kodu supports budding coders in a clear way. Children can access interactive tutorials with simple walkthroughs and instructions of the very basics of Kodu. The in-game ‘help’ function provides examples of what each tile does, as well as suggestions of which tiles should be chosen. Kodu eliminates the possibility of syntax errors: when connecting tiles to make a rule, only tiles which make logical sense are available to select. It is easy to toggle between ‘play’ and ‘edit’ mode on the platform, allowing children to easily alter their program and learn through exploration and experimentation.
Kodu was developed specifically for computer gaming purposes and therefore provides an engaging and entertaining learning experience. Children have a lot of freedom to channel their creativity as they build a complex world from an empty landscape – from simple mazes and sports games to remakes of popular video games such as Pacman and Mario or scenes from their favourite film.
All aspects of the game world are fully customisable. The Tool Menu allows children to change the dimensions of their world, add features such as water, valleys, and mountains, create streets and bridges, and change the lighting and colour of the sky. Users can populate their world with characters of varying abilities, and modify the size, speed, and colour of animate and inanimate objects. They may also add sound effects to objects which can be triggered by certain events, and background music to the game world.
Kodu’s web-based community provides inspiration and support to users and encourages self-directed learning and peer teaching. Once a user has finished creating their project, they can upload it to the Kodu website for other coders to see. In addition to creating their own games, children may download, play, and modify existing games, learning from the code of more advanced users. The Kodu website displays the most popular and newest worlds which have been uploaded.
Kodu is free to download on Windows and a paid version is available for Xbox. It can be run on Windows operating systems, Xbox 360, and low-specification hardware and touchscreens – familiar devices for young children. The keyboard and mouse are used to program on PC, but an Xbox controller can also be plugged in and used, which has proved very popular with children.
Although Kodu may seem like a simplistic platform for children, the skills and concepts which children will learn are transferable to more advanced VPLs and textual programming languages. What’s more, it’s possible to download a textual version of the visual code which has been written on Kodu, which can provide a glimpse into text-based interfaces.
Thanks for reading this article and if you have any questions or comments on this topic or coding and STEM in general, please feel free to contact us.