15-112 Schedule 

Fall 2013

Week

Dates

Event / Topics

Quizzes / Homeworks / Practice

Week

#1

Mon 26-Aug

to

Fri 30-Aug

Getting Started

Types, Literals, Variables, Operators, and Expressions

Program Structure and Control Flow, part 1:  Functions

hw1 (due Sun 1-Sep at 10pm)

Week

#2

Mon 2-Sep

to

Fri 6-Sep

Graphics

Program Structure and Control Flow, part 2: Conditionals, Loops

Fri 6-Sep: Deadline for xfer to 15-110

quiz1 (on Tue 3-Sep, thru wk1 + hw1)

hw2 (due Sun 8-Sep at 10pm)

Week

#3

Mon 9-Sep

to

Fri 13-Sep

Data Structures: Sequences, part 1: Strings

Program Properties, part 1:  Style

Problem-Solving with Top-Down Design

quiz2 (on Tue 10-Sep, thru wk2 + hw2)

hw3 (due Mon 16-Sep at 10pm)

Week

#4

Mon 16-Sep

to

Fri 20-Sep

Efficiency

Additional Topics from Weeks 1-3

Optional/Advanced: Sorting Algorithms (quicksort + radixsort)

quiz3 (on Thu 19-Sep, thru wk3 + hw3)

hw4 (due Mon 23-Sep at 10pm)

Week

#5

Mon 23-Sep

to

Fri 27-Sep

1d Lists and Tuples

Optional/Advanced: Countability, The Halting Problem
Optional/Advanced: Matrices and Gaussian Elimination

quiz4 (on Thu 26-Sep, thru wk4 + hw4)
week5-practice (due never)

hw5 (due Mon 30-Sep at 8pm)

Week

#6

Mon 30-Sep

to

Fri 4-Oct

Midterm review

Thu 3-Oct: Midterm #1 (thru wk5 and hw5)
Optional/Advanced: Priority Queues, Heapsort, Huffman Coding

no quiz or hw this week

Week

#7

Mon 7-Oct

to

Fri 11-Oct

2d Lists
2d List Case Studies: WordSearch, Connect4, Othello
Sets and Maps (Dictionaries)
Exceptions
File IO (Reading)

no quiz this week

hw6 (due Wed 16-Oct at 8pm)

Week

#8

Mon 14-Oct

to

Fri 18-Oct

Object-Oriented Programming (except Inheritance)
Fri 18-Oct: Mid-Semester Break (No Classes)
Optional/Advanced: 1-Player AI (DFS, BFS, DFS+ID, A*)

quiz5 (on Thu 17-Oct, thru wk7 + hw6)

no required hw over mid-semester break
optional-hw42 (due Mon 21-Oct at 10pm)

Week

#9

Mon 21-Oct

to

Fri 25-Oct

Functions Redux
Animations
Animation Case Study:  Snake

quiz5b (on Thu 24-Oct, thru wk7 + hw6)

quiz1-retake (times vary)

hw7 (due Mon 28-Oct at 8pm)

Week

#10

Mon 28-Oct

to

Fri 1-Nov

Object-Oriented Programming (Inheritance)
Animation with Classes
Case Study: Animation, BoardGame, and OthelloBoardGame Optional/Advanced: 2-Player AI (Minimax, Alpha-Beta)

quiz6 (on Thu 31-Oct, thru wk9 + hw7)

quiz2-retake (times vary)

hw8 (due Tue 5-Nov at 11:59pm)

Week

#11

Mon 4-Nov

to

Fri 8-Nov

Recursion

quiz7 (on Thu 7-Nov, thru wk10 + hw8)

hw9 (due Sun 10-Nov at 10pm)

Week

#12

Mon 11-Nov

to

Fri 15-Nov

Term Projects

    Term Project Assignment
    Quick Tour of Python Libraries, Modules, and Applications
    Programming with a Social Conscience
    Miscellaneous Python / Tkinter Demos

Thu 14-Nov: Midterm #2 (thru week11 and hw9)
Optional/Advanced:  Term Project Module Help

no hw this week

Week

#13

Mon 18-Nov

to

Fri 22-Nov

Modules
File and Web IO
Monte Carlo Methods
Intractability + NP-Completeness

Optional/Advanced:  How a Computer Works

quiz3-retake + quiz4-retake (in recitation)

Week

#14

Mon 25-Nov

to

Fri 29-Nov

Fun Topic: A 112-literate View of Multiplication

Wed 27-Nov to Fri 29-Nov: Thanksgiving Holiday (No Classes)
Optional/Advanced:  How a Programming Language Works

optional/mini-hw10 (due Mon 2-Dec, 10pm)

Week

#15

Mon 2-Dec

to

Fri 6-Dec

Term Project User-Study-A-Thon
Term Project Presentations

Optional/Advanced:  Advanced Iteration / Combinatorial Iterators

quiz5-retake (on Tue 3-Dec)
quiz6-retake and quiz7-retake (in recitation)

--

--

Tue 10-Dec, 5:30pm-8:30pm:  Final Exam
   DH 2210: Andrew Id's from AAA*** to KEO***
   DH 2315: Andrew Id's from KEP*** to SSG***
   DH 2302: Andrew Id's from SSH*** to ZZZ***