With so many coding tools for kids out there, it can be difficult to narrow down where to start for your child. Variability in kids and their interests and motivation are a factor to be considered as well. If you know the WorkChops team, you know we don’t believe that one-size-fits-all in anything, especially Maker endeavors.  This guide can help you choose a web-based, free coding platform for your child or class. We’ve tested various programs and found these three to be some of the best for learning to code. 

scratch logo

For the creative kid: Scratch. Scratch was developed by the MIT Media Lab and is one of the best and most popular block-based coding platforms for kids. Because of it’s huge popularity, there are tons of guides, videos, books, and other resources for getting started with this programming language. The website itself has some tutorials, and kids can learn a lot about Scratch and coding simply by building basic projects and exploring the various code blocks. With Scratch, kids can make animations, games, stories, and more. This makes it a perfect introduction to coding for the creative kid, because it feels like a natural transition from drawing and creating on paper to creating animations with code. Additionally, Scratch is a fun (and well-moderated) social coding platform for kids, where they can post their projects for others to see, play games made by Scratchers across the world, comment, and “Remix” projects created by other kids. 

microbit ide make code

For the analog or results-driven kid: MakeCode. Makecode is another block-based coding platform for kids created by Microsoft, with the addition that users can change the view of their code from block-based to Javascript with the click of a button. This is an interesting way to make the switch from block-based code to text-based. MakeCode is great for the analog or results-driven kid because it is designed to work with certain products including micro:bit, Circuit Playground Express, Minecraft, and more. What’s great about this is that kids can transfer their code to an analog product and play their games/projects offline or in-game, and share with friends and family members in-person as well. However, I enjoy MakeCode even without these devices, as the site provides a simulator while you code, so that users can see what their code is doing step-by-step and play their games/projects on the simulator even if they don’t have the product (though the product definitely improves the experience). I particularly enjoy their arcade simulator, which looks similar to the Gameboy console (but also employs functionality of the keyboard). Every product has tutorials available that are easy to follow and help kids create fun, playable games/projects. Because of the use of analog products and the simulator, I recommend Makecode for the kids that want an analog, playable product from their coding endeavors or for the results-driven kids whose goals include developing game-design specific coding skills.

code combat screen

For the game-driven kid: CodeCombat. CodeCombat is coding games in a different sense- the site teaches kids code through playing a game where you must write code to solve and complete the levels. For kids who enjoy playing games and will be motivated by this type of lesson (perhaps they already enjoy other gamified learning such as Prodigy math), CodeCombats is a great fit. This site isn’t free in the same sense as Scratch or MakeCode, however- the Intro to Computer Science game (you can choose to play and learn with JavaScript or Python) is free, but their Game Development and Web Development game courses require a paid subscription. Still, the Intro to Computer Science course teaches kids the basic concepts of coding in two of the best languages to learn and skips the block-based approach entirely in favor of learning text-based coding with a built-in code editor (so kids don’t type out every single thing, like professional coders). It is engaging, fun for those who enjoy gamified learning, and does the teaching for you, so for kids who might not know what to do on more open-ended platforms like Scratch, CodeCombats is perfect. 

I hope this list helps you to choose an engaging coding tool for your child or school based on what you know about them. Of course, every child is different so the program you expect would motivate them might not click- it is certainly worth it to try a few different programs until you find the right fit. Also, motivated coders may have a great time using multiple platforms. I have had students who enjoyed using all three of these within the same academic year! If you try any of these tools, or if you have others you suggest for different types of learners, comment below and let us know about your experience.