Comment Re:scratch (Score 0) 315
Use scratch. It's mildly obnoxious for a real programmer, but has everything you need off hand, and program flow is very easy to visualize.
Don't.
Python is a real programming language, and it is very easy to learn. My eight year old daughter started learning Python when she was seven, and she can write Hangman and other games. Note that we are writing _console_ games but we have a blast doing so. And her native language is not English, nor even use English letters, so if your child already knows the English alphabet and knows what "define", "print", and "if" mean, then he will already be at an advantage.
For kids their age, it is fun just to write a function is_cute(name) that accepts the name of someone they think is cute, and then prints "AC is cute", "timothy is cute", and so on each time it is called.