Archive for November 2, 2010

First things aren’t always first

When I was a graduate student at the University of Michigan, I worked with Pat Baggett and Bob Kozma in the School of Education. Both of whom were interested in the human ability to make sense of knowledge presented, even when it wasn’t in the right order. Pat would give study participants instructions on assembling a complicated gadget, and she had to really struggle to juggle the instructions such that participants couldn’t assemble the gadget easily. Bob had explored teaching mathematics lessons “out of order,” and students still figured it out. People are really good at filling in gaps and remembering things to be completed later. It may slow them down, but the self-integrated knowledge is likely to be learned well — it will transfer.

So that’s why I think that some of the “But first we have to…” statements I’ve been hearing lately don’t give students the credit they deserve.

“To program, students have to use the computer well. So FIRST, we should teach them applications and keyboarding skills.”

I hear this a lot from high school teachers who are moving from being Business teachers (e.g., Office applications, databases) to becoming Computer Science teachers. They argue that students won’t be able to program until they are facile with the keyboard and basic copy-paste functionality. That’s why it makes sense to teach students applications first — which is what they are the most comfortable with teaching.

Sure, programmers are good with computers, but the order of events is backwards from what the teachers expect. Programmers BECOME good with computer basics, like keyboarding and applications. No programmer I know went out to learn Word and Excel first, in order to be a better programmer.

“To do Media Computation well, students need to learn Python. So FIRST, we should teach them five weeks of Python basics, then start into media manipulation.”

I hear this one from CS1 teachers who want to try Media Computation (or really, any other contextualized approach), but want to do it as an add-on. Sure, it’ll work that way, but it’s not necessary. The whole point of the context is to explain a purpose for learning variables, expressions, conditionals, and iteration structures. It’s not the only purpose. But it is a purpose, and there are several studies showing that that’s the problem that students face when meeting introductory computing. It’s so hard and complicated — so why do it? Doing five weeks of Python, and then starting Media Computation, is holding out the carrot — but so far out of reach that it’s irrelevant.

The part that’s challenging for teachers to recognize is that students can learn the details while learning the context. These things can happen in parallel. It isn’t necessary to have perfect knowledge of variables first. It’s okay to know something, and then pitch in and get started. The rest comes as it’s needed. Sometimes, the first things don’t have to come first.

November 2, 2010 at 1:19 pm 13 comments

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 10,184 other subscribers


Recent Posts

Blog Stats

  • 2,049,319 hits
November 2010

CS Teaching Tips