The purpose of this course is to teach programming in
modern languages, along with best-practice programming habits. We cover Python
for about half the course, then transition to Java (by way of Processing).
This site holds links to lectures, assignments, resources, and other material. Announcements and other updates will normally be done on Piazza. Program submissions and grades will be on Canvas.
| Date |
Lectures |
Readings, Assignments, etc. |
| Aug 27 |
Sudden Python |
Python warm-up exercises (not to be handed in) |
| Aug 29 |
(This will be filled in as the semester progresses.) |
Odds and Evens
Optional
Why is Programming Fun? |
| Sept 1 |
Labor Day (no classes) |
|
| Sept 3 |
Numbers, and other data types |
Concise Python 2
Figurate Numbers |
| Sept 5 |
Fun with Pair Programming  |
|
| Sept 8 |
Lists, tuples, strings |
|
| Sept 10 |
Agile programming |
|
| Sept 12 |
Unit testing |
Three Musketeers
Unit Testing and TDD in Python
|
| Sept 15 |
Scope, references |
|
| Sept 17 |
Strings, exceptions |
|
| Sept 19 |
Input/Output |
HTML Tidy |
| Sept 22 |
Sets |
|
| Sept 24 |
|
|
| Sept 26 |
Dictionaries |
|
| Sept 29 |
Scope again |
Simple Cipher |
| Oct 1 |
|
|
| Oct 3 |
|
Library |
| Oct 6 |
|
|
| Oct 8 |
|
|
| Oct 10 |
Fall Term Break |
|
| Oct 13 |
Extreme Programming |
|
| Oct 15 |
David Rittenhouse Labs (DLRB), A1 |
|
| Oct 17 |
Intro to Processing |
Draw a Picture
Processing cheat sheet #1 and #2 |
| Oct 20 |
Java Syntax |
DodgeEm (zipped) |
| Oct 22 |
Processing classes |
|
| Oct 24 |
Eclipse |
Installing the Processing Plugin
Game |
| Oct 27 |
Condensed Java |
|
| Oct 29 |
Class Structure |
|
| Oct 31 |
Polymorphism |
Negadecimal Numbers |
| Nov 3 |
JUnit |
|
| Nov 5 |
Inner Classes |
|
| Nov 7 |
Abstract Classes |
Array Operations (Layouts) |
| Nov 10 |
Exceptions |
|
| Nov 12 |
Swing |
|
| Nov 14 |
Threads |
Flash Cards |
| Nov 17 |
|
|
| Nov 19 |
Animation |
|
| Nov 21 |
MVC |
Kaleidoscope
Java graphics
Bouncing ball  |
| Nov 24 |
Comments |
|
| Nov 26 |
Day before Thanksgiving (No class) |
|
| Nov 28 |
Thanksgiving break (No class) |
|
| Dec 1 |
Java I/O |
|
| Dec 3 |
More about classes |
Wator |
| Dec 5 |
Bits and pieces |
|
| Dec 8 |
Java O-O summary |
|
| Dec 19 |
Final Exam, 3pm-5pm, David Rittenhouse Labs (DLRB), A4
This exam date/time is set by the Registrar and
is non-negotiable. |
|