[Edu-sig] Re: Best approach to teaching OOP and graphics

Linda Grandell lgrandel at abo.fi
Sat Mar 26 11:08:40 CET 2005


I dived right into your lessons... Looks *very* good. I am always 
looking for "new" approaches to teaching programming, since this is the 
very topic of my future PhD-thesis. Giving the students a "standard" 
which there programs are to meet should indeed be very motivating and 
pose a positive challenge to all students. My class starts in three 
weeks, so I have some time (not much :) to try out doctest on my own and 
see if it would be suitable for my students. Did your students find it 
difficult to learn and start implementing TDD?

Have you considered using this approach in the exam? One thought that 
came to mind would be to make the grades depend on which test cases the 
programs pass. The test cases could be divided into groups, and in order 
to pass the tests in the "higher grade"-groups, the programs would have 
to be more flexible, advanced and so on than programs passing the basic 
test cases. In this way  the same task could be challenging for all 
students. Finding suitable exam questions can, in my opinion, sometimes 
be really tricky, especially when there is great variation in the 
students' programming skills.

/Linda


Jeffrey Elkner wrote:

>One more note on this topic.  I'm quickly coming to the conclusion that
>the best way to teach any programming, OOP or otherwise, is using Test
>Driven Development (TDD).  DocTest is an absolutely wonderful tool in
>this regard (thanks to Tim Peters!).  I write the assignment as a
>collection of tests, which the students are asked to pass one at a time.
>They find it fun and empowering, since it helps them break down complex
>tasks into simple steps.  More students are able to solve the problem,
>and to better understand difficulties they have along the way.
>
>I only discovered DocTest a few weeks ago, but if anyone is interested
>in seeing my first attempt at writing lessons with it you can see them
>here:
>
>http://linus.yhspatriot.net/cs/cs
>
>(note: this site changes rapidly, so the lessons might not be here
>later, but I plan to refine them a bit and put them on the Python
>Biblioteca:
>
>http://www.ibiblio.org/obp/pyBiblio/
>
>  
>


More information about the Edu-sig mailing list