I really love what you did there and am wondering if you mind sharing some ideas on how to go about starting an initiative like this? How do you explain computer science concepts to students - things like classes, variables, etc? In essence, I would love to know more :)
Honestly, I don't really know. I've been trying to figure this out over the past couple of weeks and am starting to think that the answer to how to teach some of those things is not to (or at least not from the start). When I look at all the knowledge I have built up over the past 10-15 years, it's kind of overwhelming to attempt to identify a place to start. But when I think about how I got started programming, it was much more organic. I saw little bits of code around the web that did something that interested me, and then I just played with it to see if I could get it to do something slightly different. In the process I certainly learned about things like variables, logical constructs, loops, etc., but it wasn't until later years (and after firmly solidifying my interest) that I started a more formalized education in computer science.
Most of the students are very interested in writing mobile apps. While I would love to jump right into that, I don't know if we would get very far in one hour a week. So currently I'm just trying to provide some "exercises" that let them get their hands dirty with programming and maybe lead them in the right direction towards the type of programs that they are interested in writing. Then on their own time they can pursue things further, and I'm always available to answer questions or help solve problems they run into.
I agree with you. Thinking back about how I started, I only started really getting into programming in university. However, my main motivation back then was to make video games. In my early teens, I learned the basics of HTML and JS to do weird things on the web and that completely fascinated me. So I think you're right that the formalized education stuff shouldn't be taught directly. In fact, I wonder if it should even be taught at all at such an early stage. It sorta kills the fun of discovery how to do things with code.
It's not a direct answer to your question, but a while back I ran across http://www.introtopython.org/ which in a beginners introduction to programming using Python as the first language. It has a github project[1] full of IPython notebooks used in the course.