Please submit all assignments on Autolab.
When you have a question at Office Hours, submit your name via the OH Queue.
Week 1 - Building Blocks
Hw1: due Friday 7/5 at 12pm
Monday: Data, Variables, and Functions -
slides
Tuesday: Graphics and Algorithmic Thinking -
slides
Wednesday: Lab
Thursday: 4th of July, no class
Friday: Lab
Advanced: Language Types -
slides & hw bonus,
additional reading
Week 2 - Control Flow
Hw2: due Friday 7/12 at 12pm
Monday: Conditionals and Loops -
slides
Tuesday: Nesting, Testing, and Debugging -
slides
Wednesday: Lab
Thursday: Problem Solving with Complex Control Flow - Button Pattern
Friday: Lab
Advanced: Recursion -
slides & hw bonus,
additional reading
Week 3 - Data Structures
Hw3: due Friday 7/19 at 12pm
Monday: Strings and Lists -
slides
Tuesday: Aliasing, 2D Lists, and Objects -
slides -
code
Wednesday: Lab
Thursday: Problem Solving with Data Structures - Data Analysis
Friday: Lab
Advanced: Dictionaries, Trees, and Graphs -
slides & hw bonus
Week 4 - Interaction
Hw4: due Friday 7/26 at 12pm
Monday: Quiz on content from weeks 1-3
Tuesday: Interaction and Events -
slides
Wednesday: Lab
Thursday: Quiz Review / Problem Solving with Interaction - Memory Game
Friday: Lab
Advanced: User Interfaces -
slides & hw bonus
Week 5 - Application
Hw5: due
Monday 8/5 at 8:30pm
Monday: Side-scrolling and Time-based Animation -
slides -
side-scrolling code -
animation code
Tuesday: Randomness and Monte Carlo Methods -
slides -
code
Wednesday: Lab
Thursday: Problem Solving with Application - Snake -
slides -
code
Friday: Lab
Advanced: Python Modules -
slides
Week 6 - Computer Science
Monday: Lab
Tuesday: Limits of Computation -
slides -
Marco's slides
Wednesday: CS Ethics -
slides
Thursday: Quiz on content from weeks 4-6
Friday: No class: project presentations!