It is important to understand that everything involved with turning in your assignment is handled by software, including determining when an assignment is turned in late. It's important that you follow the directions given below to make sure your assignment is not rejected or delayed. If, after reading and understanding this page, you have any questions about turning in your software, be sure to send your questions to me or bring them up in class.
You can do one of two things with your assignment: turn it in or test it. If you turn in your assignment, the code you turn in will be the basis for your grade on the assignment. If you test your assignment, the code you test will be deleted after the test is completed. Testing your code is not turning it in; you must explicitly turn in your code at least once per assignment.
You may submit your assignment as many times as you want, up until the deadline for that assignment. After the deadline has passed, any further attempts to submit your assignment are rejected without penalty and your most recent assignment submitted is retained. If you have not submitted your assignment by the deadline, you may make a single submission with penalty after the deadline; any further attempts to submit after the deadline are rejected. You may test your assignment as many times as you want, whenever you want.
Your assignment must be turned-in from your Monmouth University account. The mailbox software uses various utilities to verify your identity (to the extent that your identity can be reliably verified with e-mail), and those utilities are usually unaccessible when e-mail is sent from outside the Monmouth domain. The mailbox software rejects any e-mail sent from an account it doesn't recognize as belonging to a class member.
send-files
:
where n is the number of the assignment you're turning in (1 <= n <= 7). You can find the assignment number at the top of every assignment page, as well as in the syllabus link from which you found the assignment page./export/home/class/cs-503/bin/send-files -a
n (-t
|-s
) [ files . . . ]
send-files
should be available on any
of the CS department's Solaris or Linux machines.
Give the -t
option to indicate you're testing your assignment; otherwise,
give the -s
option to indicate you're submitting your assignment. You
must give one of -t
or -s
.
[ files . . . ] is an optional list of files. If a list of files is given
on the command line, send-files
will send all and only those files given.
If no list of files is given on the command line, send-files
will send all
the C++ and include files it finds in the directory in which it was called.
send-files
assumes any file ending in the extension .cc
, .C
,
.CC
, or .cpp
to be a C++ file and any file ending in .h
to be an
include file.
When you list files on the command line, you should list only those file found in the current directory; you should not list files found in subdirectories or the parent directory of the current directory.
If you list no files on the command line, send-files
sends only the files
it finds in the current directory, it will not look in other directories for
files. Also, send-files
will send all files it finds, so make sure the
current directory contains only the files you want to send.
The five-minute response time only applies to your Monmouth University mailbox. If you forward your mail somewhere outside Monmouth, such as to Hotmail or Yahoo!, no response-time guarantees can be made, and it can take arbitrarily long to get your reply.
You can reduce the amount of typing you have to do when turning in an
assignment by defining an alias to the send-files program. If you're
running ksh
or bash
as your shell,
add the following line to your $HOME/.profile
file:
alias send-files=/export/home/class/cs-503/bin/send-files
Typing alias send-files
will tell you if send-files
is defined as an
alias and, if it is, to what it is defined:
$ alias send-file send-file: alias not found $ alias send-files send-files=/export/home/class/cs-503/bin/send-files $
Once you've defined the send-files alias, you can type it instead of the full path name:
$ send-files -a1 -s Files sent: check.cc check.h main.cc $
If you've defined an alias, there's no need to use ./
as a prefix to
execute it; in fact, if you use ./
ksh
or bash
won't recognize
the alias:
$ ./send-files -a1 -s /bin/ksh: ./send-files: not found $
If you want more information on aliases, or if you're not running ksh
or
bash
as your shell, see the alias section of the man page for your shell.
You should receive a response within five minutes after sending your e-mail. If everything goes well, your response should look something like this:
From: rclayton@monmouth.edu Date: Wed, 5 Sep 2001 11:35:34 -0400 (EDT) To: rclayton@monmouth.edu Subject: Assignment 1 submit results. $ date Wed Sep 5 11:35:26 EDT 2001 $ ls main.cc tuple.cc tuple.h $ g++ -g -c -ansi -pedantic -Wall main.cc $ g++ -g -c -ansi -pedantic -Wall tuple.cc $ g++ -g -o count-tuples main.o tuple.o $ -- Your e-mail and this reply have been dealt with entirely by software without human intervention. You should not assume any person other than yourself is aware of your e-mail or this reply; in particular, the person who appears to have sent you this reply is completely unaware of both your e-mail and this reply.
For example, if you submit an assignment and realize you've made a mistake, you should wait until you get a reply from your first, incorrect submission before you try a second, correct submission. If you immediately re-submit your assignment again without waiting until you get a reply from your first submission, your two assignments will be competing to be accepted by the turn-in software, and there is no guarantee which assignment will be accepted.
Date: Thu, 30 Oct 2003 20:52:44 -0500 (EST)
Subject: Submitted files
From: s0------@monmouth.edu
To: rclayton@monmouth.edu
When I submitted my files today I first accidentally submitted files in the
wrong directory. I then resubmitted with the correct files. I received the
email for the first submission after I received the email for the second one. I
would like to make sure that the second submission was the one that was
officially submitted at the deadline.
Unfortunately, the first incorrect assignment was the one that the turn-in software accepted, causing this student to fail the assignment.
Testing an assignment has no effect on the assignment that's been submitted, if any.
If your assignment's a lot wrong as the deadline approaches, chances are good it'll still be a lot wrong when you eventually turn it in, which means not only will you get a low score, but you'll also get whacked for the late points. This argues for tuning in your assignment on time and taking your chances with just a low score, rather than going with a guaranteed loss of 5 to 25 points on top of whatever low score you'll probably get.
On the other hand, it depends on what's wrong. Assignments that don't even compile get a grade of no more than 50 (out of 100). Assignments that compile but don't work usually get grades in the range 65-75 (out of 100). In this case it makes sense to take the two or three extra hours it would take to fix your assignment so it compiles; you lose 5 points for being late (assuming you can fix your assignment before midnight) but gain around 15 points for submitting something that compiles for a net gain of 10 points.
The decision is trickier if your assignment works, but you just want to "fix a few, simple things." I have committed some of my worst programming atrocities when I tried to make a few, simple fixes to my code at the last minute. I have learned never to make changes at the last minute, no matter how simple. My recommendation is that you submit you assignment as it is. And if you cannot resist making changes at the last minute, make a copy and change the copy.
n is not the number of times you've submitted your assignment.
From: s0------@monmouth.edu To: rclayton@monmouth.edu Subject: Assignment 1 turn-in mistake. Date: Wed, 04 Feb 2004 09:46:19 -0500 Dear Prof Clayton, While sending my latest assignment 1 files yesterday, I entered the incorrect value for 'n' option argument in the command. I thought 'n' should be the number of times I've submitted the assignment. I didn't realize this was wrong until I checked my email yesterday night.
If we check above, we see that
Make sure you understand what the argument to the -a option is. Make sure you test your understanding by submitting several times before the deadline. Make sure you wait until you get a response from the turn-in software, and make sure you read and understand the response. Failure to follow these recommendations could have an unfortunate effect on your assignment grade, as it did for the student who's e-mail is reproduced in this answer.
This page last modified on 18 January 2006.