Each week, there will be an paper quiz on the lecture notes, reading, submitted programs, and laboratory exercises.
There will also be weekly walk-throughs ("code reviews") where you explain one of the programs you wrote to a teaching assistant. Code reviews are integral to software design and development: explaining your coding decisions and convincing another it works correctly leads to improvements in the design and lessens unexpected behaviors and errors.
|Quiz:||Deadline:||Quiz Topics:||Code Review Topics:|
|#1||Monday, 3 Feburary||Academic Integrity Policy (certify that you have read and understood it) and a short survey (reasons for taking course, etc.).||Code Review Demo (come find out how to!)|
|#2||Monday, 10 Feburary||Turtles and Loops: Focuses on the turtle and for-loops covered in notes from Lecture 1 and Lab 1.||Explain "Hello, World!" (Replicate Demo)|
|#3||Tuesday, 18 Feburary||Strings and loops: this quiz asks questions that are variations on Programs 1-7.||Explain variations on a turtle program (Programs 2-4)|
|#4||Monday, 24 Feburary||
Character Coding and Unix: The character coding focuses on the ord() and char() functions introduced in Lab 2.
The Unix topics are from the end of Lab 2 and Lab 3. For the style of question, see Question #1b of previous final exams. Those questions contain additional Unix commands (covered in later labs); this quiz will only have those we have covered thus far: ls, ls -l, pwd, cd, mkdir, cp, and mv.
|Strings and loops (Programs 5-8)|
|#5||Monday, 2 March||Loops and Color: The focus on loops for this quiz is looping through strings and using range() and notes from Lectures 2 and 3. This quiz also asks about the various ways to represent color (e.g. by name, by percentage, and by hexcode). See the short answer parts of Question #2 of previous final exams for examples for the colors.||Explain how characters are stored (e.g. chr() and ord()), string methods, and looping through strings (Programs 9-11)|
|#6||Monday, 9 March||Decisions: This quiz has questions about if statements. a good way to study is to review the examples from Lab 4 and the notes from Lecture 4.||Explain RGB-color channels used for turtles and images (Programs 12-14 and 17)|
|#7||Monday, 16 March||Truth tables, logical expressions and circuits: See Question #3 on old finals for examples.||CANCELED - Instructional Recess|
|#8||Monday, 6 April||Unix and Pandas: The Unix part covers through Lab 5: relative and absolute paths and ls, ls -l, pwd, cd, mkdir, cp, and mv. See the examples from Lecture 6 and Lab 6 to study for the Pandas questions (more problems available on old finals: at least one of #6 and #7 on each exam).||Explain if-statements, logical expressions, and circuits (Programs 23-26)|
|#9||Monday, 20 April||Functions: For sample questions, see Question #4 (tracing function calls) and Question #7 (writing functions) on old finals.||Demonstrate programs using pandas dataframe. (Programs 27-28)|
|#10||Monday, 27 April||Folium & Top-down Design: The top-down design question comes from the example covered in Lab 8 as well as Question #5 (design) on old finals. For the Folium question, see Lab 9 and the notes from Lecture 9.||(Programs 33,35,36)|
|#11||Monday, 4 May||Indefinite Loops & Simulations: See the notes from Lectures 9 & 10 and Lab 10 for examples of indefinite loops and the random library.||(Programs 37-41)|
|#12||Monday, 11 May||Simple C++ Programs: For sample questions, see Question #9 on old finals.||C++|