I wanted to show you something strange but wonderful; a course on C
programming taught via email. It's run on an open mailing list hosted by
the linuxchix group, which (as the name implies) is devoted to
encouraging women to get involved with Linux. I don't often hang out
with "women in computing" groups, but when I do, this type of thing is
why; they tend to create an environment and use a pedagogy that I
personally find very comfortable, though I'm hard-pressed to articulate
precisely why at 2:15am. I will try, though.
Let's look at a specific email (the one that just hit my inbox -- I'm
literally picking a random sample). Take a look at
http://mailman.linuxchix.org/pipermail/courses/2012-April/003024.html.
This is probably the best course I have ever seen on
C, and one of the best I've ever seen as an intro to programming. In
fact, I think this is the only C course I've ever seen that is a *good*
intro to programming -- there are some genuine coding novices in the
audience who seem to be making it through. (We'll leave aside my own
painful experiences in C/C++ as first languages for now, or I'll start
telling bitter stories of frustration.)
It does a bunch of things right, which I think you can see in the email
forwarded below, even if it's taken out of context. Let me point out a
few, in order of appearance.
* Points to optional external resources
* Deals with the emotional component of learning ("don't let the
buzzards discourage you")
* Includes "old hand" tales that make certain kinds of practitioners'
knowledge tacit, AFTER they appear in context; by this point in the
course, multiple (other) people have run across mention of "C99" and
asked questions about it, or discussed C99 flags, or explained various
aspects of it... so when the synthesis of "here's what C99 means" comes,
it makes sense, and I'm motivated to read it because it makes all that
(previously incoherent and thus inactivated) conversation click into
place for me.
* Encourages (and celebrates!) more experienced community members in
helping newcomers along -- "Jacinta and Akkana give
excellent advice." Carla acts almost entirely as a facilitator
constantly devoted to moving the class forward, and everyone can be a
teacher and a student, moving back and forth between roles as they
please. (I've done both during the course so far.)
* (Not very obvious in this email, but) all questions and answers happen
on the same mailing list: novice questions and more complex questions,
helpful answers and not-so-helpful/snarky/obfuscated ones. Less-helpful
answers are themselves analyzed and corrected so newcomers learn how to
recognize answer quality and how to gently but firmly correct answers
while still being sensitive and tactful within the discussion.
* Then there's what most folks would call "the lesson," even if the
entire thing here is the lesson... (in any case, this is the part that's
recognizable as "conventional pedagogy.") The ratio of "lesson" to the
entire actual-lesson is instructive.
* Customizable homework that uses concrete examples from everyday life.
Note that the homework here is even "donated" by a fellow course member
(not the workshop organizer!)
All in all, it's a lovely little example of how a group of time-crunched
folks set up a safe environment for cognitive apprenticeship with
minimal infrastructure. I'm amazed at what we've been able to cover,
learn, and do with so little -- and think the minimalism and simplicity
is probably key to its success.
What lessons can we borrow from this?
--
Mel Chua
m...@purdue.edu
PhD student, Open Source & Education focus
Purdue University, Dept. of Engineering Education