[Edu-sig] Endlessly looping Pythonic mathematics (hypertoon city!)
Paul D. Fernhout
pdfernhout at kurtz-fernhout.com
Fri Jun 9 02:01:37 CEST 2006
kirby urner wrote:
> With Python in the picture, there's no way to go but up (towards
> higher quality) and it's a long time before we hit the kind of ceiling
> the pydev types might care about. Just saying "let's talk about
> mathematics as an extensible type system" after deriving Monkey, Dog
> and Human from a common Mammal class, is a real eye-opener for them,
> and it only takes a few minutes, especially with the high quality
> cartoons.
>
> So there's really no contest. Pythonic math is better. And there's
> plenty of it on the web ready to go. Any enterprising teacher with
> Internet access is on a launchpad already.
You've made this point before, and I essentially completely agree.
Python-as-it-is (or any other OK computer language) is a great vehicle for
learning, and mathematics really is a subset of computing in some sense,
and it makes more sense to present mathematics embodied into a larger
meaningful context (including visualization).
> So it's just the boring implementation part that's slow and unfinished
> (runtime), waiting for more so-called mathematics teachers to care
> about computers, let alone programming, let alone some language that
> sounds like it might bite.
Well, we can all hope it will happen, but consider the alternative (not to
reopen an old arguement, but just as a data point :-):
A newspaper article from a few days ago:
A 'hole in the wall' helps educate India
http://search.csmonitor.com/search_content/0601/p13s02-legn.html
From that article: "Sugata Mitra, physicist and chief scientist with
India's international software giant NIIT Ltd., launched the experiment in
1999 by embedding a kiosk housing a high-speed touch-screen computer into
the wall that separates the company's headquarters from New Delhi's
biggest slum. Dr. Mitra was surprised to see how quickly the children had
mastered navigating the Internet - within hours. ... Hole-in-the-Wall has
already helped thousands of previously nonliterate boys and girls teach
themselves not only about computers but also "several pieces of primary
education," Mitra says. Within nine months, the boys and girls achieve,
"the proficiency level equivalent to the skills of most modern office
workers." ... "What is being learned with Hole-in-the-Wall is how much
kids can just figure out without adult assistance. The question remains as
to whether the rate of learning could be accelerated with the aid of a
teacher," Mr. Hetzel says. "At the same time, I am in awe of how much
these poor kids have taught themselves about computers." ... While the
World Bank showed "some interest" in helping meet those costs, Mitra says
he doesn't believe that the money, "if it ever comes, will be from the
United States," as "primary education is not a priority in the US at the
moment." Equally scathing about the Indian government, Mitra speculates
that, "in its slow and ponderous way, it may one day think about it."
Meantime, as a result of his success here, the innovator has been asked to
bring Hole-in-the-Wall to Cambodia and South Africa, which means that,
altogether, it has "been verified by 40,000 of the world's poorest
children." [Curious who asked him to go to SA?]
So it seems the number one thing an educator can do, even in a developing
nation (such as the USA :-) is to use their adult skills to give kids
access to opportunities to learn which the kids can't put together
themselves. Number two might then be making easy-to-use systems. Number
three might then be writing good tutorial or on-demand help systems for
them, perhaps including screencasts. If the educator has the time and
opprtunity to actually be there for kids, then number four might be
setting a good example somehow or conveying excitement.
I guess after all that, then one can start talking about what other useful
things educators can do to help kids learn, like in this book: :-)
http://www.inspiredinside.com/learning/postman1.htm
or anything by Holt and so on. For example, I liked Holt's suggestions on
ways to present basic mathematics to young kids integrating all the basic
operations (multiplication, division, addition, subtraction) into a common
way of thinking about quantities, e.g. 2 * 3 and 3 + 3 are different ways
of walking about the same thing.
Part of the problem is, by the time kids are in high school, there is so
much (psychical and intellectual) damage related to mathematics to unlearn
for so many kids, that it certainly is going to be a difficult problem. I
taught computer programming to biology majors at a state university for a
couple semesters, and I saw first hand that most people become biology
majors in part because they don't like (or know) math, which is especially
a shame as so much of modern biology research is heavily mathematically
oriented (statistics, simulation, equation development, and so on). Yes,
there are exceptions, but the bulk are not mathematically oriented. But if
the entire K-12 system has failed these kids, what can someone running a
college course realistically hope to accomplish in a semester? (I think
most kids took it, this was ten years ago, with a thought to getting a job
as a programmer, since entry bio jobs didn't pay as well. :-)
Anyway, while Python is very approachable in some ways, it is also not
very approachable in others, including interface-wise (which is why Visual
basic captured so many people's attention). Also, Python suffers from
several inconsistencies which can trip up both novice and causal expert
user. Seemingly minor things (e.g. when to use "len()" and ".length" and
even the whole issue of inconsistent abbreviation strategy), but each one
is another hurdle. Some of those (GUI building) can be easily fixed as
add-ons, the others require going over the language and dealing with a
community process (so never going to happen?).
Still, you remain correct, Python is ready right now to use as a learning
platform for mathematics and other things.
--Paul Fernhout
More information about the Edu-sig
mailing list