CS 112 Schedule - Fall 2017

1 Notes

  • all projects will be announced throughout the semester, with their actual deadlines based on when we get them posted; we'll always give you enough time. The goal is to have Sunday evening deadlines, so that you get all weekend to work on it, and can use late tokens into the next week when there are more office hours. It is extremely unlikely that deadlines will be moved.
  • Zyante readings are due Monday night, the week after they are listed. However, it's most useful to attempt (perhaps finish) before that week's related lecture topics.
  • There are three kinds of Lab:
    • Exercise, due Monday after the lab day
    • Quiz, taken in-lab on paper and pencil in about 15 minutes
    • Task, taken in-lab on a computer in about 40 minutes

2 Readings

  • LIB readings refer to the Python Standard Library (online, free)
  • LANG readings refer to the Python Language Reference (online, free)
  • ZY readings refer to our online Zyante textbook Make sure you're logged in to get credit for reading and exercise completion!
    • due by the end of the following Monday; example: read ZY 1, ZY 2 by end of day, Monday 9/4.

3 Schedule

week of: Lecture Topics Labs Readings (pre-lecture)
M:8/28 course intro L1E: install Python 3.6 due M 9/4 ZY 1 (Intro), 2 (Variables and Expressions)
  numbers, expressions, types   LIB (4.4): numeric types
  strings, printing   LANG (2.3-2.3.1): identifiers and keywords, (2.5): operators
M:9/4 (Monday, no classes - Labor Day) L2E: functions due M 9/11 ZY 3 (Types), 4 (Functions Pt 1)
  variables   LANG (2.1.3): comments, (2.1.8) indentation
  user input, comments, errors   LIB (2 built-in functions)
  algorithms, flow charts    
M:9/11 booleans L3E: conditionals due M 9/18 ZY 5 (Branching)
  selection statements (if stmts) (try testing script) LANG (6.9-6.10) comparisons, boolean operations
  basic debugging   LIB (4.1-4.3) truth-value testing, boolean operations, comparisons
      LANG (8.1) if statements
M:9/18 looping statements: while/for L4T: conditionals due M 9/25 ZY 6 (Loops)
      LANG (8.2-8.3) while, for statements
M:9/25 lists (+tuples, strings) L5E: loops, sequences due M 10/2 ZY 7 (Strings), 8 (Lists)
      LIB (4.6.3) mutable sequence operations
      LIB (27.3-27.4) python debugger and commands
M:10/2 testing code L6Q: sequences and LIB (4.7.1) String methods
  programming with functions string formatting LIB (4.7.2) string formatting with % (see ZY 3.7)
      LIB (6.1.3) String format method (see ZY 7.5)
M:10/9 (Columbus Day Shuffle) NO LAB no readings (study!)
  TEST 1 (R 10/12)    
       
M:10/16 parameters, return values L7E: functions due M 10/23 ZY 9 (Functions Pt 2)
  scope, mutability    
  modules    
M:10/23 dictionaries, sets L8Q: functions due M 10/30 ZY 10 (Modules), 11 (Dictionaries)
      LIB (4.9-4.10) sets, mapping types
M:10/30 file input/output L9E: dicts, files due M 11/6 ZY 12 (Files)
M:11/6 exceptions (basics) L10E: exceptions due M 11/13 ZY 13 (Exceptions)
      LANG (4.2 Exceptions, 7.8 raise statement)
M:11/13 classes and objects L11E: classes no readings (study!)
  TEST 2 (R 11/16)    
M:11/20 methods NO LAB due M 11/27 ZY 14 (Classes)
  (no class Wed/Thurs)    
M:11/27 exceptions and classes L12T: classes  
       
M:12/4 recursion L13E: recursion due THURS 12/7 ZY 15 (Recursion)
  review / class evals final review  
    lab evals  
Exam Week Common Exam time, to be announced (no more lab!) (good luck studying!)
  (for other classes, Check Exam Schedule)