teaching
CMSC 143
Object-Oriented Programming with Robots (S2015)
overview | logistics | schedule | announcements | assignments | labs | resourcesTentative Schedule (changes frequently)
| week | date | topics | concepts introduced | readings | work assigned | 
| 1 | 1/27/2015 | course introduction | syllabus | ||
| 1/29/2015 | computation | What is Computation? by Ian Horswill | |||
| 1/30/2015 | personal robots | statements; comments; functions | LCwR Ch. 1 & TP Ch. 1 | lab 1 | |
| 2 | 2/3/2015 | robot brains | functions; repetition | LCwR Ch. 2 & 3 | Sing and Dance Assignment | 
| 2/5/2015 | expressions; variables; types; objects | TP Ch. 2 & TP Ch. 3 | |||
| 2/6/2015 | making music | LCwR Ch. 8 on Sound (pp 169-) | lab 2 | ||
| 3 | 2/10/2015 | making decisions | conditionals | TP Ch. 5.1-5.7 & LCwR Ch. 5 | |
| 2/12/2015 | loops; recursion | TP Ch. 5.8- & TP Ch. 6 | |||
| 2/13/2015 | robot behavior | TP ch. 7 & LCwR Ch. 6 | lab 3 | ||
| 4 | 2/17/2015 | iteration | for; while; nested loops | TP ch. 7 | Performance Assignment | 
| 2/19/2015 | interpreters | strings; sequences | TP ch. 8 | ||
| 2/20/2015 | teleoperation | user interface | lab 4 | ||
| 5 | 2/24/2015 | word play | reading from files | TP ch. 9 | |
| 2/26/2015 | randomness; review | LCwR Ch. 4 | |||
| 2/27/2015 | MIDTERM | ||||
| 6 | 3/3/2015 | images | pixels; nested loops | LCwR Ch. 9 | SFX Assignment | 
| 3/5/2015 | anaglyph images | ||||
| 3/6/2015 | motion detection; team performance | background subtraction | lab 5 | ||
| 7 | 3/10/2015 | image processing | What Robots See and watch The Great Robot Race -- Chapter 1: A Hard Problem | ||
| 3/12/2015 | movies | lists | TP ch.10 | Movie Assignment | |
| 3/13/2015 | photobooth | lab 6 | |||
| 8 | 3/16/2015 | SPRING BREAK | |||
| 3/18/2015 | |||||
| 3/19/2015 | |||||
| 9 | 3/24/2015 | collecting and analyzing data | storage hierarchy; file IO; exceptions | TP Ch. 14 | |
| 3/26/2015 | robot cockroach | higher-order functions; map/reduce | LCwR Ch. 7; "Introduction to Functional Programming" | ||
| 3/6/2015 | HTML lab | HTML tutorial | lab 7 | ||
| 10 | 3/31/2015 | CANCELED | |||
| 4/2/2015 | graphics | objects; methods | LCwR Ch. 8 | ||
| 4/3/2015 | MIDTERM | ||||
| 11 | 4/7/2015 | turtle graphics | classes | TP Ch. 15 | Final Assignment | 
| 4/9/2015 | movie screening | ||||
| 4/10/2015 | turtles | lab 8 | |||
| 12 | 4/14/2015 | new datatypes | operator overloading | TP Ch. 17 | |
| 4/16/2015 | image arithmetic | ||||
| 4/17/2015 | image arithmetic | lab 9 | |||
| 13 | 4/21/2015 | simulation | inheritance | TP Ch. 18 | |
| 4/23/2015 | |||||
| 4/24/2015 | predator-prey simulation | lab 10 | |||
| 14 | 4/28/2015 | ADVISING DAY | |||
| 4/30/2015 | randomness | dictionaries | TP Ch. 11 | ||
| 5/1/2015 | postfix python | interpreters | lab 11 | ||
| 15 | 5/5/2015 | evaluating algorithms | binary search | TP Appendix B | |
| 5/7/2015 | review; cryptograms | ||||
| 5/8/2015 | project day | ||||
| 16 | 5/12/2015 | final project presentations | |||
| 5/14/2015 | |||||
| 5/15/2015 | FINAL | ||||