Who am I?
I spent 3 years teaching computer programming at MC2 STEM High School in Cleveland, Ohio before (attempting) a career change to full time developer.
How NOT to Teach kids
You should not teach kids how to code for its own sake. Kids are inundated with enough crap in their daily lives that they shouldn't need to be pressured by what anyone else thinks they should be learning. This will make students not like programming.
That being said, here are my favorite teaching resources for kids.
The Hardware: Raspberry Pi
I wrote about this in my first post. There is so much that this little credit-card-sized machine can do. It comes bundled with tons of educational software, you can add all sorts of hardware, or turn them into robots. These things can really do almost whatever a regular computer can do-- sometimes more. If you were thinking about getting your student a new computer consider a PiTop.
The Websites: CodeCombat, Khan Academy, Scratch
There are more than just these three but I think these are the best. The common denominator between them is that it allows kids to play while coding. My daughter actually spends more time playing games on Khan Academy than she does coding, and that's fine!
I really like Scratch for kids who have had no prior coding experience or little to no computer experience-- and yes, that still exists two decades into the 21st century! Scratch is baked in to Raspbian, the Raspberry Pi official Linux distro.
The Book: Python for Kids
I love this book. I learned a lot from it myself. My favorite part is that the entire book leads up to the creation of a game. Python in general is also a great language to learn first due to its clean and easy syntax.
The Other Thing: Minecraft
To be honest, I've never played the actual Minecraft, but I've used the Raspberry Pi edition a lot. I had a lot of fun writing scripts that troll students who play Minecraft instead of doing their work-- teleport their avatar to random places in the world (one block down makes them unable to move but still see everything around them), create giant blocks (usually lava for maximum damage), make them poop random blocks as they move around (flowers usually have them the most confused). Once we've learned the basics of coding I teach them how to write the kind of script I used against them.
Conclusion
If you haven't caught on by now, the way to get kids enthusiastic about coding is to get them comfortable playing with code. Coding is hard and at can look scary, especially for kids. The way to get kids comfortable with code is to make it playful.
Breaking stuff is also good! Just make sure to use old hardware for that.
Top comments (4)
Very useful information. I also have two small kids, and I try to look for new educational resources to help them with homework and with practising. I love this Parenting website because there are a lot of study materials and educational apps. For me, it's the best way to help my kids, because when they learn something in such an entertaining way they do not get bored and the whole process is interesting for them.
Thank you for sharing it with us. I wish you were closer located geographically and I could take my kids to your classes. I am also a strong believer that children MUST learn coding. There will be a time when without having at least basic knowledge of coding, you won't be able to succeed. I wanted to take my kids to coding classes and used the would you rather questions funny to see if they have any interest in it at all. Apparently, they did. They have been going to coding classes for 2 years, and they love it.
Do you offer online courses by any chance?
Do you offer online courses by any chance?