[Edu-sig] more card play

kirby urner kirby.urner at gmail.com
Wed Nov 4 09:06:19 CET 2009


On Tue, Nov 3, 2009 at 6:37 PM, Edward Cherlin <echerlin at gmail.com> wrote:
> On Mon, Nov 2, 2009 at 22:20, Laura Creighton <lac at openend.se> wrote:
>> In a message of Mon, 02 Nov 2009 20:27:35 PST, Edward Cherlin writes:
>>>Cards: You are right on the merits for combinatory math, but you will
>>>run into strong cultural aversions.
>>
>> Why?  Especially when _dice_ seem to be the preferred way to teach
>> this stuff?  (Or is this only here?)
>
> I'm including the rest of the world, not just the US. I expect issues
> to be raised by Evangelical Christians, Muslims and others in various
> countries. Dice might be easier, because casting lots is mentioned
> with approval in the Bible. Certainly we can come up with equipment
> that is not associated with common taboos.
>

The goal is not just to teach combinatorics but an object oriented way
of modeling stuff.

What's attractive about using a deck of playing cards, per my recent
examples, is you might have a Card class, a Deck class, and a Hand
class (i.e. what each player has in her or his possession).

This is a fairly rich environment in that sense, whereas just grabbing
stones from a bag or rolling dice is a little bit too simple.

The main reasons I flashed on Tarot were two fold:

(a)  I was thinking about cards with no obvious ranking (cardinality
vs. ordinality), i.e. the __lt__, __gt__, __eq__ interface would be
missing and

(b) I'm always looking for opportunities to be verbose with text, to
get away from the misconception or prejudice that computer programming
always means something like "number crunching"

However, on further consideration, I see that (a) is incorrect and
that most Tarot decks are very much the precursor of our ordinary
decks of today, with suits and numbers i.e. ranking.  I used to know
that, but had forgotten (I'm not big into Tarot, nor astrology
either).

Regarding (b), I really hadn't thought it through.  I was thinking of
funny Madlib templates but more like horoscopes, divinations about the
future that might be fun to write, not just read.

Probably in the back of my mind was the fact that I'd already
implemented throwing the I Ching as a Google App Engine.  That was
more about testing out Unicode than it was about divination, although
I was careful to have the code mirror the actual process (I consulted
an expert) i.e. I didn't just grab two hexagrams at random in one line
of code.  There's more to it.

In any case, I'm enjoying the background information on Tarot I'm
getting from Wikipedia and places, but have no immediate plans to head
off in that direction in my examples.

The standard deck of 52 plus two jokers is sufficient for my purposes
(including jokers or wild cards is actually a challenge I haven't
addressed yet).

What I'm liking about playing card examples, aside from talking about
combinatorics, is the fairly rich environment in terms of having these
different types of object:  a Deck, a Card, and a Hand (what each
player has).  This gets into refactoring, adding new methods, thinking
through some of the modeling issues.

Just grabbing stones from a bag doesn't have this level of richness
(but could, if we built a context around it).

For those wishing to eschew any focus on playing cards for religious
reasons, I'm certain equally rich (yet familiar and relatively simple)
examples might easily be devised.

We could brainstorm some more of these OO-friendly environments here
on this list, complete with coding examples.

One thing I want to get away from is the ultra-dry traditional
computer science text that lavishes so much attention on "widgets" or
"parts in inventory" with not much imaginative texture.  I'm trying to
weave OO into a more Liberal Artsy approach, where we digress in the
sense of criss-crossing other disciplines.

I'm a big believer in more curriculum integration, less deliberate
compartmentation.

For example, in talking about methods and attributes, I think many
kids would appreciate having Monsters, Mythical Beings, Superheros to
focus on -- the stuff of comic books and movies, also computer games.
More like a MUD (multi-user domain), including in being text-based
(more lexical than graphical -- because we're learning to code and
think logically, not to draw like a pro).

Why not learn or at least reinforce Greek Mythology this way, mixing
stories with a little dot notation?  Instead of just going Foo and
Bar, we could have Hercules = Mortal(), Hercules.clean_stables() or
something along those lines.

Simple environments might include not just games, but establishments,
institutions: like an Art Gallery, Restaurant, Theater, Airport...
Village.  What types of objects do these have and how do they relate
to one another?

We've often seen textbook examples talking about a school, classrooms,
grades.  I'd like to get away from that (over-used, too stultifying).

Probably what's driving my thinking here, at least in part, is some of
my writing for DemocracyLab.org.  This think tank is/was trying to
come up with "democracy engines" that would allow groups of people to
relate policy proposals to underlying values.

There was also some talk of a "village in a box" design, i.e. you
could set up a small community and install this open source software,
and get all sorts of roles predefined, along with a bunch of processes
for running town meetings, polling, voting, keeping track of food
stores, managing imports / exports....

Fun science fiction if nothing else, plus it gives students a context,
a way of bringing a community into focus and thinking in an OO style
about it.

Legitimate exercise, not for everyone, but not every exercise needs to
be:  "Specify likely attributes (properties) and methods (behaviors)
for the following classes, provide comments:  Casket, Plot, Headstone,
Corpse... Cemetery"

You may think I'm just being facetious or trying to be Gothic, however
I'm thinking of two real world experiences:

1. teaching high school in Jersey City, at a Catholic academy for
girls, and asking my students to devise business cards for themselves
as they imagine they might have when they were full-fledged adults
with careers.  One of my students came back with Funeral Director, and
she wasn't joking, lots of families in Jersey City were actually
involved in that business

2. a student in middle school in Italy, my dad the urban planner
coming in to talk about his job and unfurling large city maps showing
zoning, some big green areas around town.  "Not parks, not golf
courses... what do you think these are?" he asked, and none of us got
the right answer (which I'm sure you're able to get, given the present
context).

Thinking in an OO style, about *everything*, is a useful way to go.  A
kind of "language immersion" approach, like some schools do with
Japanese or Spanish....

Kirby

>
>
>
> --
> 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/
>


More information about the Edu-sig mailing list