CS 111
Spring 2019

Introduction to Computer Science I


Most of the course materials are available on this site using the links in the navigation bar.

The lecture materials (including pre-lecture tasks) and the course announcements are found on Blackboard.

Course information

Course description
The first course for computer science majors and anyone seeking a rigorous introduction. Develops computational problem-solving skills by programming in the Python language, and exposes students to a variety of other topics from computer science and its applications.

(see the staff page for contact information and office hours)

section A1: MWF, 10:10-11:00 am, CAS 522
section B1: MWF, 11:15 am-12:05 pm, CAS B12
section C1: MWF, 12:20-1:10 pm, KCB 101

All students must attend a one-hour lab session.
The lab sections are interchangeable. For example, you could be enrolled in the A1 lecture and a B or C lab section.

Please check your schedule for the location of your lab.

  • Weekly problem sets and final project (25% of the final grade)
  • Exams: two midterm exams (25%) and a final exam (40%)
  • Preparation and participation (10%)

To pass the course, you must earn a passing grade for each of these three components.

CS for All by Christine Alvarado, Zachary Dodds, Geoff Kuenning, and Ran Libeskind-Hadas. This is an online textbook that is available here.
In-Class Software
We will be using the Top Hat platform for in-class activities and attendance. More information will be provided in lecture.
This course is based closely on the CS for All curriculum developed at Harvey Mudd College by Christine Alvarado, Zachary Dodds, Geoff Kuenning, and Ran Libeskind-Hadas. We have also drawn on extensions to that curriculum by Daniel Hyde and his colleagues at Bucknell University.