I also find it more useful to teach something real, not a toy.
Even PASCAL was never a toy, though it was designed motivated by teaching purpose, it became professional because it was capable of that.
When I told some friends I was going to teach 11-year-olds to program, and that I was considering some BASIC versus Python, they suggested Scratch. But 11-year-olds aren't babies. They can understand a lot, and they should be enabled to talk about their code (which textual representations enable, but not Scratch-style visual programs).
So I picked Python (with pyturtle for easy turtle graphics), and it worked well.
I actually think Scratch is fine for 10ish year olds, mainly because all of my above holds true: scratch.mit.edu is an online community where kids can copy, tweak and in general be inspired by and learn from what other kids have done. Your universe can expand with your curiosity. When my nephew was 10, he started with Scratch. My brother guided him towards using Python on a Raspberry Pi soon after.
For kids around 10, I think it's all about what the kid thinks is more fun.
exactly... just getting rid of boilerplate on syntax feels so friendly with the tiny humans
we should also don't forget that learning for its own sake, sometimes, is the meaning/end of pedagogy; not luring them to the professional path of computer science/programming
Even PASCAL was never a toy, though it was designed motivated by teaching purpose, it became professional because it was capable of that.
When I told some friends I was going to teach 11-year-olds to program, and that I was considering some BASIC versus Python, they suggested Scratch. But 11-year-olds aren't babies. They can understand a lot, and they should be enabled to talk about their code (which textual representations enable, but not Scratch-style visual programs).
So I picked Python (with pyturtle for easy turtle graphics), and it worked well.