CMU 15-112 Schedule
Spring 2016

Week Dates Event / Topics Quizzes / Homeworks / Practice
Week
#1
Mon 11-Jan
to
Fri 15-Jan
Getting Started
Functions
Data and Expressions
Conditionals
Optional: Bitwise Ops + 2's Comp + Boolean Arithmetic + etc
Optional: How to Build a Computer (from Gates to CPU's)
quiz1-practice (due never)
quiz1 (on Fri 15-Jan)
hw1-practice (due never)
hw1 (due Sun 17-Jan at 10pm)
Week
#2
Mon 18-Jan
to
Fri 22-Jan
Loops
Optional: Gaussian Elimination + Power Sum Polynomials
quiz2-practice (due never)
quiz2 (on Fri 22-Jan)
hw2-practice (due never)
hw2 (due Sun 24-Jan at 10pm)
Week
#3
Mon 25-Jan
to
Fri 29-Jan
Strings
Style
Top-Down Design + Testing + Debugging
Optional: Theoretical Foundations of CS
   (Countability + The Halting Problem + NP-Completeness + more)
quiz3-practice (due never)
quiz3 + quiz3x (on Fri 29-Jan)
hw3-practice (due never)
hw3 (due Sun 31-Jan at 10pm)
Week
#4
Mon 1-Feb
to
Fri 5-Feb
1d Lists and Tuples
Graphics
Fri 5-Feb: Deadline for xfer to 15-110
Optional: Markov Chains + Quantum Computing
quiz4-practice (due never)
quiz4 + quiz4x (on Fri 5-Feb)
hw4-practice (due never)
hw4 (due Sun 7-Feb at 10pm)
Week
#5
Mon 8-Feb
to
Fri 12-Feb
Efficiency
Sets and Maps (Dictionaries)
Optional: Finite Automata and Turing Machines + Cryptography
quiz5x-practice (due never)
hw5-practice (due never)
hw5 (due Sun 14-Feb at 10pm)
no quiz this week
Week
#6
Mon 15-Feb
to
Fri 19-Feb
2d Lists
Event-Based Animations (Getting Started)
Optional: How to Build a CPU + Assembly Programming
Optional: QuickSort, HeapSort, RadixSort
quiz6-practice (due never)
quiz6 (on Fri 19-Feb)
hw6-practice (due never)
hw6 (due Sun 21-Feb at 10pm)
Week
#7
Mon 22-Feb
to
Fri 26-Feb
Event-Based Animations
Optional: How to write a programming language
quiz7x (on Fri 26-Feb)
hw7 (due Sun 28-Feb at 10pm)
Week
#8
Mon 29-Feb
to
Fri 4-Mar
Midterm review
Thu 3-Mar: Midterm #1
Fri 4-Mar: Mid-Semester Break (No Classes)
no quiz or hw this week
--
Mon 7-Mar
to
Fri 11-Mar
Spring Break (No Classes) no quiz or hw this week
Week
#9
Mon 14-Mar
to
Fri 18-Mar
Object-Oriented Programming (OOP) (part 1)
Recursion (part 1)
Exceptions
Optional: Basic Webapps + Advanced Webapps (Rohan)
quiz8-practice (due never)
quiz8 (on Fri 18-Mar)
hw8 (due Sun 20-Mar at 10pm)
Week
#10
Mon 21-Mar
to
Fri 25-Mar
Recursion (part 2)
Functions Redux
Optional: Sat 26-Mar: Microsoft Kinect Workshop
quiz9x (on Fri 25-Mar)
hw9 (due Sun 27-Mar at 10pm)
Week
#11
Mon 28-Mar
to
Fri 1-Apr
Object-Oriented Programming (OOP) (part 2)
Term Project Assignment
Optional: Misc Tkinter/Python Demos
Optional: Quick Tour of Python Libraries, Modules, and Applications
Optional: Programming with a Social Conscience
Optional: Using web API's with Python
CA-led Mini-Lectures (Attend any 1 of your choice)
Mon 5 PM DH 2315 Pygame
Mon 6 PM DH 2315 Parallel Programming
Mon 7 PM DH 2315 Web Scraping
Mon 8 PM DH 2315 Image Manipulation with Tkinter
Mon 7 PM DH 2210 Multiplayer Games with Socket
Mon 8 PM MM 103 Using Databases with Python
Mon 9 PM MM 103 Video Processing with OpenCV
Tue 5 PM PH 226C Intro to Machine Learning
Tue 6 PM PH 226C Functional Programming in Python
Wed 7 PM WEH 5421 Cake Cutting and Voting Theory
Wed 8 PM WEH 5421 Prisoner's Dillemma
Thur 5 PM WEH 5409 Intro to Machine Learning Reprise
Thur 6 PM WEH 5409 Android Development
Thur 8 PM WEH 5409 Embedded Systems (Rasberry Pi, Arduino)
Thur 6 PM MM A14 Dynamic Programming
Thur 7 PM MM A14 Graph Theory
Thur 8 PM MM A14 Audio with Python
Thur 9 PM MM A14 3D Games With Tkinter
Optional: 15-112 Hackathon!
hw10 (due never)
Week
#12
Mon 4-Apr
to
Fri 8-Apr
Midterm review
Thu 7-Apr: Midterm #2
Optional: 15-112 Puzzle Hunt!
no more quizzes or hw's this semester
Week
#13
Mon 11-Apr
to
Fri 15-Apr
NP-Completeness + the Halting Problem
Thu 14-Apr to Fri 15-Apr: Carnival (No Classes)
Week
#14
Mon 18-Apr
to
Fri 22-Apr
Monte Carlo Methods
Data Compression with Huffmann Encoding (Rudina)
Optional: Fri 22-Apr, 5:30pm to 9pm: HRT Machine Learning Workshop
Week
#15
Mon 25-Apr
to
Fri 29-Apr
TP User-study-a-thon
TP Last-minute-OH
Thu 28-Apr at 7:30pm: Term Project Presentations (McConomy)
Term Project (due Thu 28-Apr at 4:30pm)
Finals
-- Tue 3-May, 5:30pm to 8:30pm: Final Exam
Room Andrew Id's
DH 2210AAA*** to HSA***
DH 2315HTR*** to NIL***
DH 2302NKI*** to RWO***
DH 1212RYA*** to TRI***
DH 1112TSI*** to ZZZ***