Week 1
Topics: Building Blocks of Programming (Data, Functions, Conditionals, Loops)
Lecture 1-1 slides
Lecture 1-2 slides
Homework 1
Additional Notes: Getting Started,
Data and Expressions,
Functions,
Conditionals,
Loops
Week 2
Topics: Algorithmic Thinking (Structuring Code, Problem Solving, Testing, Debugging)
Lecture 2-1 slides
Lecture 2-2 starter code
Homework 2
Additional Notes: Problem Solving,
Testing,
Debugging
Week 3
Topics: Data Representation (Strings, 1D Lists)
Lecture 3-1 slides
Lecture 3-1 code
Homework 3
Quiz1
Additional Notes: Strings,
1D Lists
Week 4
Topics: Producing Output (2D Lists, Graphics)
Lecture 4-1 slides
Lecture 4-1 code
Lecture 4-2 code
Homework 4
Additional Notes: 2D Lists,
Graphics
Week 5
Topics: Interactive Applications (Input/Output Streams, Animations)
Lecture 5-1 slides
Lecture 5-1 code
Lecture 5-2 code
Homework 5
Additional Notes: Input/Output Streams,
Event-Based Animations,
Time-Based Animation,
Animation Demos
Week 6
Topics: Writing Good Code (Metrics of Software)
Lecture 6-1 slides
Quiz2