Week 1
Topics: Basics + Data types + Functions + Conditionals + Loops + Intro to strings
Lecture 1.1 Video
Slides
Notes
Lecture 1.2 Video
Slides
Notes
Lecture 1.3 Video
Slides
Notes
Lecture 1.4 Video
Slides
Notes
Lecture 1.5 Video
Slides
Notes
HW 1.1 (due May 17, 5pm)
HW 1.2 (due May 18, 5pm)
HW 1.3 (due May 19, 5pm)
HW 1.4 (due May 22, 8pm)
Week 2
Topics: String operations and methods + Monte Carlo method + Style + Top-down design + Lists (1d) + Graphics
Lecture 2.1 Video
Slides
Notes
Lecture 2.2 Video
Slides
Notes
Lecture 2.3 Video
Slides
Notes
Lecture 2.4 Video
Slides
Notes
Lecture 2.5: Review
HW 2.1 (due May 25, 5pm)
HW 2.2 (due May 26, 5pm)
HW 2.3 (due May 29, 8pm)
Week 3
Topics: 2d lists + Basics of efficiency + Searching and Sorting + Sets and Dictionaries
Lecture 3.1 Video
Slides
Notes
Lecture 3.2 Video
Slides
Notes
Lecture 3.3 Video
Slides
Notes
Lecture 3.4: Review
HW 3.1 (due June 1, 5pm)
HW 3.2 (due June 4, 5pm)
Week 4
Topics: Animations + Object-Oriented Programming (OOP) Part 1
Lecture 4.1 Video
No slides
Notes
Lecture 4.2 Video
No slides
Notes
Lecture 4.3 Video
Slides
Notes
HW 4.1 (due June 9, 5pm)
HW 4.2 (due June 11, 5pm)
HW 4.3 (due June 13, 5pm)
Week 5
Topics: OOP Part 2 + Recursion
Lecture 5.1 Video
Slides
Notes
Lecture 5.2 Video
Slides
Notes
Lecture 5.3 Video
Slides
Notes
Lecture 5.4 Video
Slides
Notes
Lecture 5.5: Review
HW 5.1 (due June 15, 5pm)
HW 5.2 (due June 18, 2pm)
Week 6
Term project week.
Click here for the term project gallery.