Sun, 24 Nov 2013, 21:53

My students,

I got email from a student who got a 0 on the 3rd program, even though he
claims the only thing he did wrong was capitalize the "s" in the prompt:
Type a student ID and press Enter.  Usually I show you the student email.
In this case, I can't and still maintain his anonymity.  So, I will simply
paraphrase that he recognizes we stated explicitly that typing anything
different from our instructions would result in a 0.  He goes on to say
that he is really "getting" the hang of programming, and his grades on the
three programs should reflect it.  And now, a 0 because he capitalized
"student."  He asks if there is any way I would be willing to reverse this.

The reason for the 0 is that I need to do something to get some of you
to read the instructions and follow them.  Computers do what you tell them
to do, and if you are not precise, the computer will not do what you want.

With most things, you can catch the error with the Simulator, setting
breakpoints, single stepping, examining contents of memory registers.
I am sympathetic that in the case of a prompt, it is much harder to test.

My TAs hope I can convince you all to read carefully, without giving a 0 for
work that should be close to 100% except for that.  They feel a significant
penalty, but not a 0 will do the job.  My TAs are very persuasive.

So, I am willing to back off, and hope it does not end up encouraging more
students to not read instructions carefully.  IF you got a 0 because of
an error in the format of your output, I am willing to regrade your program 3, 
and instead of you getting a 0, I will deduct 30% for miscopying what we
specified.  In the case that everything else is perfect, this will mean a 
70% rather than a 0.

If your program output did not exactly match the format we specified in the
program description, you are welcome to resubmit the program after correcting
the output formats.  We will (by hand and computer) compare your resubmission
to your original submission.  If your program was correct except for not
following directions, then you will receive 70%, instead of 0.  If we see 
any changes that affect anything other than the format of the output, we
will discard your resubmission with no change in your grade.

In particular, for each key that you inputted:

if your original program outputted a particular name, then your resubmission
must also output the same name,

if your original program showed that the entry does not exist, then your
resubmission must also show that no such entry exists,

if your original program halted the machine, then your resubmission must
also halt the machine,

if your original program displayed nothing, then your resubmission must
also display nothing.

If you wish to resubmit program 3 in accordance with the discussion above,
please do the following:

(1) Fix your program and name the file containing your fixed program

(2) Submit your fixed program in your project 3 directory (project3).  Follow
the standard submission instructions to do so. Start at the "Updating your
Submission Directory" step. You should see an empty "directory.regrade.asm"
file. Follow the submission instructions to upload the directory.regrade.asm
file. Be sure to verify your submission using your internet browser.

You can do this any time between now and the last day of classes.  Please do
not use this as an invitation to have your program 3 regraded for any other
reason.  I recognize that it is tempting; please resist the temptation.
I am doing this only because my TAs have prevailed on me that I can send
a clear message that cavalierly reading specifications is not going to cut it
in computer engineering, and that I can get that message across with a 70%,
it does not have to be a 0.

Good luck with the rest of the course.  See you in class on Monday.

Yale Patt