The grading for the course will consist of:
The following applies to all homeworks, both written and programming, except the final project, which has a separate late day policy. Each student has two free, no-strings-attached late-days. These are to accommodate things like mild sickness, interviews, procrastination, etc. No additional late days will be granted for any of the above reasons. If you are out of late days, then your homework will receive a score of 0. One “day” is defined as anytime between 1 second and 24 hours after the homework deadline. Late homeworks can be turned in via Gradescope.
You are allowed to discuss solutions to problems in groups of three, documenting who you discussed with at the top of your assignment. You are not allowed to write up the solutions together.
You may not collaborate on any part of programming assignments. This includes discussing solution strategies, sharing code, looking at someone else’s code, using code from online forums (e.g. Stack Overflow), sharing specific test cases, keeping code in a public repository, etc. You may consult any official documentation, such Javadocs or Oracle’s Java tutorials, or any official course material.
TAs must report any instances of cheating during office hours. Both written and programming homeworks are automatically checked for similarity and similar homeworks are also brought up during grading. Any violation of the collaboration policy will be dealt with severely.
Each written assignment and each midterm exam will have a regrade request deadline that will be posted typically one week after the assignment or exam has been returned with your score. Note that solutions will be provided in class, so please consult these carefully before requesting a regrade. Please submit a regrade request via Gradescope by the regrade deadline.
We allow you to indicate small errors (defined below) that you have made, which, when fixed, will allow your programs to pass autograder tests. You will need to fill out a regrade request on Gradescope by the regrade deadline, which is one week after you receive your scores. In the form, you must identify exactly the error in your code and include a precise description of the fix that needs to be made (e.g. line numbers). A small error is a problem whose fix should generally require changing only 1 to 2 lines of code. Your new score will be the maximum of your original score and 80% of your regraded score. Examples of small errors:
We reserve the right not to regrade fixes deemed too large.