[Edu-sig] DocTest Quiz
winstonw at stratolab.com
Tue Apr 25 08:00:43 CEST 2006
I have built a system very similar to this idea for my video game
programming courses. I have a small application that runs a cherrypy
web server. There is just one button that opens a web browser to the
start page. Each page can be one of:
- A regular page with text on it.
- A multiple choice quiz
- A page that describes a problem to solve, and opens a piece of
sample Python code in my simplified Python IDE (MakeBot). On that
page, is also a TEST button that runs test code on whatever the
student has changed in the sample code.
My system hides the test code, but DocTest would probably work very
well for many Python situations. I have noticed though that some of
my students will focus more on what the test is doing than what the
problem is. So I've started hiding what the test is actually testing
so they have only the clues of my instructions and green OK or a
general description of the error in red.
The interesting thing is that each page in cherrypy is just a Python
object, so a test page can do anything that Python can do. For
another course in interactive fiction (text adventures/MUDs) I
started writing tests that would telnet into the MUD and interact
with the student in the MUD universe. Anything testable with Python
like computers simulations of physics or biological phenomenon could
be incorporated into the tutorial, not just programming.
On Apr 23, 2006, at 11:02 PM, Michael Tobis wrote:
> Andre, I agree with your summary, and I don't think you went wrong
> in any way.
> I am simply saying that the first approach is much easier than the
> second and raises far fewer issues, probably with the proviso that the
> tests themselves must be trusted.
> The design I am proposing is responsive to a conversation I had with
> Jeff at PyCon, and to the "goal" that is described on this page
> but is admittedly not responsive to the "requirements" on the page.
> What I'm raising here is the possibility that the "goal" does not
> imply the "requirements".
> Because Jeff's users are high school students involved in a year-long
> exploration of Python, I presumed that they are developing code on the
> client, not the server. Therefore Python is installed and therefore a
> specialized client could also be installed.
> Perhaps I misunderstood, though.
> Jeff, could please clarify the nature of the use cases that you
> envision in the near term? Do you have some case where running the
> tests on the client would not work?
> Edu-sig mailing list
> Edu-sig at python.org
winston wolff - (646) 827-2242 - http://www.stratolab.com
learning by creating - video game courses for kids in new york
More information about the Edu-sig