5 October, 2020
Scratch and Kodu are both visual programming languages (VPLs), in which sequences of drag-and-drop blocks are combined to write lines of code. As children do not need typing abilities to get to grips with the principles of coding, these languages are good as a first coding experience. Both have multimedia, multisensory interfaces which are educational and engaging, allowing children to maximise their creativity while learning. However, parents often don’t know whether Scratch or Kodu would be the best fit for their child when choosing a coding class. We’re here to help you make an informed choice.
Dubbed the ‘YouTube of interactive media’, Scratch is one of the world’s most popular coding languages for kids, and was designed for 8-16 year olds. Users select backgrounds and graphical characters called sprites, then combine blocks to animate a 2D world. The blocks are arranged in order of usefulness and simplicity in colour-coded sections such as Motion, Sound, Control, Events, and Variables, and each block has a simple text label.
Coding with Scratch is reasonably simple and allows kids to experiment and learn through trial and error. Scratch’s troubleshooting tool highlights any mistakes in red, so that errors are easy to find and resolve. The blocks in Scratch have different shapes to indicate which others they can connect with, and blocks which do not make computational sense to combine literally can’t fit together, guiding children into making the right decisions. New coders can benefit from the help of Scratch Cards which are themed according to activities you can do on the platform (for example creating a dance routine, game, or music), and which guide children through these basic activities.
Scratch offers boundless opportunities for creativity. The blank canvas of Scratch’s workspace allows children to create a remarkable variety of projects according to their interests or needs – for example, interactive stories, games, art and music, or even tutorials and presentations for their schoolwork. What’s more, children can personalise their projects by designing and uploading sprites, backgrounds, and audio files.
Younger children can learn to code on ScratchJr, which is designed for 5-7 year olds and has an even simpler interface. Rather than text labels, ScratchJr has picture tiles ideal for children who can’t read so proficiently.
There are also offline Scratch activities which can engage children with coding. ScratchJr Coding Cards are a deck of 75 cards which use real-life activities to teach computational thinking skills and help children better understand the concepts of programming. And the latest version of Scratch (Scratch 3.0) has extensions which allow the platform to be used with physical equipment such as LEGO Mindstorms, micro:bit, or webcams!
Scratch is free to use and can be run on most web browsers on Apple and Windows. The latest version of Scratch also works on tablets and mobile phones. Scratch Desktop is an offline editor, so children can use the platform without an internet connection.
Learn more in Code Advantage’s article Scratch for kids.
Kodu was developed for computer gaming purposes, and inspired by the event and behaviour-driven programming of robotics. Children of six and older can create a 3D game world with Kodu.
Kodu has all the features you would expect from a simple video game. Upon opening the platform, children select a pre-made 3D world or choose a blank map on which to project their creativity. Next, they select ‘objects’ (characters or environmental elements) to populate their world, and combine different tiles into WHEN/DO commands to program their objects. Tiles consist of a visual cue and text label and are commonly expressed in physical terms such as vision, sound, and time. Objects and tiles which can fit together are displayed on selector wheels, making it very self-explanatory to move from one step of code to another.
As well as programming their characters, users can customise the dimensions, features and terrain of their 3D world, fill their game with animate and inanimate objects of varying abilities and appearances, and select audio files from the Kodu library to bring their world to life.
Children can access interactive tutorials with walkthroughs and instructions, or consult the in-game ‘help’ function for examples of what each tile does as well as suggestions of which tiles should be chosen. Kodu eliminates the possibility of syntax errors, as only tiles which make computational sense can be connected.
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. 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 kids!
Let’s start by looking at the similarities. Both Scratch and Kodu:
Scratch is more suitable for older children, whereas ScratchJr and Kodu both use icon-based labels ideal for children who can’t yet read very well. Scratch is a more advanced platform which some consider to be closer to ‘real’ coding – though this shouldn’t discourage your child from learning with Kodu, as the basic concepts of coding are the same across all languages.
Kodu can be more engaging than Scratch, especially for children who like playing 3D video games. The fact that you can fully customise a 3D territory and move a character around Kodu’s 3D world is more visually stimulating than Scratch’s simple 2D interface, which can appear quite basic.
Kodu was developed for gaming purposes, whereas Scratch is more multifaceted – you can make stories, music, art, and much more. Scratch is also better for integrating into your child’s schoolwork, as they can make presentations and tutorials. Kodu is limited in that you cannot upload custom audio or visual files, and can only use what exists in the Kodu library. What’s more, Scratch has extensions which can provide an introduction to other topics such as robotics or electrics.
Ultimately, neither Scratch nor Kodu is ‘better’. Whenever you are deciding which coding language to learn – whether you’re a child or an adult – the most important thing to consider is your interests and whether it will be useful for you. If your child is a fan of 3D video games and dreams of becoming a game developer, then maybe Kodu is the right option for them. But if your child loves to create stories, music, or art then Scratch might be a better choice.
CodeAdvantage’s Scratch and Kodu classes are the perfect introduction to coding for kids, who will learn the basic principles of programming and develop their critical, analytical, and creative skills in a fun and educational environment.
Kodu: Kodu is taught in online 3D Video Game Design classes. Our online Kodu classes are recommended for 6-8 year olds but can be adjusted based on your child’s requirements and abilities. These classes span different levels, from practicing basic computer skills to designing advanced games, and previous student projects include a high-speed driving maze, underwater diving, and strategy-based games.
Scratch and ScratchJr: Our online Scratch classes are recommended for slightly older children aged 8-10 years, though this can be adjusted. Past student projects include escape room puzzles, multi-player sports games, and duelling dragons! We also offer online ScratchJr classes for 5-7 year olds - ScratchJr: Coding World Adventure to create a short movie, and ScratchJr: Game Time Coding to design an interactive game!
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.