Teaching how to program

On Wednesday, I will be teaching a small group of teenagers how to program, using Python. I'm both extremely enthusiastic about this, and scared out of my mind. As the day actually approaches, my mood tends to oscillate toward the latter more often :)

I have prepared some material... I think enough for the first session. But really, I don't know. I think the pace of the first lessons is ok, but then I wonder if it's too boring. I have prepared some cool examples that progressively grow out of the concepts we learn, but then I wonder if it's too much at once, or if I'm stretching the examples too much. Will this be entertaining enough to hold the attention of 7 teenagers for a couple of hours?

I know this will be an excellent learning experience for me. I'm very familiar with the material so I'm not concerned about this, although it will be a curse at first while I try to remember what it's like to learn all those concepts for the first time. I'm more concerned about being able to find different, good metaphors to explain the same concept in different ways. That's where I fell short last time I tried to teach someone. I wonder if there's a course somewhere that teaches how to think like that :) I am very motivated to learn, and while I do so, I will try my best to at least not turn  these people off programming forever...!! (No pressure.) I suspect there are some things about teaching, that you can only learn while doing it. Don't take my word for it just yet, though ;)

Any tip, advice, suggestion or word of encouragement very much appreciated! I will post the material I'm using after Wednesday, once I get a better idea of what actually fits in one session.

links

social