I’ve been programming a long time. I wrote my first computer program in 1972. I think the parents of some of my students were not even born yet. So it’s hard to remember what it is like to be a beginner. Late last school year it finally occurred to me that a lot of my students understood concepts in theory but were having trouble knowing which concept to use to solve problems. Honestly this was having trouble sinking it with me because this stuff is so obvious to me.
Lauren Margulieux helped me out here with her recent blog post I’ve been a Computing Education Researcher for 8 Years and just took my First Programming Course: Here are 5 Things I Learned. This is a must read post for anyone who teaches beginners. One of her five things was “Deciding which programming concept to use was harder” Just what I had been thinking about lately. I think her experience, background, and ability to self-analyze her own learning helped her to see what I think are common beginner issues that I have had trouble seeing myself. Maybe other teachers have trouble seeing these things as well. Or maybe just me.
Suffice it to say, I have to really think about how to help students over these hurtles. Helping students to see when to use various concepts is my first priority. Stories maybe the answer. Can I tell stories about the sorts of things various concepts are good for. I do some of that already but maybe more examples will help. It’s worth a try.