tough-to-explain Python

Dave Angel davea at ieee.org
Wed Jul 8 11:59:14 EDT 2009


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.  I had the
> benefit of that sort of training (one of the first computer courses
> I took started, believe it or not, with Turing machines, through
> coding in machine language, and compiler theory, and all the way
> up to dabbling with Unix!), and I suspect that the reason it is
> sometimes difficult for me to explain even relatively simple-looking
> things to others is that I have this background that I unconsciously,
> and incorrectly, take for granted in others...  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...  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...
>
> kj
>
>
>   
And I learned to program Analog Computers, along with APL, in an early 
course.  In my case assembly language came later, but by then we had 
covered the electronics behind transistors, and Karnough maps, logic 
diagrams, and so on.  By the time I graduated, I had five six-level 
languages and two assembly languages under my belt.

.DaveA



More information about the Python-list mailing list