My ten year old daughter asked me, yesterday, to teach her how to program a computer. Like most kids her age she well used to using a computer, just not programming one.
So the question is, where best to start bearing in mind that it must be simple and fun to do simple and fun stuff. Possible options are groovy (using its console to show how numbers can be added together and the like) but I suspect that that would only hold her attention for a few tens of minutes. I've heard of Squeak as being a good beginner's environment but never used it. Alternatively, Visual Basic Express is a candidate because it's so simple to create a GUI with buttons, pictures and fields that look OK and work. Finally, all the above are essentially desktop apps, is it possible to start the ball rolling by helping her create her own web page? If so, what apps would you recommend to work in.
That looks interesting. I've looked at the Wikipedia entry for it this morning. I'll try a download of it this evening.
Unfortunately, it's beginning to look like what she calls "programming a computer" really means setting up home page on iFaces or some or other social networking site. :(
After reading an article on the BBC website about the Scratch programming language, designed specifically for children (http://news.bbc.co.uk/1/hi/technology/6647011.stm), I decided to download it and give it a go.
Programs are written by assembling 'Lego' style building blocks and the environment is strongly oriented to producing simple animations. Sample programs include things like Pac-man and turtle graphics. Big'un spent a good hour or more writing various programs to generate pretty shapes, some of which were successful, before I chased her outside to play in the sunshine (a rare commodity in this country).
Congrats! You have found a solution. I think I have one more for you. If you want to introduce your daughter to mathematical programming apart from "fun" programming, I think Python is the one of the best languages. Its easy to learn( I learned it in a matter of hours ) and you can also introduce mathematics through programming.
The main advantage of this language is it can used as a simple calculator with variables. You can teach your daughter within a few days and also make fun with mathematics