Each week, there will be a paper quiz on the lecture notes, reading, submitted programs, and online lab exercises.
There will also be weekly walk-throughs ("code reviews") where you explain one of the programs you wrote for homework 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.
# | Deadline: | Quiz Topics: | Code Review Topics: |
---|---|---|---|
#1 | Wednesday, September 6 | Quiz 1: Academic Integrity Policy (certify that you have read and understood it) and introductory survey. | Code Review 1: Code Review Demo (come find out how to do it!) |
#2 | Wednesday, September 13 | Quiz 2: Turtles and Loops: Focuses on the turtle and for-loops covered in notes from Lecture 1 and Lab 1. | Code Review 2: Hello, World! (Program 1) |
#3 | Wednesday, September 20 | Quiz 3: Strings, Loops and Unix: Focuses on concepts covered in Lab 2 such as string, input and range functions, as well as the Unix commands introduced there. |
Code Review 3: Explain variations on a turtle program (Programs 2-5)
Strings and loops (Programs 6-8) |
#4 | Wednesday, September 27 | Quiz 4: Colors, Hex & Unix: Focuses on concepts covered in Lab 3, such as the use of colors with turtles and hexadecimal number representation, as well as the Unix commands introduced there. | Code Review 4: Turtles, colors, and images (Programs 11-14) |
#5 | Wednesday, October 4 | Quiz 5: Images, Decisions, & Unix: Focuses on concepts covered in Lab 4, such as using if-statements as well as the Unix commands covered there. Expect questions on image slicing similar to examples from Lecture 04. | Code Review 5: Image & string slicing (Programs 15-19) |
#6 | Wednesday, October 11 | Quiz 6: Logical circuits & expressions; see examples from Question 3 on old finals and from Lab 5. | Code Review 6: Circuits, decisions, and type conversion (Programs 20-25) |
#7 | Wednesday, October 18 | Quiz 7: Using pandas for data processing; see examples from Lab 6 and Lecture 6. | Code Review 7: NYC Population Data (Programs 27 and 28) |
#8 | Wednesday, October 25 | Quiz 8: Review of topics from Labs 1-7 (including Unix commands and shell scripting). | Code Review 8: Programs 31 - 35 |
#9 | Wednesday, November 1 | Quiz 9: Using the value_counts() function and top-down design; see examples from Lab 8. | Code Review 9: Programs 36 - 39 |
#10 | Wednesday, November 8 | Quiz 10: Using folium to generate HTML maps, regular expressions; see Lab 9. | Code Review 10: Programs 40 - 43 |
#11 | Wednesday, November 15 | Quiz 11: Covers topics from Lab 10; generating random numbers and using while-loops | Code Review 11: Programs 45 - 48 |
#12 | Wednesday, November 29 | Quiz 12: Lab 11, machine language (MIPS) |
Code Review 12: MIPS (Programs 49 and 50) |
#13 | Monday, December 11 | Quiz 13: Lab 12; C++ | Code Review 13: C++ |