Professor
Owen Astrachan
TA
Nicoleta (Nicole) Popoviciu
UTAs
These books are reasonably priced at the Duke bookstore. If you do buy books from amazon click through from here and contribute to undergraduate computer science research at Duke.
We're using C++ as implemented using g++ 2.95. It's possible to install this on windows machines as well as on Linux machines.
You should use xemacs/emacs to edit files. This editor has built in support for color-coding, supports multiple buffers, and is great at editing HTML files too! You might want to use the .emacs file in ~ola/newuser/.emacs which will ensure that your code is indented according to CPS coding conventions.
Sparc clusters are found in Teer 106, 139 Hudson Hall, Soc/Psych 133, Bio-Sci 002CC, and Carr 125. All programs/projects will be submitted electronically. You are responsible for ensuring that all files are submitted on time .
To receive a grade in the A range on programs you must exceed expectations. This means you must do everything required extraordinarily well or you must do more than is required and do this well. In other words, to earn an A you must do more than merely meet the requirements, you must go beyond them.
In order to earn an A+ you must do several of the optional assignments. These points count even if you don't earn an A+.
| major programming assignments | 35% |
| written/homework assignments | 15% |
| quizzes/groupwork | 5% |
| tests (2) | 24% |
| final exam | 21% |
Assignments turned in on time receive no penalty. Assignments turned in up to two days late incur a 10% penalty. Assignments turned in more than two days late incur a 25% penalty. Assignments will not be accepted after one week has passed from the due date.
You will be given four free late days. A free late day can waive or reduce the penalty if an assignment is turned in late. These free late days will automatically be counted starting with the first assignment turned in late until the free late days are used up. At that point, late days will begin to incur penalties.
If you're having trouble, be sure to see a UTA/TA and preferably the professor in charge of the course as far before the due date as possible. Don't give up, ask for help.
Points on assignments will vary. Later assignments may be worth more or less than previous assignments.
Quizzes and Exams taken in class must be your own work.
You can work with others on quiz questions given out at the beginning of the week on which actual quiz questions are based.
On programming assignments, you may consult with professors, and TAs/UTAs about any aspect of the assignment. You may consult with other students only in a general way, e.g., about debugging or C++ issues, or questions about wording on the assignment. You cannot actively work with someone unless the assignment specifically grants permission to work together with another student.
Consult means you can discuss the programs before writing code, and get help with debugging your program, but you should write your own code. Writing one program and making multiple copies of it is NOT acceptable! For each assignment you are expected to include a list of the people with whom you have consulted (including students, TA's, tutors, professors).
Exams will be held during the lecture time and in the same room as the class. The final will also be in the same room as class.
The tests will be closed book. For the final you'll be allowed to use your books/notes.