[Edu-sig] Re: [synergeo] more chatter re OOP + PolyGeom

Kirby Urner pdx4d@teleport.com
Wed, 10 May 2000 08:32:09 -0700


>Although I don't know the programs you are discussing I do 
>love geometry and I will look into them further.

Your example of using Logo and geoboards to teach geometry
sounds closest to what I'm doing -- using a different 
language, Python, free and cross-platform, and rapidly 
gaining in popularity.[1]

One of my goals is to explore the mysteries of "object
oriented programming" (what's that all about?) even as 
we study vectors and polyhedra (as paradigm "objects" 
-- in both the OOP _and_ conventional senses).[2]

In "math through programming", we don't try to teach how
to write full-blown applications, or how to write robust 
code for the general public.  

It's more like moving to the next step beyond a calculator, 
where you're freed from many constraints -- including 
freed from the XY plane (we have full XYZ rendering here).

Plus you can study algorithms that are alpha-based, not 
just numeric, but still logical/rigorous enough to be 
interesting to mathematics.

I think the object oriented paradigm brings interesting
perspective to many mathematical concepts, so in introducing
it to math ed, I'm not so much straying far afield as I
am cross-pollinating to develop promising new strains 
of computer-savvy math curricula.

Python also helps formalize the notion of a "namespace",
which is basically a dictionary of key terms.  This is useful 
in math education because we often see the same key terms 
used in different contexts (e.g. "dimension"). The idea of 
"namespace" (developed in a hands-on environment) helps 
reinforce the idea of "context".

Speaking of geoboards, and freedom from the XY plane, my 
curriculum gets into sphere packing much earlier than is 
typical (K-12 is currently devoid of sphere packing).  
My polyhedra get "tuned in" within this sphere packing 
matrix or lattice (ccp).[3]  For example, four intertangent 
ccp spheres define a tetrahedron. This is my geoboard, 
in other words, and you can slice through it to get 
both triangular and square planar packings.

Which gets me back to Logo:  I introduce "random walks 
in the matrix" using the idea of a "sea turtle" (swims 
omnidirectionally).  A turtle constrained to move from 
sphere center to sphere center in the ccp has 12 directions 
to choose from at each turn.  

Four such turtles, all taking off from the origin and 
randomly swimming [for] awhile, will end up defining the 
corners of some random tetrahedron with ccp vertices.  
Turns out _all_ such tetrahedra have a whole number volume, 
_if_ we count the original ccp tetrahedron (defined by 
four intertangent matrix spheres) as "unit volume".[4]

I would have my students note that "turtle" and "matrix" 
both have other uses.  Their meaning here is relative to 
a "namespace" (again, thanks to Guido and his "snake 
language" for bringing "namespace" and "dictionary" into 
such close proximity -- very useful in math ed as well).[5]

Kirby

[1] http://noframes.linuxjournal.com/lj-issues/issue73/lstoc.html
[2] http://www.inetarena.com/~pdx4d/ocn/cp4e.html
[3] http://www.chem.ox.ac.uk/icl/heyes/structure_of_solids/Lecture1/Lec1.html
[4] http://www.inetarena.com/~pdx4d/ocn/numeracy4.html
[5] Python is actually named for "Monty Python" -- but the O'Reilley
    book has a snake on the cover, plus in Windows we get a little
    snake icon for all the .py files.  So there's plenty of room to
    develop snake aesthetics in tandem with all the other silliness.