Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

A long time ago, I taught community college course on programming for children. Here's my approach.

Very young children aren't ready for abstract concepts as the first introduction. We need to progress very slowly and relate to the familiar.

1st: we talk about a recipe for no-bake cookies. I bring the ingredients. I show them the "program" (recipe), and the kids play the part of computer -- following the instructions.

Then we take a look at the LOGO language. The move commands issues to the "turtle" demonstrate visually the commands being given. Again, very high level, very concrete.

Next, we talk about a variable. I pick some kids and they each "hold" a number written in marker on a large sheet of paper for everyone to see. The variable name is their name (Joe, Sue, etc.). They know they can only hold one value at a time. So if I give them a new number they throw the old one away.

Then we step into Basic and learn to print a simple message.

Eventually we combine the two and end up with something like the old favorite:

10 for i = 1 to 10

20 print tab(i)

30 print "joe"

40 next

which, if you've not seen it looks a little like

joe

  joe

    joe

      joe ...


From there, I let the kids' interest guide me. We might talk about how a "Guess a number" game works, or even graphics and "Snake Byte" (Chuck Sommerville -- early 80s).

I've had pretty good luck with this approach.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: