[Edu-sig] re: More spillover re the division PEP

Kevin Ollivier kevino@tulane.edu
Thu, 26 Jul 2001 20:00:58 -0400


Hi Arthur,

<<SNIP>>
> Should the language be designed to prevent conceptual errors by folks
> who haven't made it to Chapter 3 of its introductory tutorial. For
> reasons that I can't even explain to myself, the argument that it should -
> if and to the extent that argument  has been advanced in these discussions
>  - makes me nuts.

That's understandable - I've seen many people call themselves database
designers simply because they can use Microsoft Access, although it is
obvious from their work that they don't understand the conceptual issues
involved. In fact, they break many of the essential rules the 'trained' DB
designer is taught to uphold. To listen to someone advocate creating these
kinds of workers would frustrate me as well.

But in this case the errors do not occur because students do not understand
the concept. They may understand the concept perfectly, but because they are
so familiar with arithmetic and "calculator" division, and because they have
been using these forms of division far longer and more often than integer
division, they forget that Python does things differently and as a result
create a "gotcha" in their code. They of course will remember this when an
error occurs, but that could happen be in a production environment.

> A more interesting argument is to what extent we should concern ourselves
> about those with an interest in learning to program who who read Chapter 3
> carefully, and can't follow it - don't have the background to make any
sense of
> it.
>
> That's certainly  worth talking about.  But first we need to have some
evidence
> that such
> a population exists, which we do not.  Or that, if such a population does
> exist,
> programming language design is a reasonable arena in which to expect to be
> able to offer them help[.

I think we could safely say the current target audiences for Python should
be old enough that they have a solid grounding in whatever pre-requisite
knowledge they need to learn Python and programming in general. However, as
you say it would be interesting to know what those pre-requisites are! After
all, how long until 7-8 year olds start trying their hands at programming?
(If they aren't already.)

Kevin