Friday, May 18, 2007

Understanding calculus through experiential learning

Current teaching and learning theory holds that including all of the senses in a teaching context increases the speed and depth of understanding in the learner.

In 1936 Claude Shannon was seeking his master's degree at MIT where he operated Vannevar Bush's Differential Analyzer. The differential analyzer was an analog computer designed to do calculus equations. The machine had to be programmed which involved translating the equations written by a given professor into instructions understandable by the Differential Analyzer. Through constantly revising equations to work with the machine Mr. Shannon was gaining a deep understanding of calculus.

Cut to 2007, computers are ubiquitous and doing lots of math under our fingertips but it doesn't seem to be seeping in like it did with Mr. Shannon. We are touching the machine as it works through the commands that do our bidding but we are not thinking about the process itself, rather just outcomes of interest such as printing a memo. Calculators have been around a long time and while they appear helpful to those using them to do math, they don't necessarily increase your understanding of math. The argument has been made that calculators are actually detrimental to the understanding of math because it is the process of working out the equations that yields the understanding.

How do we get the math in the computer to seep into the minds of children who need to learn math? Enter Blender an open source 3d modeling, animating, rendering, and game engine. The key here is game engine. Kids like videogames. Blender was designed for artists, not programmers. One of the features that makes Blender so interesting for teaching math concepts and increasing student interest in math is programming with what are called, "Logic Bricks." Logic bricks consist of a sensor, controller, and an actuator. Through these bricks you can perform many programming functions without touching a line of code. Python is the scripting language for Blender, and the Blender Python API (Application Protocol Interface) is articulated visually with the logic bricks. One of the actuators is motion. Motion allows you to modify force, torque, location, rotation, linear velocity, and angular velocity in the X, Y, and Z axis. It allows you to specify any of these changes in state to be either globally, or locally oriented.

This is math. This is math in the computer that we can touch and have seep into our brain. Kids love videogames, with this math kids can play videogames and touch math at the same time. Once a child sees that they can make the car go faster by increasing the torque on the wheels, they are off to the races.

No comments: