Python for Kids: A Playful Introduction to Programming
boingboing.net
boingboing.net
She's 12 now so her expectations about games are more influenced by gaming consoles, so I think the next stop will be doing some simple stuff in the Blender Game Engine, which can be programmed in Python too, once she becomes more fluent on programming.
Both books use IDLE as the programming environment, which is fine, but expect to have minor issues along the way: you have to be aware of intentation rules (it's Python) and in one game the library name could not be found because the name started with a uppercase letter ("import Tkinter" in Ubuntu). In Ubuntu you may need to install some extra packages, etc.
Python for Kids is really good also, has a intro about the Python language which feels more focused than the other book and it has a chapter about drawing with a turtle, as I did with LOGO many years ago! ... Python for Kids also has plenty of notes about running it on Windows, Mac OS X and Ubuntu so you'd be fine on any OS you have.
I think you should try both, but the best order would be to finish Hello World first and Python For Kids second.
They don't teach kids how to think about programming. Their first instinct is to assault them with syntax and use words that aren't readily part of a kid's vocabulary (for example, introducing the concept of "types" and coercing (using that word) between them in like Chapter 3 is just a recipe for disaster) in an effort to give the kid results. "If they don't see results, they won't stick with it!" Bull crap. If you give them great results for the first hour, but then it becomes incredibly frustrating to proceed because they don't understand the fundamentals well enough to do anything useful, you're not doing anyone a favor.
I know Hello World was co-written with the author's son, and so obviously this isn't an across the board problem. But in my experience, if you don't teach how computers work (in general), how programs work (i.e., you type stuff, the computer does it, etc.), and how to develop logical thinking about problems and how to break them down, all you'll be teaching to do is ape the book until they want riff on it, at which point it just becomes an exercise in frustration.
There is always a learning curve, but I firmly believe that there is a very linear progression of thought that you can teach in that will make the learning curve much smoother for most of the kids trying to learn. I've been doing work on a book of my own very, very slowly, but I'm hoping to fix a lot of the pedagogical failures I see in these books.
Maybe it'll come out soon, but then again, the world ends tomorrow, so why bother? :)
https://plus.google.com/photos/108306457281321389001/albums/...
It would be cool to have that kind of resource so they can use it while i'm not at home, even tough the most fun is when we all are into it.
If anyone know of a cool book or resource on spanish for them to read on their own i would love if you could drop a line.
Doma de Serpientes para Niños - Aprendiendo a Programar con Python:
http://code.google.com/p/swfk-es/
Suerte!