tough-to-explain Python

Steven D'Aprano steve at REMOVE-THIS-cybersource.com.au
Wed Jul 8 09:10:23 EDT 2009


On Wed, 08 Jul 2009 12:23:50 +0000, kj wrote:

> In <5f0a2722-45eb-468c-b6b2-b7bb80ae5f19 at q11g2000yqi.googlegroups.com>
> Simon Forman <sajmikins at gmail.com> writes:
> 
>>Frankly, I'm of the impression that it's a mistake not to start teaching
>>programming with /the bit/ and work your way up from there. I'm not
>>kidding. I wrote a (draft) article about this: "Computer Curriculum"
>>http://docs.google.com/View?id=dgwr777r_31g4572gp4
> 
>>I really think the only good way to teach computers and programming is
>>to start with a bit, and build up from there. "Ontology recapitulates
>>phylogeny"
> 
> 
> I happen to be very receptive to this point of view.
[...]
> There is this persistent idea "out there" that
> programming is a very accessible skill, like cooking or gardening,
> anyone can do it, and even profit from it, monetarily or otherwise,
> etc., and to some extent I am actively contributing to this perception
> by teaching this course to non-programmers (experimental biologists to
> be more precise), but maybe this idea is not entirely true...  

There is some evidence that 30-60% of people simply cannot learn to 
program, no matter how you teach them:

http://www.codinghorror.com/blog/archives/000635.html
http://www.cs.mdx.ac.uk/research/PhDArea/saeed/

I'm sympathetic to the idea, but not entirely convinced. Perhaps the 
problem isn't with the students, but with the teachers, and the 
languages: 

http://www.csse.monash.edu.au/~damian/papers/PDF/SevenDeadlySins.pdf

(My money is that it's a little of both.)


> Maybe, to
> get past the most amateurish level, one has to, one way or another, come
> face-to-face with bits, compilers, algorithms, and all the rest that
> real computer scientists learn about in their formal training...

The "No True Scotsman" fallacy.

There's nothing amateurish about building software applications that 
work, with well-designed interfaces and a minimum of bugs, even if you've 
never heard of Turing Machines.


-- 
Steven



More information about the Python-list mailing list