Hi there. I'm currently investigating home / alternative schooling and I thought what I would do as an experiment is to teach my 8 year old son a bit about programming. This is not me experimenting on my 8 year old - he is really interested in learning it :) I am wondering if you would share your thoughts and ideas on the best way to teach him?
When I first learned programming (at the age of 6), I sat down with my father, he told me what we will do: a dancing man, and we did just that, in C+4 Basic.<p>Looking back, commodore basic was a very good first choice, because I didn't need to be able to read, let alone read english: I could recognise the print symbol (?), I knew that I have to put whatever I want to write on the screen between quotation marks, and then it was only a matter of looking at the keyboard and finding the right symbol for various parts of the dancing man.<p>So something very trivial, yet, fun enough for a 8 year old is a good start. The hard part is figuring out what to write, as that must be something he'll have fun with, thus, it will be fun writing it too.<p>Sitting down the two of you, with you first explaining what you will do, then doing it, and then letting him play around and change the code here and there is the best way to learn in my opinion.
Scratch from MIT is designed to help with this: <a href="http://scratch.mit.edu/" rel="nofollow">http://scratch.mit.edu/</a><p>For more formal programming Processing is a great learning enviroment: <a href="http://processing.org/" rel="nofollow">http://processing.org/</a><p>In both I would say the best method is to find challenges your son wants to undertake for himself. Learning to explore, play and fail is the way forward.