[Edu-sig] a non-rhetorical question

Vern Ceder vceder at canterburyschool.org
Fri Jul 6 20:09:48 CEST 2007


Andy,

I certainly didn't mean to imply that you were a wise-guy! And if you've 
been teaching them that sort of structure, it would definitely NOT be 
the wise-guy answer.

I have to admit to not particularly liking (and not teaching) the while 
True: approach myself, simply because it separates the conditions for 
ending the loop from the top of the loop where one tends to look for 
such things. In more complex code this can lead to bugs. Not to say it 
can't be made to work brilliantly, mind you, but it can also lead to 
spaghetti like code if you're not careful.

Off the top of my head, I would be looking for something like this ...

resp = raw_input("Who is hottest teacher?")

while resp != "Mr. Judkis" and resp != "Mrs. McGrath":
     print "Wrong, sorry..."
     resp = raw_input("Who is hottest teacher?")

# must be one of the two if you make it here
if resp == "Mr. Judkis":
     print "Excellent choice!"
else:
     print "Also a fine choice."

I completely agree that getting them to synthesize is the hard thing, 
and in my experience it gets MUCH harder in a test situation. Your 
description of their behavior suggests to me that they had already 
written the problem off as "impossible" before they even got to the 
review session. I wouldn't pretend to guess why that is, having suffered 
through similar experiences myself.

As I was finishing this Laura's post came in, she makes some very good 
points, but I want to strongly second this:

> I guess the only way to find out is to ask your students. 

When I started giving students little surveys to fill out at the end of 
each programming unit I found it very helpful in deciding what worked 
and why.

Cheers,
Vern



Andy Judkis wrote:
> Vern, Richard,
> 
> Your comments were very helpful -- it's sometimes hard for me to see the 
> question as a student would. They can imitate nicely, but asking them to 
> analyze and synthesize (as this question does, at a very superficial 
> level) seems to be asking a lot -- yet it's the essence of programming.
> 
> Reading between the lines of Vern's message, I wonder how he would want 
> students to answer the question.  What I was looking for was more or 
> less what he considered the wise-guy answer:
> 
> while True:
>    resp = raw_input("Who is hottest teacher?")
>    if resp == "Mr. Judkis":
>        print "Excellent choice!"
>        break
>    elif resp == "Mrs. McGrath":
>        print "Also a fine choice."
>        break
>    else:
>        print "Wrong, sorry. . ."
> 
> I would have expected this question to be easy after 4 weeks of this 
> stuff. They have certainly done things a lot like it quite a few times.  
> I had given out the questions ahead of time and encouraged the kids to 
> work together on them, yet the day before the test, everyone seemed 
> stumped.  I went over it in class in detail, and yet when they took the 
> test, some kids still missed critical things -- they put the raw_input 
> outside the loop, they left out the breaks, they left out the while 
> altogether -- suggesting to me that they're trying to use recall and 
> imitation, and don't really "get it" in a useful way.  I'm coming to the 
> conclusion that either:
> 1) my expectations are unreasonable, or
> 2) my approach to the material is completely wrong -- at this point, 
> after 6 laps around the track, it isn't just a matter of tweaking 
> something.
> 3) or perhaps some of both.
> 
> I should add that we start out with a week of RUR-PLE, learning about 
> loops and branches and subroutines, and that seems to go quite well -- 
> it's only when we move to IDLE that things start to go out of focus.
> 
> Thanks,
> Andy
> 
> 

-- 
This time for sure!
    -Bullwinkle J. Moose
-----------------------------
Vern Ceder, Director of Technology
Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804
vceder at canterburyschool.org; 260-436-0746; FAX: 260-436-5137


More information about the Edu-sig mailing list