I'm just about to make something similar! Every Saturday, I teach a class of 10-18 kids aged 10-15. Because the younger ones do not have the patience for more conventional methods(Some refuse to read anything longer than a tweet...), I prepare a .pdf more focused on younger people, here's my most recent one. What do you think? Anyway, it takes about 40 minutes to make a page, so my plan is to either make a text editor or a plugin for an IDE/text editor that acts kind of like genius.com, but for code. I would write code, and then annotate it with descriptions so that when you hover over the code, it's description would display. And some other things like a mode that shows you the order that each statement is read in, to help explain functions, though I'm not sure how plausible that is without writing my own JavaScript interpreter.
This is great! Is it a common approach to go over a non-trivial program like this? I've been ranting for months that we should do more of this. Less blank page, more tweaking programs that actually do something, getting feedback along the way. In case you haven't seen it, this is great as well.
Thanks! Yeah, when I started teaching these kids, I remembered that generating a list of prime numbers between zero and n wasn't too appealing to me when I was learning C. Since the start I've been using this approach. What are you doing with your students? I kind of get to cheat with JavaScript, it's not my favourite language but if you want results fast it's definitely up there, and that is very helpful because as soon as a kid starts experimenting and having lots of fun, that's when you've got them hooked.
And thank you very much for that link, it makes so much sense and I had no idea Khan Academy was as good for this as it is. Definitely getting the kids on it this Saturday.
I currently have two students (a 45 year old and his 10 year old son). They came expressly to learn Arc lisp. So far my approach with the younger one has been to give him a skeleton of a program to play tic-tac-toe, and then we're gradually filling it in. Right now we're three sub-problems deep learning about recursion, and tic tac toe probably seems much harder than when we started :) My general approach has been to give him a day or two to solve a problem before working with him on the solution. The idea being that he'll remember more once he's struggled with it by himself. But several times now I realized that the problem I gave him was too hard and spent the next session working on something simpler. So I'm learning a lot.