[Edu-sig] Getting it going
Kirby Urner
pdx4d@teleport.com
Thu, 03 Feb 2000 09:36:24 -0800
Greetings folks --
I too am one of the early posters in the February chapter.
In case you missed what I wrote, and are curious, here's
the URL:
http://www.python.org/pipermail/edu-sig/2000-February/000003.html
Part of what I like about Python is how easy it is to get
right into object oriented thinking, without getting bogged
down in a lot of constructs. I like what they say about it
being "working pseudo-code".
I think the "object" style is highly useful because of how
it encourages us to think in real world terms.
We're already naturally conditioned to view our reality in
terms of systems with insides and outsides (like bodies).
Inside, you have the encapsulated "guts" (data and methods),
the "under the hood workings". And only "trained mechanics"
or "authorized personnel" (aka the programmer-owner of the
objects) needs to tinker with the guts. The user (of the
object) just needs an interface (dashboard, controls, cockpit,
API).
So I'm quite excited by the potential of a language like
Python to communicate to younger kids:
(a) what's actually meant by the term "object oriented"
(rescue it from buzzword status) and
(b) how this could be a useful paradigm for you too --
when it comes to diagramming a large challenge, even
before you start thinking about coding
I work to communicate my excitement about object-oriented
thinking, and it's potential to impact early math learning,
in the following paper (you'll see Python mentioned):
http://www.inetarena.com/~pdx4d/ocn/trends2000.html
You'll see in the above paper that my other passion is
polyhedra. As a geometry teacher, I'm seeing great promise
in linking early ideas about "object oriented programming"
to polyhedra as "paradigm objects". Why? Because all
polyhedra rotate, translate, scale, and consist of points,
edges and faces. So we can put these generic methods and
data structures in the superclass (Poly) and then subclass
Poly to get the various shapes we want to further specify.
And polys are great because they drag in so many topics
already near and dear to any math teacher's heart:
coordinate geometry, trig ops, matrix ops, vectors,
rotational symmetry, lattices, sphere packing, volume
-- all the things any math savvy kid should know about.
Plus there's buy in from students, because spatial
geometry is, after all, the segue into computer games,
animations and so on (I support the CP4E concept of
roping in Alice -- a package I've tinkered with only a
little (my approach so far has been to use the Povray
ray tracer (freeware) and VRML as target "back ends")).
Applying the OOP model to Polys, using Python, is exactly
what I've done (source code available) at:
http://www.inetarena.com/~pdx4d/ocn/oop7.html
Kirby
Curriculum writer
Oregon Curriculum Network
http://www.inetarena.com/~pdx4d/ocn/