CS 150
Introduction to Computer Science

Department of Computer Science
Oberlin College
Tom Wexler

Course Info

Class: MWF 9-9:50 Classroom: King 306
Instructor: Tom Wexler Email: tom.wexler "at" oberlin.edu
Office: King 223 Office Hours: MF 1:30-3pm, T 10-11am
Lab Instructors: Adam Eck and Tom Wexler Lab Rooms: King 201 and 135
Lab (Section 1): W 2:30-4:20 TAs: Isabel Taylor and Sage Vouse
Lab (Section 2): R 1-2:50 TAs: Ryan Gleeson and Samantha Westelman

Lab Helper Hours

Sa Su M W Th
2-4pm Benjamin Levin
[Helen He]**
Michael Simonds
4-6pm Juan B Berretta
[Savannah O'Meara]*
Julian Meltzer
Louis Daligault
7-9pm Adina Johnson
Benjamin Levin
Isaac Pearl
[Helen He]**
Lukas Gnirke
[Michael Simonds]*
9-11pm Jake Ford
Louis Daligault
Louis Daligault Isaac Pearl

General lab helper hours are in the King 201 lab and are open to all students.

During some helper slots, the department also offers safe space hours. These are held in the King 135 lab, and are indicated on the schedule above with * for students of color (4-6 Sat, 7-9 Thurs) and ** for women and transgender students (2-4 Sat, 7-9 Weds).

Helpers should be coaches, not crutches. They are intended to help you with clarification, syntax, and debugging questions; they should not, nor be expected to, actually do the work you need to do. They are there to help you figure out how to learn the skills yourself. You should not use them as your personal tutor, asking them to take you step-by-step through the lab.

Before you ask the lab helpers for help, be prepared to answer the questions from our problem solving tips.

There are no lab helper hours the evenings the labs are due; this is intentional, as we want to strongly encourage you to do the majority of your work prior to the due day. If you are frustrated and stuck, please read our problem solving tips.

Announcements

Welcome to Computer Science 150! Check back here for important announcements throughout the semester.

The course textbook is Zelle, "Python Programming: An Introduction to Computer Science 2nd Edition", Franklin, Beedle & Associates, 2010.

We'll be using i<Clickers in class. Both the clickers and the textbook are available at the campus store. You'll need to register your clicker for the course on Blackboard. Other than the clicker registration, this course won't be using blackboard.

We'll be using Piazza to facilitate discussion outside of class. You can post your own questions, and answer those posed by your classmates. Look for an email invitation to the course Piazza page after the first week.

Tips and Handouts

General Problem Solving Tips

CS 140, 150, and 151: Where Should You Start?

Handout: CS 150 Syllabus

Handout: CS 150 Questionnaire

Installing Python on a Mac

Schedule

-->
Week Date Topic Reading Lab
1 Aug 29 Introduction and Overview [1] Ch. 1 no prelab

lab 01
Aug 31 Variables, Expressions, and Assignment Statements [1] 2.1-5
Sept 2 Expressions, Types, and Loops [1] [2] 3.1-5
2 Sept 5 Labor Day prelab 02

lab 02
Sept 7 Nested Loops [1] 2.6-8
Sept 9 More Loops and Picture Module [1] [2] [3] 4.1-2
3 Sept 12 Boolean Expressions and Conditionals [1] [2] [3] 7.1-3 prelab 03

lab 03
Sept 14 Functions [1] [2] 6.1-3
Sept 16 More Functions [1] [2] [3] [4] 6.4-7
4 Sept 19 Exceptions [1] [2] 7.4-6 prelab 04

lab 04
Sept 21 Strings [1] [2] 5.1-2, 5.5
Sept 23 Lists [1] [2] 5.3, 5.6, 11.1-2
5 Sept 26 More with Lists [1] [2] 11.3 prelab 05

lab 05
Sept 28 2-D Lists [1] [2] [3] 8.1-4
Sept 30 Test 1
6 Oct 3 Recursion [1] [2] 13.2 prelab 06

lab 06
Oct 5 Recursion [1] [2] [3]
Oct 7 Recursion [1] [2] 13.4.1
7 Oct 10 Recursion [1] [2] no prelab

lab 07
Oct 12 Yom Kippur (No classes)
Oct 14 Class Cancelled
Fall Break
8 Oct 24 Induction no prelab

lab 08
Oct 26 Binary
Oct 28 Classes [1] [2] 10.1-2
9 Oct 31 Classes [1] [2] 10.3-4 prelab 09

lab 09
Nov 2 Classes [1] [2] 10.5
Nov 4 Classes and Inheritance 12.4
10 Nov 7 Algorithms: Searching [1] prelab 10

lab 10
Nov 9 Algorithms: Sorting 13.1
Nov 11 Test Review
11 Nov 14 Test 2 no prelab

lab 11
Nov 16 Dictionaries and Sets [1] 11.6
Nov 18 Algorithms: Sorting [1] 13.3
12 Nov 21 Boolean Logic and Circuits no prelab

no lab
Nov 23 Branches of Computer Science
Nov 25 Thanksgiving
13 Nov 28 Order Notation no prelab

lab 12
Nov 30 Critter Tournament
Dec 2 Processes and the Halting Problem
13 Dec 5 Game Theory no lab
Dec 7 Game Theory
Dec 9 Wrap-up
Final Exam: Wednesday, December 14th, 2-4pm in King 306.