A while back, I went on a little rant about how CS students don’t learn how to read and critique code, and that because of this, they’re missing out on a huge opportunity for learning. They’re not exercising their abilities to comprehend other people’s code.
But let’s step back for a second. Forget code for a minute, and let’s just think about reading in general.
Check out this article that Greg Wilson forwarded to Zuzel and I.
The take home message: reading is not a skill that can be sharpened in a vacuum. One of the keys to increasing reading comprehension is to increase the variety of reading material to practice with. This will help build the foundation needed to understand more sophisticated material.
Actually, this really doesn’t come as a surprise to me. In the Drama department, before diving into a new script, we are encouraged to briefly study the time period (slang, accents, and turns of phrase in particular) and the subject matter of the play. This builds a foundation of context, so that the script makes some sense the first time it is read. And the first time a script is read is very important, because for me, it lays down many of the assumptions that I carry throughout my time working with the play. Every subsequent reading of that play builds off of the first reading.
And have you ever read T.S. Elliot’s Wasteland? Good luck making sense of that unless you have a study guide, because that guy references a ton of stuff, and expects you to fill the gaps.
So let’s direct this back to reading source code.
Taking that article (and this video) under consideration, it seems that just slapping some code up on a projector, and getting people to talk about it might not be good enough.
Something like this might be a better idea: check out this post by Jason Montojo. If his CS art history course ever takes off, I’ll be first in line to sign up.
The idea of studying code as art is intruiging…maybe I’m not the only one who thinks of it like sculpture.