[Edu-sig] Python for Beginners
kirby.urner at gmail.com
Thu May 22 19:37:34 CEST 2008
At one time in my life I played with the prospect of becoming an
airport manager, to the point of buying some expensive books (OK one
book) on the subject and reading up in Florida (Bradenton, Golf Lakes
Estates), between other jobs.
I do like the postit metaphor, but have trouble visualizing going
around a busy airport putting post-its on ticket counters, security
apparatus, flight attendants, and not getting in trouble.
On the other hand, with a textbook open, an airport depicted, I'm very
used to pointers in the sense of arrows, usually labeled, call them
tags or handles. Anatomy books, same thing, pointers to ribosomes,
close-ups of DNA or whatever.
So just to use our own OO jargon, I'd say sticky post-its are a
subclass of the tag or handle concept. Descending the same tree along
other branches, we get to my dog leash metaphor (the first ring of
which came from a coffee cup (another idea of "a variable") in some
"Youtoon" awhile back).
Back to the airport, what we want students to realize is that multiple
namespaces might be about the same complex institution or knowledge
domain, but hey, we *don't* want to import all this complexity
willy-nilly, but with an eye towards getting very specific work done.
Namespaces are *designed* (more or less intelligently) for a specific
*purpose*. They're the antithesis or random inventories of stuff, in
And keep in mind what namespaces map: not just static data. You can
fire up a jet engine, switch on the radar, start and stop elevators.
A namespace is like some Lawn Mower Man fantasy, except in a more
manageable and sustainable form. Yes it's about control, we're not
apologetic about that. Engineering is engineering in that respect.
So in one namespace it's all about baggage handling, in another all
about queuing in ticket lanes, in another all about food services
along the concourse, surveillance cameras (who's pigging out) --
haven't even mentioned the airplanes yet, or the runways. So many
This gets across to the beginner that we're free to tag as we please,
going into a situation, and there's nothing illogical or inherently
confusing about multiple namespaces using the same objects
concurrently. That's how we work in the real world as human beings:
as players operating in parallel within a shared environment.
OO (an invention, a style of thinking) has always been about letting
us think naturally, in ways already familiar to us, independently of
any computer or science.
We need to think about threads within processes on a given computer,
sure, but also about concurrency within our respective knowledge
domains, and this idea of many namespaces sharing access to a busy
airport, each supporting a point of view, or job description, is going
to help with many a future programming challenge.
On Thu, May 22, 2008 at 9:15 AM, Winston Wolff
<winstonwolff at cal.berkeley.edu> wrote:
> Using the post-it note metaphor, it might be better to say:
> x = y is the same as creating a new bookmark called "x" which represents "y"
> On May 21, 2008, at 9:13 PM, kirby urner wrote:
>> x = y involves "emailing" an URL from y to x, setting up a second
>> alias. Recipient x now has a copy of the same URL as y, but no website
>> got copied.
> Winston Wolff
> Stratolab - Kids exploring computers, comics, and robots
> (646) 827-2242 - http://stratolab.com
More information about the Edu-sig