Python and Schools

Ian Bicking ianb at colorstudy.com
Thu Apr 17 02:39:05 EDT 2003


On Wed, 2003-04-16 at 21:24, Tim Ottinger wrote:
> Donnal Walter wrote:
> > I am a physican first and programmer second. I've never taken a course 
> > in computer science, and I do not know the meaning of O(N). OTOH, just 
> > from following comp.lang.python I think I have a pretty good idea why
> > 
> >     s += str(i)
> > 
> > would be a bad idea. Nevertheless, I certainly would not be opposed to 
> > deepening my understanding. (PythonIAN is great, BTW.)
> 
> I came in late. If we're talking about schools, I'm not sure whether 
> we're talking about colleges and adult ed, or high school, or elementary 
> school. Are we talking about teaching people who know nothing about
> programming?

It's also a question of what you're trying to teach.  Something that has
always impressed me with Logo is that it's more of a teaching
philosophy, and a language goes with it.  The intention behind Logo
isn't to teach programming... rather, programming is a medium in which
to teach all sorts of other great stuff.

I personally believe that programming is *the* way pre-algebra and
algebra should be taught.  Logo shows it works very well for geometry as
well.  But you really have to get rid of the idea that you're teaching
programming -- it does the children a disservice anyway, because
programming is a rather niche skill in the larger picture.  When you're
teaching *with* programming, big-O notation and many other programming
notions are just a distraction.

> Maybe not too bad for 5th or 6th grade, since they're far from writing
> any professional code. You tolerate more with rank beginners, and you
> correct it in time.

I'd go further -- if you're not trying to teach them to become
programmers it's not a matter of tolerating, it's completely okay to be
inefficient.  It'd be like criticizing a student's handwriting on the
caption they made for a picture in art class, or criticizing the
aesthetic of a graph made for algebra.

  Ian







More information about the Python-list mailing list