Experiences/guidance on teaching Python as a first programming language
William Ray Wing
wrw at mac.com
Mon Dec 9 18:55:41 CET 2013
On Dec 9, 2013, at 11:57 AM, rusi <rustompmody at gmail.com> wrote:
> On Monday, December 9, 2013 5:53:41 PM UTC+5:30, Oscar Benjamin wrote:
>> 5) Learning to program "should be painful" and we should expect the
>> students to complain about it (someone actually said that!) but the
>> pain makes them better programmers in the end.
> Yeah this will get some people's back up -- Atrocious! Preposterous! etc
> Change the word 'pain' to 'taxing' 'hard' 'challenge' etc and there is much
> truth in it. Here is Joel Spolsky on why Java is a poor language for
> this reason: http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html
I'm not sure I agree with either of these points of view. Based on my own personal experience, there is an "Ah HA!" moment[*] when a student understands what it means to decompose a problem into a series of algorithmic steps - after that, the details of the particular programming language are just that, details.
Some students get that quickly and intuitively and some never get there, but that bit of fundamental understanding doesn't require either pain or (necessarily) hard work - it just requires adopting a way of approaching and thinking about problems, a mind-set.
* For me it came during a no-credit, no-cost, lunch-time course one of my college math teachers offered for anyone who was interested. The year was 1963, we used McCracken's FORTRAN book as our text, and tested our programs over open weekends at Argonne National Lab, where they had an IBM 1620 they opened to classes like ours a couple of times a month.
More information about the Python-list