One of the things that has happened over the last few years is that I have learned what I needed on a just in time basis. That is to say that rather than trying to learn everything or even as much as possible about something I have learned what I needed to know when I have needed to know it for a specific project. It’s worked ok for me because I am good a looking things up. And, perhaps more importantly, I have a wide background that lets me make sense of information that often assumes a good bit of prior knowledge. I’ve had to learn a little about far too many things over the last nine years to get as deep in anything as I might have liked. These days in the classroom this method of learning is showing up some holes in my knowledge.
A classroom of 12 to 15 students such as I have in my programming classes (yes I know I am very lucky to have small classes) can easily come up with questions that go beyond the knowledge I have at the time. There are several ways to handle that situation. The one inexcusable one is to tell students to forget about it because if is “not in the curriculum.” Generally I go with one of two options: Tell the student to read the help or look it up and teach it to the whole class.
It’s hard to say which one is the best way to go and there are pros and cons to each. Students tend to learn something they are forced to look up very well. Unless that is they become too frustrated to continue. I’m not a big fan of frustrating students. I am a fan of them learning on their own though. So looking for the balance is important. I feel an obligation to help students before the frustration gets to the “I give up” point.
Looking it up for students is often a good way to go when the question is likely to be of interest to the whole class. If the result is more interesting projects and more engaged students it can be a big win for the class. Yes it takes some time for the teacher but that is seldom a reason to not do something. The advantage for the teacher is great. Not only do they make the class more interesting but they, the teacher, also learn things that they can use later. It gives a teacher a chance to model life long learning for one thing. The process of taking information that is often incomplete, must be assembled from multiple sources and/or phrased in ways that are opaque to students forces (aids?) the teacher in gaining a better understanding of the concepts and processes involved.
So far I have gone the “look it up in the help” route a couple of times and the “I’ll look that up for you” route several times. Today for example I helped my C# students learn how to use the SpriteBatch.DrawString method in XNA so that they could display scores on their Pong games. Slightly embarrassed to admit that I had to look it up first but that’s life.
The reason I looked it up and presented it to the students was because I did not want them to spend a lot of time figuring it out on their own. I have no doubt that most of them could have done so but some of them would have taken a while. Rather I wanted them to focus on the process of writing the code to keep score. That involved more concepts that were core to what I need them to learn and that have more general applicability in the long run. Besides they can use this in many programs later on. If it was something that was optional or not easily reusable or only one or two students needed it (for some definition of “need”) I might have gone a different route.
As for me I now have a handout that is reusable, an understanding of the DrawString method that will serve me in good stead going forward, AND a more engaged group of students. Win win all around.