CS 249 Object-Oriented Programming

Fall 2008

Policy & Submissions Page

INFO | NEWS | PEOPLE | SITN | SCHEDULE | POLICY & SUBMISSIONS | ASSIGNMENTS | GRADES | NOTES

Collaboration and the Honor Code

as suggested by Professor Eric Roberts

Under the Honor Code at Stanford, each of you is expected to submit your own work in this course. On many occasions, however, it is useful to ask others (the TA, the instructor, or other students) for hints and debugging help, or to talk generally about problem-solving strategies and program structure. Such activity is both acceptable and encouraged, but you must indicate on your assignments any assistance you received. Any assistance received that is not given proper citation may be considered a violation of the Honor Code. In any event, you are responsible for understanding and being able to explain the code you submit. The course staff will pursue aggressively all suspected cases of Honor Code violations.


Communications Policy

As a student in this course, you are expected specifically to be able to:

Handout Policy

Handouts containing information for homework assignments, review sessions, lecture notes, schedules, the syllabus, etc. will be made available on this web site. We will not provide paper copies of these handouts either in class or via SITN courier. If you wish to have a printed copy of any of these items you are welcome to print them from your web browser. When printing these pages bear in mind that we reserve the right to change these handouts even after they are posted. We will attempt to keep you informed of such amendments on the newsgroup and/or in class.

Due Dates/Times & Late Policy

All items are due at the time stated on the assignment. Hardcopies for non-electronically-submitted assignments may be submitted in class, during office hours, or in the "Submissions" bin in the cs249 folders (Gates 4th floor handout- hangout, left cabinet, third drawer from the top, left-hand side). We will deduct 10% for each 24-hour period following the due date. We will assign no credit to anything submitted after solutions are handed out. Extensions for extenuating circumstances will be considered at the professor's discretion.

Assignments

We will be requiring electronic submissions for all programming assignments. Please do not make paper copies of electronically submitted assignments for the purpose of "handing them in".

Optionally, you may submit your non-programming assignments electronically using the file submission method below, providing that your work is in an acceptable format. Acceptable formats include ASCII text, PostScript, or HTML. Warning:The HTML must be readable in-place in the submissions directory (i.e. be careful with file references: have no absolute file paths and be sure to submit all files for local x-refs with your HTML document).

All assignments must be submitted to us in a working state. For programming assignments, that means we must be able to do "make clean" to remove object files, executables, and temporary files and "make" must produce an executable that works. For purposes of this class, programs must run on the pod machines. For non-programming assignments, that means that we must be able to read and understand your assignment (this particularly applies if you plan to electronically submit PostScript or HTML). Non-working assignments of any type will receive a very low grade. This low grade will be partially negotiable should you prove that your submission really does work given some small amount of tweaking, but a "tweaking penalty" will in most such cases remain.

We may use electronic grading for some assignments.

Gathering Performance Numbers

During programming projects, many of the questions in the assignment statement will require you to collect performance data for your modified programs. Ideally you would peform this analysis on a set of isolated machines with no other load or with a controlled system load. As this is not possible in a university setting, it is best to try to gather these performance numbers in a short time-frame and during a low-load period. Early in the quarter, the laboratory system load tends to be low from about 11pm to about 10am. Though we do not officially require you to gather your performance numbers during these periods, you will find your numbers to be more representative of such systems under controlled conditions and they may improve the quality of your analysis. This is excepting, of course, extenuating system conditions involving maintainance or equipment failures which are usually done late Saturday or Sunday, depending on the mood of the admins.

File Submissions

You will use a script for submitting your electronic files to us. You must run this script on a pod as it relies on AFS in the cell 'ir.stanford.edu'. This script is /usr/class/cs249a/bin/submit.pl. This script will ask you for information about your group's composition and will attempt to clean up your work directory before compressing and copying your submission (including timestamp) into our receiving area. This script by default invokes emacs to edit your submission files for you. If you don't know how to use emacs, before running the script you may set the environment variable EDITOR to use a different editor (supply a pathname to the binary for the editor that you wish to use). For example,
pod48 ~> setenv EDITOR vi
sets the script to use "vi" instead of emacs.

This submission script will accept up to two submissions for the same assignment. We will grade the submission with the latest timestamp (as determined by our script and by the receiving filesystem). Please submit only once. We have provided a method for you to submit multiple times only as a last resort. Disk space is limited.

Note: This script is designed to be very picky about users providing correct identification and cleaning up their directories before submitting them. It will abort itself if it finds anything "fishy". It will provide you with ample instructions as you progress toward finalizing your submission. If you follow these instructions, submission will go smoothly.

Regrade Policy

As your TAs and instructor we make an effort to try to ensure fair and consistent grades. It is not inconceivable, though, that we may have made a mistake when grading your assignments/exams/etc. We will entertain regrade requests with the following stipulations:
  1. Address your concerns first to the TAs (preferably to the TA responsible for the grade in question) before bringing the issue to the professor.
  2. Regrade requests will only be entertained during office hours or by special appointment (i.e. not during or after class).
  3. Before requesting a regrade, please prepare a clear and concise argument for your stance by doing the following:
  4. We reserve the right to regrade the entirety of any assignment/test for which any regrade is requested.