I like http://www.khanacademy.org/ The most commonsense explanations I've ever seen, makes things sooo simple.
Zeke Shadfurman
Posts
-
Maths recommendation. -
Learning programming - 6th gradeI would say a version of BASIC is a good place to start. I was programming in basic when I was in 2nd grade though so you may actually want to find something more relevant. By sixth gradeish I was doing C++ and assembly. Its part of the balance of their personality. You don't want them to get frustrated or bored and walk away, but you don't want to make things too easy so they believe real programming is that easy. I think the MOST important part of programming is learning the structure. I was really bad with structure and I don't even think about it when I start writing a small app. The result is I usually miss a key structural element and just do a whole rewrite or two. I'd recommend getting a good flowchart program and encouraging him to plan it out thoroughly before touching the keyboard. Then let him pick what he uses, there are so many free compilers, but the more industry relevant the better I think. Honestly, I use FreeBasic all the time. The runtimes are the fastest I've seen for basic and if I'm just trying to figure out a math concept, I run home to my language mommy. (One of the things I was always interested in but didn't have the money to do till I was older was micro controllers. They have the same gratification as the flashy graphics, but for some reason I always learn more. I think that may be another good place to start learning programming.)