Python for Teachers (and Teachers of Teachers)

As a geek with Python kung fu, you have fun skills to share with others, including those still in high school and seeking to master mathematical concepts that will serve them for a life time. In taking this tutorial, you're opening a communications channel between yourself, and other eager learners hoping to partake more deeply of open source culture and the opportunities it offers.

We know from last year that many PyCon delegates are broadly interested in education track. This proposal attempts to support this demand by developing some publicly-accessible Python-related material that demonstrates how object-oriented programming be learned by using them to implement concepts from the mathematical domain.

Learning can take place at multiple levels:

  1. Python and object-oriented concepts.
  2. Mathematical concepts, which will be demonstrated in ways readily accessible to anyone who understands Python.
  3. Presentation of programming topics in the educational environment.

From this latter point of view the pair teaching format can be considered experimental. Its success or otherwise will be determined largely by group dynamics, and our goal is to make the outcome in and of itself provide useful empirical data helpful to others planning workshops.

Presenters

Kirby Urner, age 50, was born in Chicago and grew up overseas, before settling in Portland to work in the high technology sector. He has a philosophy degree from Princeton University, was a contributing editor for McGraw-Hill, served as a mathematics teacher St. Dominic Academy and prestigious high school for young women in Jersey City. He currently works in a small private sector company serving both public and private sector clients. Kirby is a single dad with two daughters, one grown, and one in high school.

Steve Holden, aged (mumble) has been fiddling with computers since the 1960s. He graduated in Computational Science from Leeds University and has spent a lifetime on programming projects. He took up Python about ten years ago as the most sensible implementation of object-oriented ideas he had come across. He has a son approaching 40, two cats, a six-month old pup and a wife but almost no life at all.

Requirements

Python 2.6, 3.0 preloaded, also POV-Ray, VPython, and PIL would be ideal, but not every participant is expected to dive in to equal degree on each topic, i.e. those just wanting to listen while browsing email, will balance those wishing to go whole hog into each and every exercise. skeleton code will be available in advance on the web, and will be updated after the presentation.

Class Outline

Math as Extensible Type System

Namespaces: Honk, honk!

Pythonic Types (Python's type system)

Math as Storytelling (e.g. Cryptonomicon)

Cryptography 101: RSA by senior year ('In Code')

Math Biota: more on

  • Integers Modulo N,
  • Vegetable Group Soup etc.
  • Euler's Theorem & Fermat's Little Theorem

The ASCII to Unicode transition: a big story of our era

Some Philosophical Remarks (why Python?)

Intermission

Working with Math Objects

Everything is a Snake in Python (thinking about __ribs__)

Fractals with PIL

Vectors and Polyhedra with VPython

Interlude (people help each other on projects)

Scene Descriptions with POV-Ray (Python as glue language)

Diamond

  • White Oak Technologies Inc. - Diamond

Platinum

  • Google - Platinum
  • Sun - Platinum

Gold

  • ESRI - Gold
  • CCP Games - Gold
  • Visual Numerics, Inc. - Gold
  • Microsoft - Gold
  • Slide.com - Gold
  • Walt Disney Animation Studios - Gold

Silver

  • PSC Group - Silver
  • Enthought - Silver
  • Canonical - Silver
  • Imaginary Landscape - Silver
  • Wingware - Silver
  • ITA Software - Silver
  • Accense - Silver
  • Resolver Systems - Silver
  • Leapfrog Online - Silver
  • Emma Email Marketing - Silver
  • ZeOmega - Silver
  • Oracle Technology Network - Silver
  • VMware - Silver
  • Tummy.com - Silver

Vendor I

  • O'Reilly - Vendor I
  • Informit - Pearson Publishing - Vendor I