Experiences/guidance on teaching Python as a first programming language

rusi rustompmody at gmail.com
Mon Dec 16 20:58:44 EST 2013


On Tuesday, December 17, 2013 6:14:59 AM UTC+5:30, Chris Angelico wrote:
> On Tue, Dec 17, 2013 at 11:39 AM, rusi wrote:
> > I had a paper some years ago on why C is a horrible language *to teach with*
> > http://www.the-magus.in/Publications/chor.pdf
> > I believe people did not get then (and still dont) that bad for
> > - beginner education (CS101)
> > - intermediate -- compilers, OS, DBMS etc
> > - professional software engineering
> > are all almost completely unrelated

> Yes. In esr's essay on becoming a hacker[1] he says:

> """There is perhaps a more general point here. If a language does too
> much for you, it may be simultaneously a good tool for production and
> a bad one for learning."""

There is this principle by Buchberger called the "Black-box White-box
principle" 
Unfortunately I can only find mathematicians talking about it
http://www.math.rutgers.edu/~zeilberg/Opinion65.html
and no CS-ists/programmers.

eg
To teach OS, minix is better than linux
To use, linux is better
FreeBSD may be a good middle point. It may also be a bad middle point --
practically too hard to use or study.  Which is why in practice separating
teaching tools from professional ones is better than thrashing about using
the same for both

> Definitely true, though I think it has exceptions.

> [1] http://www.catb.org/esr/faqs/hacker-howto.html

Yeah As esr says python is an exception
And even here as it progresses it becomes more professional and less educational



More information about the Python-list mailing list