teaching
CMSC 143
Object-Oriented Programming with Robots (S2010)
overview | logistics | schedule | announcements | assignments | labs | resourcesTentative Schedule (changes frequently)
week | date | topics | concepts introduced | readings | labs and homework |
1 | 1/25/2010 | course introduction | syllabus | lab 0 | |
1/27/2010 | computation | What is Computation? by Ian Horswill | |||
1/29/2010 | robot brains | statements; comments; functions | LCwR Ch. 1 & Ch. 2 | ||
2 | 2/1/2010 | personal robots | LCwR Ch. 3 | lab 1 | |
2/3/2010 | expressions; variables; types; objects | TP Ch. 2 | |||
2/5/2010 | parameter passing | TP Ch. 3 | |||
3 | 2/8/2010 | making music | LCwR Ch. 4 & LCwR Ch. 8 on Sound (pp 201-) | lab 2; Sing and Dance Assignment | |
2/10/2010 | making decisions | conditionals | TP Ch. 5.1-5.7 & LCwR Ch. 5 | ||
2/12/2010 | loops; recursion | TP Ch. 5.8- & TP Ch. 6 | |||
4 | 2/15/2010 | robot behavior | TP ch. 7 & LCwR Ch. 6 | lab 3 | |
2/17/2010 | interpreters | strings; sequences | TP ch. 8 | ||
2/19/2010 | teleoperation | user interface | lab 4 | ||
5 | 2/22/2010 | team performance | Performance Assignment | ||
2/24/2010 | collecting and analyzing data | lists | TP ch.10 | ||
2/26/2010 | graphics | objects; methods | LCwR Ch. 8 | ||
6 | 3/1/2010 | etch-a-sketch | lab 5 | ||
3/3/2010 | sharing data | storage hierarchy; file IO; exceptions | TP Ch. 14 | ||
3/5/2010 | randomness | dictionaries | TP Ch. 11 | ||
7 | 3/8/2010 | review session | lab 6 | ||
3/10/2010 | MIDTERM | ||||
3/12/2010 | web pages | ||||
8 | 3/15/2010 | collecting and analyzing data | lab 7 | ||
3/17/2010 | images | pixels; nested loops | LCwR Ch. 9 | ||
3/19/2010 | Web Assignment | ||||
9 | 3/22/2010 | SPRING BREAK | |||
3/24/2010 | |||||
3/26/2010 | |||||
10 | 3/29/2010 | photobooth | lab 8 | ||
3/31/2010 | image processing | What Robots See and watch The Great Robot Race -- Chapter 1: A Hard Problem | |||
4/2/2010 | SFX Assignment | ||||
11 | 4/5/2010 | sharing special effects | code review | lab 9 | |
4/7/2010 | robot brains III | higher-order functions | LCwR Ch. 7 | ||
4/9/2010 | games | classes | TP Ch. 15 | ||
12 | 4/12/2010 | games | lab 10; Movie Assignment | ||
4/14/2010 | turtle graphics | ||||
4/16/2010 | simulation | inheritance | TP Ch. 18 | ||
13 | 4/19/2010 | lab 11 | |||
4/21/2010 | new datatypes | operator overloading | TP Ch. 17 | ||
4/23/2010 | defensive programming | exceptions; pre- and post-conditions | Python Exceptions | Cockroach Assignment | |
14 | 4/26/2010 | ADVISING DAY | |||
4/28/2010 | functional programming | map, reduce, lambda | "Introduction to Functional Programming" | ||
4/30/2010 | evaluating algorithms | memoization; binary search | |||
15 | 5/3/2010 | postfix python | interpreters | lab 12 | |
5/5/2010 | sorting | insertion sort | |||
5/7/2010 | beyond python and myro | Python & Java: A Side-by-Side Comparison; Java for Python Programmers; MediaComp; Jython | |||
16 | 5/10/2010 | lab 13 | |||
5/12/2010 | review | ||||
5/14/2010 | final project presentations | ||||
17 | 5/17/2010 | FINAL | Final Assignment |