Those of you frequenting this list for some years will recognize most of these themes. From time to time I like to archive a summary.
Principal themes: I. Math Objects (an approach to learning math) II. Objects First (an approach to learning programming) These two go hand-in-hand. Math Objects are traditional concepts such as polynomials, polyhedra, vectors, integers, treated as Types of Thing, i.e. we're making math concepts concrete by distilling the "things" or "types" people have invented over the centuries. One place to begin, familiar to computer science, is to differentiate alpha from numeric types. Objects First means taking the object-oriented philosophy seriously, meaning we're mining everyday (ordinary) human language semantics, wherein we already think in terms of named things (nouns) having behaviors (verbs) and attributes (adjectives). My curriculum anchors Objects (things) in the biological world of biota, animals, creatures, flora and fauna. Then we move to the more abstract types of object of interest in mathematics, polyhedra especially because these are also visible and tangible, forming a bridge to that biological world. Python is especially cool as an OO language because when building a biological creature as a template, one has these special names that look somewhat like __ribs__. The methods stack up providing a backbone or rack of ribs i.e. there's a visual analogy to a creature, a snake in particular, right in the language itself. The Objects First approach doesn't buy into the "ontogeny recapitulated phylogeny" ideology, by which I mean: just because programming languages evolved a certain way doesn't mean newcomers have to traverse the discipline in that same order. Regions new to telephony don't need to install land lines before they go with cell phones -- go straight to cell (straight to OO). Another theme: III. streamlining the teaching of spatial geometry I've separated this last theme out of the mix because it's what sets me apart more than the above and makes me a marginal figure, apparently off my rocker in some way. I passionately believe that we should be taking greater advantage of the streamlining done by the geodesic dome guy, Bucky Fuller, regarding how to compact a lot of geometric information into a compressed data structure he named the concentric hierarchy of polyhedra (meaning you include them inside each other, sort of like Russian dolls -- not a new idea, but the devil is in the details). I won't go into some verbose presentation of III in this post. However I do think when you move from calculators to full fledged computers, then it's time to get off the plane and start taking advantage of those much bigger and more colorful screens. So even if you're highly skeptical of the Bucky Fuller bit, you might stay with me on this notion the polyhedra and spatial geometry will naturally come into vogue as we move beyond calculators and start taking more advantage of computers. I've invested many years developing these ideas and presenting them in cogent form. The materials are open source and on the Internet. Again, it's III that makes me moves me into the "esoteric" category, where I start questioning only using a Euclidean set of axioms, start taking up a "geometry of lumps" and making all sorts of high level connections to Karl Menger (dimension theorist) and Ludwig Wittgenstein (philosopher). I also tend to get polemical, as a lot of positive futurism attaches here, and to the extent the world seems unnecessarily hellish, I get exercised about wasting already stockpiled assets that might make a big positive difference. I inherited this long-running campaign from an earlier generation and have a lot of loyalty to some of my mentors in this area, including but not limited to Bucky Fuller himself. Kirby _______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig