15-112 Tentative Schedule

Week 1

  • Welcome, Administrivia
  • What is Programming? What are Programs? How are they Born? Etc.
    Ints, Floats, Strings, Operators, Console Input, Type casts
  • File Output, If-Elif-Else, While Loops, Functions
  • Lists, Tuples, Sets, Dictionaries, For loops, Range, Command-Line Arguments
  • Recitation, Reinforcement

Week 2

  • No class - Memorial Day
  • Exam #1
  • continue, break, exceptions
  • Strings in detail
  • Exceptions
  • Driving Deeper: Sets and Dictionaries

Week 3

  • Recitation, Reinforcement
  • Sorting, slicing, multiple assignment, etc
  • Nesting collections
  • Recursive programming, call stack, mechanics, possibly tail recursion and recursion removal
  • Recursive thinking and problem solving

Week 4

  • Recitation, Reinforcement
  • Exam #2
  • Tkinter Graphics
  • Events and Animation
  • Driving Deeper: File I/O, Pickling

Week 5

  • Recitation, Reinforcement
  • Generators and Coroutines
  • Regular Expressions
  • Object-Oriented Python
  • Threads and Threaded Programming

Week 6

  • Recitation, Reinforcement
  • SQL, Databases, Interacting with databases
  • Network and Web Programming
  • Review, Course wrap-up
  • Final Exam -- The best is saved for last