Calvin seal CS 108: Introduction to Computing
Spring 2006

Looking at Grades

I've struggled trying to find a secure way to distribute grades to students in CS 108 (without resorting to Knightvision). I've found what seems to be a useful/practical solution.

The Program

There's a command-line program (available only in the lab) that you can run like so:

unix-% view108grades

You will be prompted for your GLUW-lab password; enter it. (The first time you run this program, you might also be asked if you trust acolyte; you do.)

The program will then copy an HTML file from a machine named acolyte into your account, and then it will be opened in firefox.

If you have problems running the program, give me an exact description of how the program failed.

Reading a Grade Report

The grade report will list all of the graded assignments (including quizzes). Lab exercises and projects will include descriptions of what you did wrong and how much you lost for each infraction.

There were many problems handing in earlier assignments; if you forgot a typescript or handed in the wrong assignment (e.g., Project #3 for Lab #1), hand in the assignment, and email Andrew. To use the new handin program for the older assignments, you will have to do some renaming and creating of dummy files:

  • The class name of any driver/program must end in CLIDriver. So, for example, MultiplyProgram from Lab #1 should be renamed MultiplyCLIDriver. Use the Refactor -> Rename menu item.
  • Create Exercise Questions/labXX.txt (replacing the XX as appropriate) for old lab exercises.
  • Create Design/labXX.txt and Design/project XX.txt for old lab exercises and projects.

Any other "surprises" from the new handin program are actually "standard surprises" from the program, and you should read its own web page to solve the problem.

FAQ

Can I run this on my own computer?

Windows 95/98/XP/NT/etc.? No.

Linux or Mac OS X? Yes: copy /home/notone/bin/view108grades to your own machine; put into a bin directory; set the permissions. Using scp or sftp to copy, working with bin directories, and setting permissions are beyond the scope of this document.

Actually, running firefox on a Mac might not work; rewrite that line of the program as "open .cs108grades.html".

Truth be told, something could be written for Windows, but we have neither the time nor the inclination. It's probably not difficult to do, so anyone who'd like to volunteer...

How is this secure?

The files are saved on acolyte sort of in the notone account. Normally this would mean that the files could be seen by the notone account alone or by anyone. We're using something called Access Control Lists (ACLs) so that while only the notone account is officially allowed to access the grade files, we also open up your file to just your account.

Anyone really curious about the details can look at our publishing script, /home/notone/bin/publishGrades.