Keith J. O'Hara

teaching

CMSC 143

Object-Oriented Programming with Robots (F2016)

overview | logistics | schedule | announcements | assignments | labs | resources

Tentative Schedule (changes frequently)

week date topics concepts introduced readings work assigned
1 8/29/2016 course introduction algorithms syllabus; "What is CS?" by Newell, Perlis & Simon
8/31/2016 computation abstraction; meta-programs; universality What is Computation? by Ian Horswill
8/4/2016 personal robots statements; comments; functions LCwR Ch. 1 & Ch. 2; TP Ch. 2 lab 1
2 9/5/2016 robot brains functions LCwR Ch. 3; TP Ch. 3 Sing and Dance Assignment
9/7/2016 randomness expressions; variables; types TP Ch. 2; TP Ch. 6.1-6.3; LCwR Ch. 4
9/9/2016 making music LCwR Ch. 8 on Sound (pp 169-) lab 2
3 9/12/2016 making decisions conditionals TP Ch. 5.1-5.7 & LCwR Ch. 5
9/14/2016 repetition recursion TP Ch. 5.8-5.13;TP Ch. 6.4--6.9
9/16/2016 teleoperation lab 3
4 9/19/2016 iteration for; while TP Ch. 7
9/21/2016 interpreters strings; sequences TP Ch. 8
9/23/2016 robot behavior LCwR Ch. 6 lab 4
5 9/26/2016 EXAM 1
9/28/2016 importing data storage hierarchy; file IO TP Ch. 14
9/30/2016 word play TP Ch. 9 lab 5
6 10/3/2016 exporting data file IO; CSV; format strings TP Ch. 14
10/5/2016 software design debugging; testing; design-by-contract defensive programming
10/7/2016 HTML lab HTML tutorial lab 6
7 10/10/2016 FALL BREAK
10/12/2016 images pixels; nested loops LCwR Ch. 9 Movie Assignment
10/14/2016 sfx lab lab 7
8 10/17/2016 analyzing images rgb segmentation READING ON VISION
10/19/2016 anaglyph images parallel loops
10/21/2016 motion detection background subtraction lab 8
9 10/24/2016 movies lists TP ch.10
10/26/2016 collecting and analyzing data accumulator idiom; modules Accumulator Pattern
10/28/2016 film strips lab 9
10 10/31/2016 EXAM 2
11/2/2016 graphics objects; methods LCwR Ch. 8
11/4/2016 scribbler control panel lab 10
11 11/7/2016 turtle graphics classes; attributes; interfaces TP Ch. 15 Final Assignment
11/9/2016 games TP Ch. 16
11/11/2016 turtle power UML lab 11
12 11/14/2016 new datatypes operator overloading TP Ch. 17
12/16/2016 simulation inheritance; polymorphism TP Ch. 18
11/18/2016 predator-prey simulation lab 12
13 11/21/2016 movie screening
11/23/2016 movie screening II
11/25/2016 THANKSGIVING BREAK
14 11/28/2016 randomness; cryptograms dictionaries TP Ch. 11 & TP Ch. 13
11/30/2016 evaluating algorithms binary search; memoization TP Appendix B
12/2/2016 postfix-python lab 13
15 12/5/2016 functional programming tuples; sets TP Ch. 12; python data structures; functional programming
12/7/2016 ADVISING DAY
12/9/2016 project workshop
16 12/12/2016 review & presentations
12/14/2016 EXAM 3
12/16/2016 PROJECT PRESENTATIONS