Course Policy
Grading
Course grades will be calculated based on the following distribution:
- 45% - Homework/Labs
- 15% - Midterm exam
- 20% - Final exam (not optional)
- 10% - Participation
- 10% - Reading Quizzes (on Blackboard and Zybooks)
The distribution might be adjusted based on the progression of the course.
Programming projects will generally consist of two major components:
- An underlying data structure implementation
- An application of this data structure
If a portion of your program is not working correctly, please clearly indicate it in the comments at the beginning of the file and in the methods that are not working. Problems that I discover are graded more severely than those you discover.
Programming assignments will be graded on both correctness as well as programming style. Good programming style includes the following:
- A descriptive header for each file including author's name
and the date e.g.,
/** * A demonstration header used for the class syllabus. Additional lines * give additional information in JavaDoc. * * @author Roberto Hoyle * Spring 2012 */
- Descriptive and meaningful variable and method names
- Logical organization
- Sufficient comments, but not overly commented
- Appropriate use of white space to separate sections
- Consistent indentation and style
Attendance
Regular class and lab attendance and participation is expected. Please talk to me if regular class attendance is going to be a problem.
Homework Assignments
There will be a number of assignments made in this class. I expect every student to attempt each assignment and turn in the results. You are encouraged to complete every assignment as this is one of the most effective ways to learn the material.
If you know that for some reason you will not be able to submit the assignment before the deadline, you should contact me in advance of the deadline. Extensions are only granted in exceptional circumstances, but need to be done in advance.
Late submissions of lab assignments will be penalized up to 50% per day after the deadline. No late prelabs will be accepted. You will be allowed 1 late day in each half of the semester and 1 late day that can be used whenever (total of 4). You must include the fact that you are using one of your late days in the README document for an assignment.
Accommodations for students with disabilities
If you have a disability that might impact your performance in this course, or requires special accommodation, please contact me as soon as possible so that appropriate arrangements can be made. Support is available through Student Academic Success Programs. You will need to contact them to get your disability documented before accommodations can be made.
Plagiarism and Academic Dishonesty
I have very low tolerance for academic dishonesty, and will vigorously pursue available remedies for any incidents. All work in this class is to be performed according to the Oberlin Honor Code. Specifically I expect that:
- Quizzes and exams will be closed book, closed notes, and no communication between students. This includes discussing the same to students who are taking a quiz/exam at another time.
- Discussion of assignments is expected and encouraged, however all work and code on assignments should be your own without outside assistance.
- Sources should be cited including the textbook and other web sites when you use them in your work.
- You are not permitted to share your source code with other students, including future ones.
- You are not permitted to use other students solutions as your own (even those from a prior semester), nor answer keys, nor instructor versions.
Illustrative examples:
- Confirming that we had and exam is OK, telling another student in the class who has not taken it that it was easy/hard, what topics, etc. is NOT OK.
- On a project or homework, discussing what needs to be done and how it can be done is OK, having a student (other than a TA) go over your code is NOT OK, discussing what might be wrong and how to tell is OK (and encouraged).
- Other than your partner on a given assignment, it is NOT OK to give a student a copy of your code or for them to give you a copy of theirs. As a rule of thumb when discussing the assignments, you should not be writing finished solutions out, and you should be able to independently recreate the material on your own.
- On an assignment, you base your design off of the textbook’s example. This is OK if you cite the source in the code. You don’t need to have it be part of the Javadoc. E.g., /* based on insertion sort from Weiss 3rd Ed, p. 306 */</pre>
All assignments must include the following signed statement:
"I have adhered to the Honor Code in this assignment."
Electronic submissions should include the honor statement in either the README file or header comments and must include your name.
Grader and Tutors
Contact me if you are interested in a Student Academic Services approved tutor.
The CSMC might hold walk-in tutoring sessions as well.
The CS department will be hiring a couple of students to work as lab helpers. They will be in the upstairs lab during the hours posted below.
The most up-to-date list can be found here.