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: |
---|---|---|---|
#0 | Thursday, 5 September | Academic Integrity Policy (certify that you have read and understood it) and a short survey (reasons for taking course, etc.). | No code review this week |
#1 | Thursday, 12 September | Turtles and Loops: Focuses on the turtle and for-loops covered in notes from Lecture 1 and Lab 1. | Explain variations on a turtle program (Programs 2-4) |
#2 | Thursday, 19 September | Strings and loops: this quiz asks questions that are variations on Programs 1-7. | Explain how a loop works (Programs 4-6) |
#3 | Thursday, 26 September |
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. |
Explain how characters are stored (e.g. chr() and ord()), string methods, and looping through strings (Programs 7-11) |
#4 | Thursday, 10 October | Loops and Color: The focus on loops for this quiz is using range() and more on looping through strings (Programs 8-11 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 RGB-color channels used for turtles and images (Programs 12-15) |
#5 | Thursday, 17 October | 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. | Demonstrate programs that have Input-Process-Output (IPO) design pattern, arithmethic, and loops (Programs 16-20) |
#6 | Thursday, 24 October | Truth tables, logical expressions and circuits: See Question #3 on old finals for examples. | Explain if-statements, logical expressions, and circuits (Programs 22-25) |
#7 | Thursday, 31 October | 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. | Explain accessing structured data via the pandas package (Programs 26-27,31-32) |
#8 | Thursday, 7 November | Functions & More Pandas: For function questions, see Question #4 (tracing function calls) and Question #7 (writing functions) on old finals. 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,7, or 8 on each exam). | More Pandas & Logical Expressions (Programs 30,34-37) |
#9 | Thursday, 14 November | 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. | Functions & More Pandas (Programs 33,38-41) |
#10 | Thursday, 21 November | Indefinite Loops & Simulations: See the notes from Lectures 9 & 10 and Lab 10 for examples of indefinite loops and the random library. | While Loops & More Functions (Programs 42-45, 47-48) |
#11 | Wednesday, 27 November | Simplified Machine Language & More Unix: For sample questions, see Question #1b (Unix) and #8 (simplified machine language) on old finals. | Unix & Machine Language (Programs 28, 49-52) |
#12 | Thursday, 5 December | Simple C++ Programs: For sample questions, see Question #9 on old finals. | C++ (Programs 53-60) |
#13 | Thursday, 12 December | End-of-semester survey: a quick survey of what you liked about the course and your future plans (full credit given for filling out the survey). | No code review this week |