Tuesday, July 22, 2008

A Python Project

classic slot machine
Of paradigmatic math learning value, is some simple game engine that embodies a lot of key focal points.

For example, consider an old fashioned slot machine of side-by-side wheels, each speeding up at the stroke of a crank, reaching maximum spin, then slowing to a stop, giving a line-up of pictures.

In software, we might control the speed with a parabola, sine wave or catenary, some curve of varying spin speed through time, satisfying to the viewer (the physics might be somewhat other-worldly given the freedoms software permits).

In the meantime, the possible line-ups, their relative frequencies, serves as a basis for combinatorics. Both smoothly continuous, and discrete, in one simple package. Then you've got the money aspect, ties to computing in business.

Pygame would be a suitable development environment for this open source project. Our school teachers will serve as knowing tour guides, taking us through the source code line by line on some days, discussing the odds in poker on another (we don't just look at slots, on the contrary this is about many language game types).

Whereas slot machines have a somewhat poor reputation, for demanding so little of their students (some would claim there's an art), our evolved games environment suggests many ways to reward learning behaviors, using guided meditations, exercises, puzzles, to develop various competencies (and yes, there's a limit to what screens will teach you).

Yes, that all sounds quite Pavlovian, and so fits with all those card-playing dogs.

What we do in our cube farms is likewise "playing against the house" maybe losing in some dimensions, but in a sense we're part owner and so "paying ourselves" to live and learn from experience.