CSCI 121: CS Fundamentals I


Syllabus   •   Schedule   •   Assignments


Weekly Schedule

Below I will be adding lecture materials as the course progresses. These will be lecture slides, code examples, relevant links, and readings. For the readings
• “PP” is Adam Groce’s text Principled Programming,
• “TP” is the Think Python text, and
• “CP” is the Composing Programs text.


Week 1: scripting; computing values

Reading: the syllabus on the main page of this site.
Lecture 1: course overview; Python introduction.
example code from lecture.
Project 0: set-up.
Homework 1: scripting.
Lecture 2: script execution; conditionals.

Reading: PP Chs. 1.1-1.3; TP Ch. 1 and TP Ch. 2; CP Ch. 1.1 and 1.2


Week 1: scripts; int, float, bool; the if statement

Week 2: loops and iteration

Week 3: functions and procedures

Week 4: lists

Week 5: dictionaries

Week 6: recursion

Week 7: object-orientation

Spring Break

Week 8: higher order functions

Week 9: linked lists

Week 10: efficiency and running time; sorting and searching

Week 11: BSTs

Week 12: exceptions; file I/O

Week 13: review; demo; evaluation