[Edu-sig] Python promises a revolution

Michael Williams michael.williams@st-annes.oxford.ac.uk
Thu, 20 Feb 2003 23:01:03 +0000


On Thursday, February 20, 2003, at 10:47  pm, Kirby Urner wrote:
>> I did a Masters dissertation on the last two of these points last 
>> year in the department
>> of physics at the University of Oxford here in the UK. You may find 
>> the dissertation
>> and the teaching materials I produced useful:
>>
>> http://users.ox.ac.uk/~sann1276/python/
>> --
>> Michael
>
> I notice you avoid exposing students to the concept of a class,
> i.e. the OOP paradigm is put off in favor of a more procedural
> approach.  Is this because you think user-defined classes (types)
> are too difficult for beginning students, or perhaps simply that
> they're less relevant to programming applications in physics?
> Or maybe I missed seeing it in your well-organized and clearly
> presented tutorial (above).


A bit of both. We've only got four half-day sessions to cover the 
exercises in the handbook *and* a more substantial problem, so anything 
we can comfortably lose without sacrificing useful background we do. 
OOP is a sufficiently discrete topic that we can either take it or 
leave it. So it's not just that it's hard, but also that it's big. I 
think the procedural paradigm is much more graspable and intuitive to 
our students, who are used to working through iterative calculations by 
hand. Doing OOP properly would add at least a half-day (and probably 
more if we did it properly) to the handbook.

And you're right about its limited applications in Physics. None of our 
exercises are best-solved using the OO paradigm, and we think they're 
reasonably representative of the day-to-day numerical methods grunt 
work of a physicist.

Of course in an ideal work we'd cover other applications that do lend 
themselves to the OO approach, such as modeling solid state systems. 
You win some, you lose some ;->
-- 
Michael