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