There are so many different resources out there to help young people learn how to code, it can be a little overwhelming to know where to start and what to spend time playing around with.
Even when you test the resource out for yourself, you can still run into problems when you introduce young learners to it for the first time (trust me, I have had quite a few exciting plans that have flopped halfway through a code club!). So whenever I find a resource that I like, I keep a note and tell everyone about it! 📣
Here are my 5 favourite coding resources at the moment and the best part is they are all available online for free without you having to worry about downloading software onto the devices you're using.
1. Erase All Kittens
Sometimes it can feel like there is a bit of a steep learning curve to get started with web programming in terms of setting up your files before you actually get to the programming side of things. Whilst this is, of course, very important, sometimes it helps to go into that stage with a little understanding of who and what HTML is and how it is at the core of website structures.
Erase All Kittens is perfect for doing just that! In this coding game, you need to use web programming languages like HTML to get around the world as you are on a mission to stop all kittens from being erased from the internet. And as an exciting bonus, each time you find a kitten, you get an adorable cat related gif - talk about motivation!! 🐱
In all seriousness though, this is a really fun and exciting way to introduce young people to web programming. Two things to be aware of is that all learners do need to make an account to get started and play so they will need an email address to do that and also, whilst there is a completely free demo version that you can play there are also versions with extra levels that you need to purchase. I haven't personally purchased the full game as the demo version has always been enough to get me started on the topic with our young people in code clubs.
Did I also mention that the founders of Erase All Kittens are two women? An excellent opportunity to introduce some role models to young people!
2. CSS Diner
Sticking with our theme of web programming, I have quite recently become obsessed with this online game that puts your CSS skills to the test. I will be the first to admit that I'm not the fastest when it comes to CSS and it takes my brain a little longer to work out what I need to do but this game has definitely helped me to practice and get a better understanding of what all the different commands and keywords do.
This has been a really useful tool to have for young people to work through by themselves and usually helps for them to identify areas of CSS that they are not too sure about. The main idea behind the game is that in each level you are presented with a table of objects you would find in a restaurant or diner as the game says. You are then asked to use CSS to select certain objects, so in the example above you need to read the HTML on the right hand side to work out which CSS selectors are needed to select the plates.
There are also very helpful hints and tips on the right hand side of the screen as you are playing to remind you of some important keywords that will help you to complete the level.
Honestly, I spent a long time playing this game when I first found it and all of the young people I have tested it out with have also enjoyed the challenge!
3. MakeCode Arcade
A recent obsession and a platform that I wish more people knew about! MakeCode Arcade is a blocks based coding environment with a focus on building video games. There are so many tutorials on the website to help get you started but there are so many different ways that young people can customise their video games through drawing their own sprites and characters with lots of blocks to help some of the more advanced coders try out different features for their games.
If you're looking for a tutorial to get started with, I would highly recommend Chase the Pizza or further along the list you will find one called Simple Extensions which is very exciting because it helps you to form the basis of a platform game but in this example your main character is a corgi 🐕
I've been using this platform a lot recently for a video games club that we are running and all the young people are really enjoying not only following the tutorials but starting to think about creating their very own video games and the best part is I get to play all the games once they have made them as it's so simple to share projects and let others play the game you built!
4. Code Monster
It is super simple to use and get started with as there are no logins required and you just follow along each of the mini challenges that your monster at the top of the screen sets. It's also really visual so learners can see how each line of code is changing the output on the right hand side which I think is a great way to help make programming feel a little less abstract.
5. Micro:Bit using MakeCode
Oh the micro:bit, where do I start with this amazing piece of kit? The micro:bit is just one of those tools where the different projects or things you can do with it are endless. From creating fitness trackers to investigating the world through the several sensors on board, it lets young people see their code off the screen and run in a small device in their hands!
Don't worry if you don't have access to a physical micro:bit though, you can write your code and test it on the simulation on the left hand of the screen and is a brilliant tool to get those discussions around input -> process -> output and challenge students with all the different fundamental coding concepts they will come across like if statements and loops.
Did I also mention there are so many different lesson ideas and projects on their website? And there is a massive community of educators who use the micro:bit who are always willing to share what they have been up to.