One of the things I’m coming to grips with is my own limitations in my field. As I learn more, I’m more aware than ever of how much there is to know. There are literally hundreds of programming languages and there are probably ten or so that are used on a regular basis “out there.” And then, if you have to incorporate the even broader field of IT/general technology, there are thousands of applications, concepts, etc. Maybe millions. There’s no way to know all of it. Some of it is very specialized, used only in particular contexts. There’s no reason to know how to use some things or use some languages unless you do some particular thing. I try to focus on foundations, on concepts, as opposed to learning a particular language or application (though I do often teach those concepts through a particular language or application).
Today I met with my “Creative Computing” club. We spent the first part of the year working with a student from a nearby college learning how to program robots. We only had about 6 weeks of that (we meet every other week), and it looks like we might be without our student for the spring semester. So I asked the students what they wanted the rest of their year to look like.
Now, my agenda for this club is to introduct students to computer science concepts very early on. They get some programming in 8th grade, but this is an opportunity to explore different types of programming and/or programming in a different context and without a grade hanging over your head. I could have come up with a plan, but this is a club, after all, and so I thought student input would be good. I got everything from Lego Robots to Maya to Photoshop to animation. Half of what they brought up was a) not really computer science-y and b) stuff I knew nothing about.
It kind of gave me pause when I thought about all that I’m sort of semi-expected to know. 3-D modelling? the ins and outs of image editing? building robots? Some of it I want to know more about, but some it, I just have no desire to learn (3-D modelling, for instance). Mainly, it’s because I have no desire to know 50 different things, but not be able to do any of them well. I’d like to know maybe 5 things pretty darn well. I’m always willing to learn new things, but I have my limits.
I have to teach what I know, and just keep learning, figuring out what I need to know and need to pass on to my students.
As for my current students, I’m figuring out a way to mush their interests in with what I know–it should work out well. One thing we all agreed on was that we wanted to create a web site, maybe even a blog. Now that’s something I know how to do (and teach).