I honestly think the child would be far better served with Scratch rather than some half-assed adventure writing language (having created several such languages myself).

Edit: To clarify, the languages I created were also half-assed - it's very difficult to create a good one.

I'd say Canon and Scratch are different tools with different purposes. Both are simple and interactive enough for children to love. The main difference I see is that Canon abstracts away a lot of the game state management logic and you get to focus on creating characters, items and having lots of fun. Scratch looks like it has a steeper learning curve and while it is a good introduction to programming, it gets pretty hard to navigate once project size increases. As someone who started programming with Scratch, I think that making a text adventure game like the ones Canon does in Scratch would be much more complicated and the end result wouldn't be half as nice.

I think the only thing that matters is whatever the kid finds appealing enough to do at all.

e.g. I started with Ruby on Rails. Not even Ruby. The feedback loop is what convinced me that I wanted to write software and then dive into the fundamentals.

My kids got bored and annoyed by Scratch very quickly.

Second this. Even the kid who later chose a programming career hated Scratch.

Also, it'd be far too low level in comparison to what the guy did - ultimately, this is a game engine. Proper comparison would maybe be against Inform 7.

Yeah, while reading I was thinking "why does he call it a MUD and not a text adventure"?

Scratch is so bad I think it must put kids off.

It makes zero sense to start people off in an actually bad programming environment.

Try Snap! Instead of Scratch.

[dead]