My brother is 12, and he's asked me several times to teach him how to program. I'm confident that I'm not a terrible programmer, but I don't see myself as an effective teacher. I taught myself most of what I know, using books and the web.
I've loaned him the "Head First iPhone Development" book, which was quite obviously way above him, since he—like I was at that age—loves to read fiction, but hates technical books, and has no prior experience.
I also asked him for an app idea, and he came up with something that involved 3D modeling and such. It's great that he's aspiring high, but I doubt he has the patience to learn enough to gain patience to learn the rest.
He's definitely bright, and I was able to explain the concept of variables to him. I'm taking a C++ course in college and I can probably pass that on to him. Is that a dumb idea?
What do you suggest? Should I continue to encourage him? If so, what materials should I suggest?