Friday, August 04, 2006

Python Pedagogy


From today's edu-sig, typo fixed:



I don't know if I'm the first to think of this, but there's some obvious imagery to employ when teaching about the built-in overloadable Python methods, as a bridge to classes in general: they look like ribs.

Think of a Snake:

class Snake:
__rib__
__rib__
__rib__
__rib__
__rib__
__rib__

But the connotations run deeper. The ribs join to a backbone, which is where a lot of low level reflexes get wired, which is what built-in methods do (react as callables). So we're really building up this class/creature metaphor at the "ascii art" level, as well as conceptually: a strong mnemonic, a cornucopia of relevant associations.

Finally, there's a move characteristic of the Bucky-informed brands: we associate ribs with eaves (pun), the idea of a ceiling: on a boat flipped over. Boats are the original hulls (of sea peoples anyway), but brought up on land, and flipped over, they become houses.[1]

You may recall "the home" (as a paradigm class) is a another core feature of my emerging Pythonic pedagogy -- except we'll be branching out into DwellingMachines(maybe as a subclass of a common ancestor).[2]

Kirby

[1] R. Buckminster Fuller, Tetrascroll: A Cosmic Fairy Tale

[2] """
I think using the home as a paradigm class is propitious, as there's lots of implied complexity, especially once HVAC and AC/DC become a focus (lots of APIs). You have the media room, the pantry, the scullery -- the whole pattern language of places. The Sims gives us visuals. OO gives us implementations.
"""

http://mail.python.org/pipermail/edu-sig/2006-May/006543.html

[Edu-sig] More OO chatter from the Edubuntu box kirby urner kirby.urner at gmail.com Mon May 29 22:32:00 CEST 2006