Probably the most visited article on my site here is the original post on this topic. I wrote that about a year ago, and my conclusion was that Small Basic fit the bill best. It was written for beginners, had autocomplete, a syntax that made sense out of the box. Plus turtles!
However, I’m revising that assessment now. I still like Small Basic for all those reasons. But the introduction of two new approaches has made me rethink this (and what kind of teacher would I be if I wasn’t always willing reevaluate what I’m doing?). The two new gateways into coding that I’m using are Minecraft and the RaspberryPi. And I can do Python with both.
In some ways, Python isn’t as user-friendly as Small Basic. Indentation can bite you big-time, and while True loops don’t make sense to kids right away. But once you get those concepts at least manageable, and you get used to the syntax, the language itself makes a lot of sense to kids. Also, no curly braces! Plus it’s a language that kids can grow with. It’s a great beginner language, and it scales all the way up to professional. Sure, it’s not Java or C++, but there are jobs out there that require Python. And I have seen students move from Python turtles to Python Minecraft to programming sensors on the Raspberry Pi in Python.
And that’s a huge win. So, for now, I’ve got a new best coding language for beginners!