Introduction to Computer Science


Academic Integrity

Academic honesty is required in all your work. Under no circumstances may you hand in work done with (or by) someone else under your own name. Your code should never be shared with anyone; you may not examine or use code belonging to someone else, nor may you let anyone else look at or make a copy of your code. This includes, but is not limited to, obtaining solutions from students who previously took the course or code that can be found online. You may not share solutions after the due date of the assignment.

Discussing ideas and approaches to problems with others on a general level is fine (in fact, we encourage you to discuss general strategies with each other), but you should never read anyone else’s code or let anyone else read your code. All code you submit must be your own with the following permissible exceptions: code distributed in class, code found in the course text book, and code worked on with an assigned partner. In these cases, you should always include detailed comments that indicates on which parts of the assignment you received help, and what your sources were.

Failure to abide by these rules constitutes academic dishonesty and will lead to a hearing of the College Judiciary Committee. According to the Faculty Handbook: “Because plagiarism is considered to be so serious a transgression, it is the opinion of the faculty that for the first offense, failure in the course and, as appropriate, suspension for a semester or deprivation of the degree in that year is suitable; for a second offense, the penalty should normally be expulsion.Be aware that we will be routinely running plagiarism detection software on the lab solutions of students from all sections of CS21.

Please contact me if you have any questions about what is permissible in this course.

Grading Policies

Grades in the course are weighted as follows:

Lab Assignments 40%
Quizzes 30%
Final Exam 25%
Class Participation 5%

Late Policy

Late assignments will not be accepted except in extreme situations and only if you contact the instructor at least a day before the deadline with a legitimate reason for needing extra time. Having deadlines or exams in other classes does not count as a legitimate reason. Labs are due every Saturday evening. Plan ahead!


Quizzes are given at the beginning of class on the days posted in the Schedule. Please arrive at class promptly to ensure that you do not lose time on the quiz. If you are unable to attend class for a quiz, contact me as soon as possible to make appropriate arrangements.

Quizzes are conducted on paper but have a great deal to do with course material. A quiz may ask, for instance, what a given program will do when it is executed. Generally, you must complete the quiz without the use of a computer; practice what you’ve learned in class so you can be prepared!

Lab Assignments

Every student taking CS21 must also be enrolled in a corresponding lab section. Lectures and labs may not be paired: students enrolled for this section (Section 1) of CS21 may be taking a lab that I am not teaching. All sections use the same lab assignments, however, so it’s best if you’re in a lab that fits your schedule.

The lab assignments typically consist of writing or debugging Python programs that complete a certain task (calculate sales, draw a spiral, play a card game, etc.). Labs are typically released on Sunday morning; they are always due on Saturday night (at 11:59 pm). To find your lab assignments, please check the schedule.

Lab attendance is required unless you have already completed your lab for the week on your own time; if you do not attend, we will grade whatever portion of your assignment was submitted by the start of your scheduled lab. Exceptions to this policy are rare and will be made on a case-by-case basis.

Final Exam

The format of the final exam is very much like the quiz, but longer. The manner of questions found on the exam will look very much like those found on the quiz: determine how a program will run, write a function to complete a task, and so forth. By the time you take the final, you’ll have prepared for these questions by taking quizzes all semester. As long as you’re comfortable with those questions, you should have very little to worry about.

This semester, the final exam will be held in SCI 101 on December 11 from 07:00 PM until 10:00 PM.

Class Participation

This portion of your grade is established based upon your engagement in the course. It is not graded stringently: these points are effectively free so long as you attend class, complete the labs, and demonstrate an effort to learn the material. Students who are routinely absent from lecture or otherwise do not interact meaningfully with the course will not receive full credit here. This is an easy way to improve your grade; don’t miss out!

Academic Accommodations

If you believe that you need accommodations for a disability, please contact Leslie Hempling in the Office of Student Disability Services (Parrish 113) or email lhempli1 to arrange an appointment to discuss your needs. As appropriate, she will issue students with documented disabilities a formal Accommodations Letter. Since accommodations require early planning and are not retroactive, please contact her as soon as possible. For details about the accommodations process, visit the Student Disability Service website.

To receive an accommodation for a course activity, you must have an Accommodation Authorization letter from Leslie Hempling and you need to meet with me to work out the details of your accommodation at least one week prior to the activity.

You are also welcome to contact me privately to discuss your academic needs. However, all disability-related accommodations must be arranged through Leslie Hempling in the Office Of Student Disability Services.