Re: [Edu-sig] Teaching Middle-School Math with Python
I've heard excellent things about logo. Is there a Linux port? Steve At 12:24 PM 10/6/00 -0400, Randy Latimer wrote:
I know it's an old old language, probably in the ancient "has-been" status, but Logo was a nice intro programming language in a style other than the "standard" way of programming (fortran, basic, pascal, c, c++, java etc) that almost took off. I still like it, but I'm an old guy. Randy Latimer
On Fri, 6 Oct 2000, Fred Bartlett wrote:
Has anyone had any success in changing public-school math curricula at the middle-school level?
I've been busily learning Python while my daughter has been busily learning 6th-grade math. The contrast between the two experiences is considerable: I can learn Python in a clear, clean, organized way; my daughter can't learn math that way -- well, she _could_, but her textbook militates against it.
Her textbook takes a "problem-solving" approach and teaches "high-level" thinking. By this they mean, I think, large numbers of word problems. That would be fine, of course, if they did it right. But they seem to be teaching heuristics rather than algorithms -- that is, each kind of problem is treated as if it were sui generis.
I was especially saddened -- and motivated -- when she asked me, "How could anyone ever be interested in this stuff?"
I began to muse that an introduction to programming could both help kids see the connections among types of problems and provide a salutary dose of rigor to the curriculum. (Donald Knuth said somewhere that one can't really be sure that one understands something until one can teach a computer to do it.)
The only other languages I found in my web searches used below the college level were Java, C/C++, (Visual)Basic, and Scheme -- none of which would be appropriate at the level I'm contemplating. But Python, for all its virtues, is a relatively obscure language. It's a good bet that no one at the Board of Ed has heard of it!
Meanwhile, I found out about our "technology" curriculum from middle through high school: It's all Microsoft, so we're paying tens or hundreds of thousands of dollars for license fees. (I'm sure no one here will defend that practice!) I would like to change that, too.
Kirby Urner has done some interesting things with algebra and beyond; but I didn't find any pre-algebra math at his site.
Hans Magnus Enzensberger's _The Number Devil_ contains the kind of math I'm looking for: simple -- but interesting! -- applications of basic arithmetic on the integers (and, soon enough, the reals).
So -- any hints for me out there?
Thanks! Fred
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://www.python.org/mailman/listinfo/edu-sig
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://www.python.org/mailman/listinfo/edu-sig
I'm teaching in a linux envrironment now, I'll check around for a linux logo, but I think unfortunately it's only part of the windows/mac world. Randy On Fri, 6 Oct 2000, Steve Litt wrote:
I've heard excellent things about logo. Is there a Linux port?
Steve
At 12:24 PM 10/6/00 -0400, Randy Latimer wrote:
I know it's an old old language, probably in the ancient "has-been" status, but Logo was a nice intro programming language in a style other than the "standard" way of programming (fortran, basic, pascal, c, c++, java etc) that almost took off. I still like it, but I'm an old guy. Randy Latimer
On Fri, 6 Oct 2000, Fred Bartlett wrote:
Has anyone had any success in changing public-school math curricula at the middle-school level?
I've been busily learning Python while my daughter has been busily learning 6th-grade math. The contrast between the two experiences is considerable: I can learn Python in a clear, clean, organized way; my daughter can't learn math that way -- well, she _could_, but her textbook militates against it.
Her textbook takes a "problem-solving" approach and teaches "high-level" thinking. By this they mean, I think, large numbers of word problems. That would be fine, of course, if they did it right. But they seem to be teaching heuristics rather than algorithms -- that is, each kind of problem is treated as if it were sui generis.
I was especially saddened -- and motivated -- when she asked me, "How could anyone ever be interested in this stuff?"
I began to muse that an introduction to programming could both help kids see the connections among types of problems and provide a salutary dose of rigor to the curriculum. (Donald Knuth said somewhere that one can't really be sure that one understands something until one can teach a computer to do it.)
The only other languages I found in my web searches used below the college level were Java, C/C++, (Visual)Basic, and Scheme -- none of which would be appropriate at the level I'm contemplating. But Python, for all its virtues, is a relatively obscure language. It's a good bet that no one at the Board of Ed has heard of it!
Meanwhile, I found out about our "technology" curriculum from middle through high school: It's all Microsoft, so we're paying tens or hundreds of thousands of dollars for license fees. (I'm sure no one here will defend that practice!) I would like to change that, too.
Kirby Urner has done some interesting things with algebra and beyond; but I didn't find any pre-algebra math at his site.
Hans Magnus Enzensberger's _The Number Devil_ contains the kind of math I'm looking for: simple -- but interesting! -- applications of basic arithmetic on the integers (and, soon enough, the reals).
So -- any hints for me out there?
Thanks! Fred
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://www.python.org/mailman/listinfo/edu-sig
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://www.python.org/mailman/listinfo/edu-sig
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://www.python.org/mailman/listinfo/edu-sig
I'm teaching in a linux envrironment now, I'll check around for a linux logo, but I think unfortunately it's only part of the windows/mac world. Randy
On Fri, 6 Oct 2000, Steve Litt wrote:
I've heard excellent things about logo. Is there a Linux port?
I am sure a Python logo already exists. If not it should be pretty easy for a Python adept to do. An obvious advantage is that, unlike Logo which is usually powerful but isolated, PythonLogo immediately puts one at the interactive prompt for doing anything, including Kirby' work and much else to come. - Jason
At 01:56 PM 10/06/2000 -0400, Jason Cunliffe wrote:
I'm teaching in a linux envrironment now, I'll check around for a linux logo, but I think unfortunately it's only part of the windows/mac world. Randy
On Fri, 6 Oct 2000, Steve Litt wrote:
I've heard excellent things about logo. Is there a Linux port?
I am sure a Python logo already exists. If not it should be pretty easy for a Python adept to do.
Python Logo?? Linux Logo I'd understand, but Python and Logo are two distinct languages, the latter having roots in Lisp. When it comes to mapping a trajectory through the languages, it could go like this: Logo -> DrScheme -> Other Lisps (AutoCad, Emacs) Python -> C++ (or C#) and/or Python -> Java (possibly via JPython) Which isn't to say Python can't be an end in itself (same with Scheme -- not so sure about Logo).
An obvious advantage is that, unlike Logo which is usually powerful but isolated, PythonLogo immediately puts one at the interactive prompt for doing anything, including Kirby' work and much else to come.
- Jason
Tell me more about Python Logo. I know the standard Python comes with a turtle class as one of the Tk demos. Is this what you mean? Kirby
Tell me more about Python Logo. I know the standard Python comes with a turtle class as one of the Tk demos. Is this what you mean?
Kirby
PythonLogo: I'm glad you asked :-) Yes and yes++ I thought maybe __someone__ might have developed a very cool PythonLogo already.. but elif not then why not develop one. And if so, without becoming a slave to the old, go forward [emulate what is great about it] = make something new and pythonic [adapted to and in harmony with its environment]. I believe the most important thing about Logo is the idea: Turtle-centric thinking with two interconnected interpreters for feedback: one graphic, the other command line. Given Python's obvious talents for interactive objects, lists, reusable structures.. and Logo key insights into psychology of learning, and proven [can we take that as a given ?] effectiveness. Some diverse brainstorming on this one would benefit CP4E I hope - whatever the outcome. [Google results 7,030 for turtle geometry. Search took 0.14 seconds] There is some valuable research available to be synthesized and reviews, but not necessarily integrated. There are some keen and experienced minds to consult with adhoc to mind come these refs: - 'Turtle Geometry' the book http://www.amazon.com/exec/obidos/ASIN/0262510375/o/qid=970868408/sr=8-1/ref =aps_sr_b_1_3/002-4848534-5812817 - Andy diSessa's subsequent work [up to the strange 'Boxer'] http://www-gse.berkeley.edu/program/CD/adisessa.html http://dewey.soe.berkeley.edu/boxer.html/ - Microworlds [is that its name - the multi super processing Logo] http://www.atlantic.net/~caggiano/logo/logo.html - strange mindwarping 3D Game of Life [Not Logo exactly but somehow quite connected. There was an Amiga and I think I saw about 7 years ago..] - GeoLogo = a global and spherical Logo [This last was my vision after reading 'Turtle Geometry' around 1992 - I entered into some correspondence at the time about it with a Math teacher / Musician / JForth Music programmer Nick Didkovsky, based in New York. He had been actively using Logo with his class to some neat stuff. I saw a flyer for a recent concert of his band Dr.Nerve. So I know he's around and thriving. Time to look him up again] Four key points of the GeoLogo idea were: 1. Action on a spherical world leads to all sorts of valuable geo-spatial thinking. Screen is flat, Cartesian geometry is flat, Logo applies a toroidal logic to flat screen [Turtles reappear top-bottom left-right..pretty strange!!] As Bucky noted in 'Utopia or Oblivion' and myriad other places, spherical thinking 2. 'Behaviors' Behaviors led to group Turtle interactions - thus turtles could have properties etc, and also genetic and memetic* traits -leading to learning and social structure families being the direct genetic trait, society being the combined genetic plus memetic behavioral ones. 3. Maps and environments GeoLogo would use basic logo functions to draw environment maps. The maps would themselves have properties so that when the turtles for example reached water or a cold region or source of food, or a road/route they could be programmed to behave differently. The idea was to have a Logo which could start off very simple. But which could also scale up to something much richer more collaborative, distributed hopefully with much more encapsulation possible. Influence of the early Sim-City and A-life [Sim-World..] but keeping the focus on the core values of Logo: interpreter shell, scripts and graphic feedback 4. And among interesting distributed ideas which was much harder then to implement or articulate was message passing between Turtles. How to network these together internally ? How to handle multiple sessions across a network. Micro-worlds have addressed some of this I think. 3-D graphics displays system easily handle this now. One might use something like Pyro to implement distributed message passing. http://www.xs4all.nl/~irmen/ap/pyro.html To handle really effective geo-spherical drawing one needs a toolkit designed for such. This way all is Geo-referencing from the beginning. Then the scale-dependent FLAT world SCREEN world artifacts we handle everyday are put in their correct context - Zoom in Zoom out. You Zoom in enough - flat enough for you? The only and best SDK I know of for doing this is and with great precision is Hipparchus system. check out http://www.geodyssey.com/ http://www.geodyssey.com/tutorial.htm We would need to do the Python embedding and implementation...Any SWIG maestros here? I did not know back then how much was involved to put this together or even how much of it is be possible now - or advisable. But it seems like it _is_ now possible, and still a good idea. The trick would be to have a broad enough vision and project map but start off modestly step at a time building towards an enduring system. Clearly without curriculum and teachers this is hard. A good system is one of the teachers. There is a lot of existing Logo material and experience which could hopefully be used. But perhaps some resistance too. cries of WYANL. PythonLogo says it plainly enough. Because it is PythonLogo it should still be able to do all the other cool python stuff too without missing a beat:
import series, precalc
Perhaps could get even it to run on a PlayStation2 with some backing from Sony to port Python and develop it. Throw in some sound [not necessarily music, could be multilingual tutorials] and you have one cheap fast hot global curriculum machine. [ intriguing article about the PlayStation2 team in WiReD some months ago, says they might be up for this.] [*October Scientific American has a fascinating article on memes] - Jason
Thanks for all that background research Jason! I have no problem with the idea of doing turtle geometry using Python -- have done a little myself, including with L-Systems [1], though not with a live graphical display (we'd want that, I agree). I wouldn't call it PythonLogo though, because Logo is a language (descended from LISP), is not just the idea of having a graphical turtle (you can write LOGO programs with no turtle or graphical content). As a language, Logo it has its own integrity, which we shouldn't just bleep over (Logo's designers might not appreciate that). PythonLogo sounds too oxymoronic, like BasicPascal. However, PythonTurtle maybe sounds too much like a bad idea for mad scientist's gene splicing experiment -- two animals conjoined. PyTurtle sounds OK. Kirby [1] http://www.inetarena.com/~pdx4d/ocn/lsystems.html
From: Kirby Urner <pdx4d@teleport.com>
However, PythonTurtle maybe sounds too much like a bad idea for mad scientist's gene splicing experiment -- two animals conjoined. PyTurtle sounds OK.
yes OK. PythonTurtle, as you say is one part Edgar Rice Borroughs, one part epic myth, like something right out of the HongKong saturday afternoon movies I use see here in New York's Chinatown. Sadly the theaters have all closed now. Everyone's watching them from plush couchesat home on their DVDs projected on oversized screens. It would make a very funny animation - the story of the Turtle who turns into Python when he needs to. Else a python who pretends to be a turtle. else... Reminds me of a New Yorker cartoon I saw today - A hare is waving to a tortoise from the back seat of his chauffer driven limo which is speeding by.. - Jason
participants (4)
-
Jason Cunliffe -
Kirby Urner -
Randy Latimer -
Steve Litt