[Edu-sig] demented Python...

kirby urner kirby.urner at gmail.com
Sun Apr 3 19:24:50 CEST 2011


>
>
> Spaceghost Coast-to-Coast
> Sealab 2021
> Harvey Birdman, Attorney at Law
> Invader Zim
> South Park
>

Team America:  World Police (by South Park Studios -- quite demented)


> The Simpsons
> Futurama
> Family Guy
>

American Dad also a favorite


> Huri-kuri
> Suupaa Miruku Chan (Super Milk Chan)
> Bobobo-bo-bobobo
> Urusai Yatsura
> and, as you say, ..., in a tradition going back to Aristophanes, and
> to distant prehistory.
>

And a way of teaching that helps some people (more than
others maybe) in part because of the resonance with
very youthful experience (relearning about body fluids,
"grossology"), and in part because of the hard-to-forget
imagery (Hieronymus Bosch is also somewhat demented).

'The Art of Memory' by Francis Yates and related tomes
draws many links between mnemonics and making an
impression through the arts.  This hermetic tradition has
fed into memetics and advertising (PR, propaganda),
as well as spatial data management GUIs.

I'd say we're at the other end of the spectrum from a
lot of engineering pedagogy however, which seeks the
least offensive, abstract, diagrammatic and/or neutral
tones.  The hallmark of a Springer-Verlag publication is
to be scrubbed clean of anything too quirky.

My paradigm Snake class, with its eat and poop methods,
is already too scatological for "serious adult" learning
according to many publishing codes.

A workaround (sometimes) when working with adults
in a workshop setting, is to say "this is what tends to
work with younger kids" (not a lie), at which point they
give themselves more permission to get into it, from
the safe distance of using curriculum materials intended
for a different audience, not for them.

I've seen my use of Madlibs as a way of doing string
substitution spread to other campuses.  String substitution
is the basis of templating, such as when outputting web
pages or other "driver" codes such as scene description
language (POV-Ray) or VRML / x3d (still under utilized
in high schools, thanks to the absence of a real digital
math track).

Behind the scenes, you may look at the megatrend of
"biological computation" becoming respectable talk in
complexity science (dynamical systems, chaos, Santa
Fe Institute) which is rather well established here in
Portland as well, through Portland State's "systems"
degree program.

When ant hills, immune systems, reproducing animals,
are identified as "computational" in nature, you start to
get more of a cross (hybrid) between metallic science
(metallurgy, silicon) and what we might call "slime"
(collagen).  The feng shui or alchemy among the disciplines
is always shifting.

It's what's happening in medical science more generally, with
more prosthetics and implants, more combinations of
biological and synthetic / electronic.

A movie that deliberately mixes computer and biological aspects
of life (playing up the "grossology") is the (quite demented)
'eXistenZ'.  I kept remarking on that film in a recent staff
meeting.

It wouldn't surprise me if the computer curriculum drifted more
into this life sciences vein in part because of the accessibility of
CA (cellular automata) to beginners, starting with the Game of
Life (of course) and Wolfram's NKS type algorithms (easy to
implement and get somewhat grandiose about, but in
academically respectable ways).

The popularity of the 'Sims' genre is another draw.  Each Sim
is an object, yet there are clear templates (classes) involved.
'Spore' is another one.  Genetic algorithms, agent-based search
strategies... lots of concurrency and parallelism.

I feel I have a somewhat front row seat on these issues given
I'm tutoring someone in the PSU systems department in Python,
work for an outfit connected to Wolfram's, and have a history
with this "demented cartoons" as pedagogical meme (traces
to Mad Magazine and underground comics, not just TV of
course).

Portland is a center for this kind of animation as well (at least
culturally).  Bill Plympton is from around here, as is Matt Groening.

http://en.wikipedia.org/wiki/Bill_Plympton
http://en.wikipedia.org/wiki/Matt_Groening

Here's some typical "chaos Python" with overt ties to PSU's
curriculum, where Melanie is currently on faculty:

http://www.flickr.com/photos/17157315@N00/5583591181/in/set-72157625646071793/
http://www.flickr.com/photos/17157315@N00/5583936921/in/set-72157625646071793/

I've also sought to make the "cartoony" aspects of Python
come more alive in the "person" of the PSF snake, a stuffed
animal totem.  She is developing a character and a history.

She's a somewhat rough, street wise, earthy, good natured
old girl, who may not always know who the father is (true
in the case of Adonis at least, probably that python in
Florida, although he looks a lot like a cobra...)

http://www.flickr.com/photos/17157315@N00/5584177622/in/photostream/
http://www.flickr.com/photos/17157315@N00/5583588365/in/photostream/
http://www.flickr.com/photos/17157315@N00/3988841020/in/photostream/

Kirby


> Saw a flea
> Kick a tree,
> Fubba-wubba
> Fubba-wubba.
> Saw a flea
> kick a tree,
> Fubba-wubba John.
> Saw a flea
> Kick a tree
> In the middle
> of the sea,
> Singin' Old Blind Drunk John,
> Fubba-wubba John.
>
> > (see clips on Youtube for any/all)
> > Synonyms for demented:  zany, surreal
> > Relevant:  links to "grossology" in EuroPython
> > presentation:
> > http://www.4dsolutions.net/presentations/connectingthedots.pdf
> > (see string.Template Mad Libs)
> > Likewise, Demented Python serves a didactic function,
> > here to remind about the decorator:
> > def sillystrip( f ):
> >     if f.__doc__:
> >         f.__doc__ = "Your function has been hacked!"
> >     else:
> >         f.__doc__ = "You should always have a docstring."
> >     return f
> > @sillystrip
> > def square( x ):
> >     """could also be a triangle"""
> >     return x * x
> > def _test():
> >     frank = 2
> >     joe = square (frank)  # frank is kinda square
> >     print("Hello Joe, Frank here.")
> >     print(square.__doc__)
> >
> > if __name__ == "__main__":
> >     _test()
> >
> > Usage:
> >>>> ================================ RESTART
> >>>> ================================
> >>>>
> > Hello Joe, Frank here.
> > Your function has been hacked!
> > Then comment out the docstring in the def of square.
> >>>> ================================ RESTART
> >>>> ================================
> >>>>
> > Hello Joe, Frank here.
> > You should always have a docstring.
>
> Defensive programming:
> <Pseudocode>
> Case: True:...
> Case: False:...
> Else: Print("This can't happen.")
> </>
>

I actually see quite a bit of this design pattern in
beginning programs:

if a < b:

elif a > b:

elif a == b:

else:

-- though it's often a try/except that might be
more realistic, e.g. complex numbers don't have
ordering, just equality, making them more nominal
than ordinal in some ways (though subsets
may be ordered, and | c | will define equivalence
classes.

> _______________________________________________
> > Edu-sig mailing list
> > Edu-sig at python.org
> > http://mail.python.org/mailman/listinfo/edu-sig
>
>
>
> --
> Edward Mokurai (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) Cherlin
> Silent Thunder is my name, and Children are my nation.
> The Cosmos is my dwelling place, the Truth my destination.
> http://www.earthtreasury.org/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/edu-sig/attachments/20110403/bab82646/attachment.html>


More information about the Edu-sig mailing list