Difference between revisions of "Handin"

From Computer Science
Jump to: navigation, search
(The handin program)
(Checking Your Work With --hwcheck)
 
(13 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
== The handin program ==
 
== The handin program ==
Handin is a program for checking out and handing in assignments.
+
Handin is a program for checking out and handing in assignments.  There is an online manual entry for handin and all associated programs, so you can type:
 +
<pre>
 +
man handin
 +
</pre>
 +
 
 +
at your prompt if you need to refer to the documentation.
  
 
=== Displaying Outstanding Assignments ===
 
=== Displaying Outstanding Assignments ===
 
By itself, executing handin with no additional command line parameters will display all the class assignments and their due dates.  It will also display the last time a specific assignment was submitted, so that you can check your submissions.
 
By itself, executing handin with no additional command line parameters will display all the class assignments and their due dates.  It will also display the last time a specific assignment was submitted, so that you can check your submissions.
  
 +
<pre>
 +
handin
 +
  Assignments:
 +
  h1, due 2020-01-17 23:59:59
 +
    - Last submitted on Sun Jan 12 13:16:16 2020
 +
  h2, due 2020-01-24 23:59:59
 +
</pre>
 +
 +
If your account is not a class account (does not start with something like cs151 or cs500), you can still check, checkout and handin assignments for a specific class using the <code>-c</code> (equivalently, <code>--class</code>) option followed by the class name in question:
 +
<pre>
 +
handin -c cs456
 +
</pre>
 +
 +
would select the cs456 class and then display the assignments for the class.
  
 
=== Checking Out an Assignment ===
 
=== Checking Out an Assignment ===
 +
Assignments can be copied to your directory using the <code>-C</code> or <code>--checkout</code> option followed by the name of the assignment, i.e.
 +
<pre>
 +
handin -C h4
 +
</pre>
 +
would copy the h4 assignment directory to your account where you can then begin working on your assignment.
  
 
=== Submitting Your Assignments ===
 
=== Submitting Your Assignments ===
 +
When you have done some work on your assignment, you an submit your assignment using handin followed by the name of the assignment directory i.e.:
 +
<pre>
 +
cd ~
 +
handin h4
 +
</pre>
 +
will submit the h4 assignment.  Note that this should be done in the parent directory where the assignment directory is.  If you are using your class account for the assignment (e.g., you are logged in with your cs151 account and working on an assignment for cs151), you can also submit from with your assignment working directory:
 +
<pre>
 +
cd ~/h4
 +
submit
 +
</pre>
 +
 +
You can submit your assignment as many times as you like until the due time has passed.  If an assignment allows late submissions, they will be submitted into the late submissions directory.  You should submit early and often, as submitting your assignments can be used as a form of backup.
  
 
=== Grading Notes ===
 
=== Grading Notes ===
 +
Once your assignment has been graded, you may be able to check the grading notes for the assignment using the -g option which will print the grading notes for the assignment, assuming they have been submitted by your professor.
 +
<pre>
 +
handin -g h4
 +
</pre>
  
 +
=== Checking Your Work With --hwcheck ===
 +
Some assignments may allow auto-checking, which can be accessed using the --hwcheck switch to handin.
 +
<pre>
 +
handin --hwcheck h4
 +
</pre>
 +
would check your work for the h4 assignment.  You need to be in the assignments parent directory for the option to work, for that reason there is a helper script called 'check' that streamlines auto-checking your work while you are in the assignment directory.
 +
<pre>
 +
cd ~/h4
 +
check
 +
</pre>
 +
runs the hwcheck on h4 w/o needing to be in the parent directory.  It will also attempt to run make if applicable to build any programs that require building.
  
 
+
In either case, the program checks the output of your program against the output of the instructor's solution on various inputs. If your program is incorrect on any test inputs, this information is printed.
=== Checking Your Work With --hwcheck ===
 

Latest revision as of 12:19, 8 September 2022

The handin program

Handin is a program for checking out and handing in assignments. There is an online manual entry for handin and all associated programs, so you can type:

man handin

at your prompt if you need to refer to the documentation.

Displaying Outstanding Assignments

By itself, executing handin with no additional command line parameters will display all the class assignments and their due dates. It will also display the last time a specific assignment was submitted, so that you can check your submissions.

handin
  Assignments:
  h1, due 2020-01-17 23:59:59
    - Last submitted on Sun Jan 12 13:16:16 2020
  h2, due 2020-01-24 23:59:59

If your account is not a class account (does not start with something like cs151 or cs500), you can still check, checkout and handin assignments for a specific class using the -c (equivalently, --class) option followed by the class name in question:

handin -c cs456

would select the cs456 class and then display the assignments for the class.

Checking Out an Assignment

Assignments can be copied to your directory using the -C or --checkout option followed by the name of the assignment, i.e.

handin -C h4

would copy the h4 assignment directory to your account where you can then begin working on your assignment.

Submitting Your Assignments

When you have done some work on your assignment, you an submit your assignment using handin followed by the name of the assignment directory i.e.:

cd ~
handin h4

will submit the h4 assignment. Note that this should be done in the parent directory where the assignment directory is. If you are using your class account for the assignment (e.g., you are logged in with your cs151 account and working on an assignment for cs151), you can also submit from with your assignment working directory:

cd ~/h4
submit

You can submit your assignment as many times as you like until the due time has passed. If an assignment allows late submissions, they will be submitted into the late submissions directory. You should submit early and often, as submitting your assignments can be used as a form of backup.

Grading Notes

Once your assignment has been graded, you may be able to check the grading notes for the assignment using the -g option which will print the grading notes for the assignment, assuming they have been submitted by your professor.

handin -g h4

Checking Your Work With --hwcheck

Some assignments may allow auto-checking, which can be accessed using the --hwcheck switch to handin.

handin --hwcheck h4

would check your work for the h4 assignment. You need to be in the assignments parent directory for the option to work, for that reason there is a helper script called 'check' that streamlines auto-checking your work while you are in the assignment directory.

cd ~/h4
check

runs the hwcheck on h4 w/o needing to be in the parent directory. It will also attempt to run make if applicable to build any programs that require building.

In either case, the program checks the output of your program against the output of the instructor's solution on various inputs. If your program is incorrect on any test inputs, this information is printed.