Gas station without pumps

2012 January 18

Teaching is not quite like programming

Filed under: Uncategorized — gasstationwithoutpumps @ 23:39
Tags: , , ,

In one of the comments at Kitchen Table Math, the sequel, SteveH compared teaching students to programming.  In particular, he was railing against holistic evaluations:

If students can do a complex task, that really only means that they can do that one problem, no matter how much understanding is applied. If they can’t, it’s very difficult to find the gap or problem in understanding. It reminds me of unit testing versus system testing in programing. Testing doesn’t start at the “authentic” system level. You might define tests that work, but you will never properly exercise the code.

For any complex system, you have to validate the parts before you put them together to test and validate the whole. For education, you have to validate that students have mastered basic skills before letting them loose on complex “authentic” or real world problems.

This analogy seemed pretty reasonable at first, so I thought about how in interacts with my own assessment methods.  I’m usually dealing with students at a fairly advanced level, and there is no way that I could assess them on all the basic skills they are supposed to have acquired over the preceding 16 years of their education.  The new skills I want them to develop are layered on top of the writing, math, biology, and programming skills and knowledge they are supposed to already have.  I can test some of the new skills incrementally (and I do to some extent, having usually 6 programs of gradually increasing difficulty, plus a couple of papers), but most of the problems I uncover tend to be underlying problems in their previous training.

I disagree with him that evaluating a complex task results in only one bit of information (they can or can’t do it).  The complex task produces a complex output that can be debugged—though not always easily. So my teaching and assessment is often more like debugging someone else’s poorly tested and undocumented library.  I can’t write unit tests for everything in the library—I can’t even figure out what is in the library, but I can look for errors in the output and try to trace them back to their sources. That is why it takes me forever to grade programs or papers—I’m not doing a pass/no-pass assessment, but attempting to debug the underlying thought processes of the person. Like all debugging tasks, it is difficult and the first guess at the problem is usually wrong.

I would love it if the students I taught had all been excellently educated and I knew precisely what their skills were (like tested and documented libraries).  But that is a fantasy world.  Every one of my students comes in with a different skill set, often with great strengths in some areas and unexpected holes in others. Part of my job is to try to identify some of those holes and point them out to the students, so that they can patch them up. Another part is to help them build new capabilities on top of what they already have.

1 Comment »

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: