WPI Worcester Polytechnic

Computer Science

Using the turnin Program

The 'turnin' program is a means by which students can electronically turn in their class assignments and determine their grades.


Help for students using `turnin'

For purposes of the following examples, we will use as our course cs1005, and as an assignment we will use "lab3".

How to turn in files

Students turnin files by issuing the command:
/cs/bin/turnin submit cs1005 lab3 filename

Multiple filenames may be submitted at once from the command-line, for instance:

/cs/bin/turnin submit cs1005 lab3 file1 file2 file3
/cs/bin/turnin submit cs1005 lab3 *.c *.h

Will work. If you turn in a file that you've previously turned in, the new submission will OVERWRITE the previous one, so be careful. Also note that filenames which contain spaces will not function correctly with turnin, since the spaces inside the filenames will be interpreted as delimiters between separate filenames.

Verifying files turned in

Students may check which files they have turned in by issuing the command:

/cs/bin/turnin verify cs1005 lab3

This will give a directory listing of files you have submitted for lab3 in cs1005.

How to check grades

Students can check their grades by issuing the command:
/cs/bin/turnin getgrade cs1005 lab3


Help for TAs using `turnin'

For purposes of the following examples, we will use as our course cs1005, and as an assignment we will use "lab3".

Initializing projects

To setup a homework assignment or project, use the command

/cs/bin/turnin grader createAssign cs1005 lab3

You can use whatever name you'd like for the assignment... lab1, assign1, hw1, but please don't use the class-name, i.e., `cs1234-hw1' . The students will need to know the exact name of the assignment or they will be unable to submit anything.

The "CreateAssign" command will setup the directories necessary for the students to turnin their files for that project.

NOTE WELL: when created, an assignment is set to be "closed". This means that students will not be able to submit their work yet. In order to let them submit assignments, you must use the command:

/cs/bin/turnin grader openAssign cs1005 lab3

Closing assignments, and dealing with late submissions.

In order to close an assignment, use the command

/cs/bin/turnin grader closeAssign cs1005 lab3

This will prevent students from doing further submissions and allow you to create deadlines and the like. An assignment can be re-opened with the "openAssign" command after it has been closed, if you make a mistake.

If you would like to allow LATE assignments, there is a "setLate" command, which is similar in usage to the "cloasAssign" function described above. Students will still be able to submit their homeworks as normally, but the files submitted will be marked as late. Here's an example:

/cs/bin/turnin grader setlate cs1005 lab3
Currently, there is not a way to `un-late' the assignment. If you set an assignment to be late by mistake, write to system@cs.wpi.edu and ask for the late-marker to be removed.

Getting files submitted by the students

In order to get the files that have been submitted by the students, use the command:

/cs/bin/turnin grader getFiles cs1005 lab3 5

This will copy out all the submitted files for lab3 in cs1005, section 5. NOTE WELL: THE FILES WILL BE COPIED INTO THE CURRENT DIRECTORY YOU ARE IN, SO WATCH OUT. If the section is large this may use a lot of disk space, and if you're doing this in your home directory, you might go over quota.

The way around this space problem is to make a directory for your self in /tmp on the machine you're logged into, CD into that directory, and extract your section's files in there. Here is a list of commands to do this:

cd /tmp
mkdir dirName
cd dirName
/cs/bin/turnin grader getFiles cs1005 lab3 5

You would replace "dirName" with some other word. Your username, for instance.

Making grades available

You can set grades for a student's work by using the command

/cs/bin/turnin grader setgrade class assignment username

For instance:

/cs/bin/turnin grader setgrade cs1005 lab3 ghamel

You will get a short instructional message describing the usage of setgrade. At this point you can enter text at your terminal, which the student will see in entirety when they use `getgrade'. Enter as many lines of text as you want, and at the end, type a Control-D on a new line in order to finish the student's grade.

The numeric grade should be entered on the first line of your entry. If you do not do this, TA-getgrade commands (listed below, see `listing students' grades') will not function correctly. If you make a mistake in entering the text, you can call the `setgrade' command again, and whavever you entered previously will be over-written. The grade should be a single number, not a fraction or a decimal number.

Adding students and/or groups in the middle of a term

If a student joins the course in the middle of the term, use the command:

turnin grader addStudent cs1005 username section# Real Name

So, in order to add Mike Voorhis to section 5 of cs4731, the following would be the command:

turnin grader addStudent cs4731 mvoorhis 5 Mike Voorhis

The user mvoorhis would then be able to submit assignments and do all the things a normal student would be able to do.

Getting copies of your class list

A grader-command, `classList' has been added which will send the contents of the class list of your course to the screen. The command is:

turnin grader classlist [course]
For example:
turnin grader classlist cs2005

Will send the whole class list to your screen. Some classes can have a lot of students, so you might want to redirect the output of this command to a file in your directory, so that you can then look at the output with an editor, or with more. You can redirect the output to a file this way:

turnin grader classlist cs2005 > outputFile

This way instead of going to your screen (and scrolling up and away into hyper-space), the output will go into a file called (in this case) outputFile. You can then run `more outputFile' or use an editor on the output.

Listing files submitted by students.

If you're curious to see what files a student has submitted for a particular homework, use the following:

turnin list cs1234 labX username

This will list the files submitted by `username' in the class (in this case, cs1234), for cs1234's homework called `labX'.

Listing students' grades.

There are a few different ways to list student grades. You can list a student's specific grade for an assignment, you can list all grades for an assignment, or you can list all grades for a course.

List grades for a specific studens't assignment.

You can list a student's grade for a specific assignment with the command:

turnin getgrade cs1234 hwX username

This will print the entire grade-file for `username' to your screen. Everything that was typed in by the grader will be displayed.

List a class's marks for an assignment.

To list all the grades received by students in a course for a specific assignment, use the command:

turnin getgrade cs1234 labXX

Assuming you entered the grades correctly (see `Making grades available', above), you will see output similar to the following:

CCC> turnin cs1234 lab1
grades for cs1234, assignment lab1
username : 20
user2 : 20
user3 : NS
frosh4 : 20
sopho5 : NG

Where numbers are listed, that is the grade the student was given on the top line of the grade-file. If you see something that isn't right, you can check the student's grade with the student/assignment specific getgrade call (above). If the gradefile is not correct, you can reset the grade with `setgrade'.

`NS' means that there was no submission. The student has not turned in any homework for the assignment.

`NG' means that the student turned in homework, but there is no grade for that homework.

Listing grades for a course.

To list grades for an entire course, you can use the command:

turnin getgrade cs1234

Which will produce the following sort of ourput:

CCC> turnin getgrade cs1234
grades for cs1234.

The fields of the output are defined on the second line of output... i.e., the first field is the username of the student, followed by a colon, followed by the grade for `HW1', followed by a colon, followed by the grade for `lab1'.


Installing 'turnin'

Turnin no longer needs to be installed for each course that will use it. Simply call the program as it is installed in /cs/bin/turnin.


[Feedback] [Search Our Web] [Help & Index]

[Return to the WPI Homepage] [Return to CS Homepage]

webmaster@cs.wpi.edu / 29 Oct 1999.