| 8% | Projects (each) |
| 2% | Opening day quiz |
| 15% | Midterm (each) |
| 20% | Final |
The final exam will be comprehensive.
Your grade in the course will be based on your coursework. The GPA you wish to achieve and/or your desire to graduate have no bearing, and I will refuse to listen to any grade begging on that basis.
Students who don't come into class understanding basic object oriented programming and C++ as taught in lower-level CMSC courses will be in considerable pain and in great danger of flunking.
This course has very difficult programming projects that require a substantial time commitment and a deep understanding of C++ and Java. There is no way you can complete a programming project if you start the weekend before it is due. The professor and the TA will give you substantial help on your programming assignments during office hours. You are encouraged to make use of office hours for assistance.
Programming projects will be graded based on correctness. A memory leak is incorrect behavior and you will loose points. A program that you spent a lot of time on and "almost works", but doesn't in fact work on any of the test cases, won't get you any points.
The instructor reserves the right to fail a student for the entire course if the student does not submit on-time a good faith attempt to complete all programming assignments.
You may discuss homework in a general way with other students, but you may not consult any one else's written work. Among other ways to get an XF, you are guilty of academic dishonesty if:
In addition, it is unwise and I strongly discourage you from sitting next to or near by your friend and classmate while you both work on the programming assignment.
Automatic tools will be used to compare your solution to that of every other current or past student. Don't con yourself into thinking you can hide your collaboration. The risk of getting caught is too high, and the standard penalty is way too high (grade of XF). In Fall 1997, I caught 14 students who thought they could hide their collaboration in CMSC 430. I've been catching students cheating on programming assignments since most of you were in elementary school.
If I find reason to believe that a student has cheated on a programming assignment, I may inform the student promptly, or I may decide to silently accumulate evidence against the student on later programming projects.