Looking for Python programmers--where to search?

Alex Martelli aleaxit at yahoo.com
Tue Aug 29 15:54:41 EDT 2000


"Paul Duffin" <pduffin at hursley.ibm.com> wrote in message
news:39ABE7F7.BA78BD78 at hursley.ibm.com...
    [snip]
> The algorithms and languages (not one but many) should be taught side by
> side, learning how to write quick sort for example in a few different
> languages gives you a better understanding of both the algorithm and the
> language than just doing it in one language.
>
> The languages should cover most of the different flavours of languages.
> Functional.
> Procedural.
> Object oriented.

Nah, not on a first programming course.  This would only beget
confusion.  Grasping the core ideas of programming is hard
enough for a total beginner without artificially adding to his/her
confusion; one language, and a few styles of using it, are enough
for a first course.

Besides, why should these three specific paradigms be singled
out?  SQL (relational) has more practical importance, and arguably
just as much theoretical status, as functional programming, for
example.  And is Prolog (logical programming) worth nothing?
Generic programming, machine languages (Knuth maintains they're
the only way to get certain ideas across), Forth, Icon, APL?

Nah.  On a first programming course, ONE, *simple*, language,
should be picked.  I'd choose Python, with some understanding
for teachers who'd prefer Scheme (with students with a deep
background in mathematical/abstract reasoning), or maybe a
very strictly/statically typed language (not my preference, but
I respect the classic school which claims such languages help
beginners, although I've come to think they don't).  Something
*simple*, anyway -- a language that will basically get out of
the way pretty soon, leaving a student free to concentrate on
the real substance of the ideas.  Time enough in further courses
to introduce the student to some measure of the huge variety
of languages, paradigms, etc, that they'll need further on.

Would you teach beginning drivers to drive a motorbike, a
helicopter, AND a sailboat, at the same time as they're trying
to master car-driving for the first time?  That would no doubt
give them a better understanding of the specificsof each
vehicle, and of the various itineraries and approaches each
is suitable for.  It would also add enormously to the confusion
and difficulties inevitably connected with learning to drive
for the very first time.  Thumbs down.  One vehicle at a
time, as per tradition, is, by far, a better idea.


Alex






More information about the Python-list mailing list