[plt-scheme] handin button in DrScheme

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Wed Jul 23 11:41:44 EDT 2003

I'm teaching a largish class this fall with DrScheme, so I've created a
tool that puts a "Handin" button in DrScheme's toolbar. The "Handin"
button sends the content of the definitions and interactions windows to
an instructor-maintained (MrEd-based) handin server.

Other instructors may find this tool useful for collecting homework and
lab assignments.

The handin client is intended to be customized by the instructor before
it is distributed to students. The instructor gives students a
pre-configured client, say "uu-cs2010.plt", which embeds a specific
server address and server certificate. Students install "uu-cs210.plt"
to get a "Handin" button that is specific to the course. Students don't
have to mess with configuration dialogs or cetificates.

The handin protocol builds on SSL, so it's secure. Naturally, it's also
designed to be robust against network outages, timeouts, and
ill-behaved clients.

On the server side, the instructor can define an assignment-specific
"checker" function that is applied to each submission. The checker
might, for example, reject a submission that is insufficently commented
or badly tested.

The current implementation is in CVS as the "handin-server" and
"handin-client" collections (but not exp-tagged, because exp-tagging
the client would add a useless "Handin" button to everyone's CVS-based
DrScheme). See "doc.txt" in "handin-server" for more information.

Matthew



Posted on the users mailing list.