My daughter has quite some experience with Scratch already and she can visually program also elaborate games. I'm not very enthusiastic about visual programming myself, so I'd like her to learn also proper text-based programming. Even more so since she is a fourth grader now and she started to learn English in school, so language won't be such a barrier anymore. Consequently, Natan Žabkar's presentation of Cocos2d at yesterday's Python meet-up was particularly interesting to me. The biggest obstacle for kids to start programming nowadays is all the boilerplate that needs to be written before anything becomes visible on the screen. It was the immediate feedback of ZX Spectrum that got me hooked on programming when I was a kid myself and kids these days are no less impatient. While Cocos2d still has quite some boilerplate , it seems to enable game programming using concepts of scenes, sprites, and events and not some esoteric concepts such as functions, objects, and modules that are impossible to explain to a nine years old girl.
My daughter is crazy for games on her iPad and her biggest dream with regards to programming is to make her own game. I'm keen on helping her learn Cocos2d and I'm very curious about the results. If you have some suggestions yourself how to help kids start text-based programing, let me know in the comments.