CMU 15-112 Schedule
Spring 2017

Week Dates Event / Topics Quizzes / Homeworks / Practice
Week
#1
Mon 16-Jan
to
Fri 20-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) (15-190-hw1)
week1-practice (due never)
check1 (due Tue 17-Jan at 10pm)
lab1 (due Thu 19-Jan at 10pm)
hw1 (due Sat 21-Jan at 8pm)
Week
#2
Mon 23-Jan
to
Fri 27-Jan
Loops
Optional: Gaussian Elimination + Power Sum Polynomials (15-190-hw2)
quiz1 (on Tue 24-Jan)
week2-practice (due never)
check2 (due Tue 24-Jan at 10am)
lab2 (due Thu 26-Jan at 10pm)
hw2 (due Sat 28-Jan at 8pm)
Week
#3
Mon 30-Jan
to
Fri 3-Feb
Strings
Style
Top-Down Design + Testing + Debugging
Peer Tutoring starts this week
Optional: How to Build a CPU + Assembly Programming (15-190-hw3)
quiz2 (on Tue 31-Jan)
week3-practice (due never)
check3 (due Tue 31-Jan at 10am)
lab3 (due Thu 2-Feb at 10pm)
hw3 (due Sun 5-Feb at 6pm)
Week
#4
Mon 6-Feb
to
Fri 10-Feb
Graphics
1d Lists and Tuples
Fri 10-Feb: Deadline for xfer to 15-110
Optional: QuickSort, RadixSort (15-190-hw4)
quiz3 (on Tue 7-Feb)
week4-practice (due never)
check4 (due Tue 7-Feb at 10am)
lab4 (due Thu 9-Feb at 10pm)
hw4 (due Sat 11-Feb at 8pm)
Week
#5
Mon 13-Feb
to
Fri 17-Feb
2d Lists
Event-Based Animations (Getting Started)
quiz4 (on Tue 14-Feb)
week5-practice (due never)
check5 (due Tue 14-Feb at 10am)
lab5 (due Thu 16-Feb at 10pm)
hw5 (due Sun 19-Feb at 8pm)
Week
#6
Mon 20-Feb
to
Fri 24-Feb
Event-Based Animations
Optional: Priority Queues, Heapsort, Huffman Coding (15-190-hw5)
Optional: Sun 26-Feb, 12:30pm-4:30pm: 15-112 Puzzle Hunt!
quiz5 (on Tue 21-Feb)
check6 (due Tue 21-Feb at 10am)
lab6 (due Thu 23-Feb at 10pm)
hw6 (due Sat 25-Feb at 8pm)
Week
#7
Mon 27-Feb
to
Fri 3-Mar
Midterm review (no new topics this week)
Optional: 1-Player AI (A*) (15-190-hw6)
quiz6 (on Tue 28-Feb)
week7-practice (due never)
check7 (due Tue 28-Feb at 10am)
No lab this week (skip lab7)
hw7 (due Sat 4-Mar at 10pm)
Week
#8
Mon 6-Mar
to
Fri 10-Mar
Midterm review
Thu 9-Mar: Midterm #1
Fri 10-Mar: Mid-Semester Break (No Classes)
hw8 (due Wed 8-Mar at 10pm)
no quiz or lab this week (skip lab8, quiz7)
no more checks this semester
--
Mon 13-Mar
to
Fri 17-Mar
Spring Break (No Classes) no quiz or hw this week
Week
#9
Mon 20-Mar
to
Fri 24-Mar
Efficiency
Sets and Maps (Dictionaries)
Functions Redux (part 1)
Exceptions
Optional: Digit recognition with Machine Learning (Eddie) (15-190-hw7)
Optional: Sat 25-Mar: Microsoft Kinect Workshop
week9-practice (due never)
no quiz this week (skip quiz8)
lab9 (due Thu 23-Mar at 10pm)
hw9 (due Sat 25-Mar at 8pm)
Week
#10
Mon 27-Mar
to
Fri 31-Mar
Object-Oriented Programming (OOP) (part 1)
Recursion (part 1)
Optional: Webapps Parts 1+2 (Rohan+Arman) (15-190-hw8)
quiz9 (on Tue 28-Mar)
lab10 (due Thu 30-Mar at 10pm)
hw10 (due Sat 1-Apr at 8pm)
Week
#11
Mon 3-Apr
to
Fri 7-Apr
Object-Oriented Programming (OOP) (part 2)
Recursion (part 2, except sorting)
Term Project Assignment
Optional: Misc Tkinter/Python Demos
Optional: Quick Tour of Python Libraries, Modules, and Applications
Optional: Using web API's with Python
TA-led Mini-Lectures (Attend any 1 of your choice) (15-190-hw9)
Mon 5:30 PM MM A14 Functional Programming
Mon 6:30 PM MM A14 3D Graphics
Tue 5:30 PM SH 125 Android Development
Tue 7:30 PM DH A302 Parallel Programming
Tue 8:30 PM DH A302 Pygame I
Wed 6:30 PM MM A14 Socket Based Multiplayer games in TKinter
Wed 7:30 PM MM A14 Databases
Wed 8:30 PM MM A14 OpenCV
Thu 6:30 PM MM A14 Arduino
Thu 7:30 PM MM A14 Machine Learning
Thu 9:30 PM MM A14 Audio In Python
Fri 6:30 PM MM A14 Data Structures
Fri 7:30 PM WEH 7500 Pygame II
Fri 8:30 PM MM A14 Game AI (Minimax, Dijktra's, and A*)
Optional: Thu 6-Apr: Anki Cozmo Workshop
Optional: Sat 8-Apr to Sun 9-Apr: 15-112 Hackathon!
quiz10 (on Thu 6-Apr)
week11-practice (due never)
lab11 (in Wed+Fri recitations)
hw11 (due Fri 7-Apr at 10pm)
Week
#12
Mon 10-Apr
to
Fri 14-Apr
Midterm review
Thu 13-Apr: Midterm #2
no more quizzes or hw's this semester
Week
#13
Mon 17-Apr
to
Fri 21-Apr
Functions Redux (part 2)
TP Peer Discussions
Optional: Various Python Topics + "112 relics" (notes)
Thu 20-Apr to Sat 22-Apr: Carnival (No Classes)
Week
#14
Mon 24-Apr
to
Fri 28-Apr
Monte Carlo Methods
NP-Completeness + The Halting Problem
Optional: How to write a programming language
Optional: Fri 28-Apr: HRT Machine Learning Workshop (5:30pm-9:00pm)
Week
#15
Mon 1-May
to
Fri 5-May
Optional: Programming with a Social Conscience
Optional: Internships and Jobs
TP User-study-a-thon
TP Last-minute-OH
Thu 4-May at 7:30pm: Term Project Presentations (McConomy)
Term Project (due Thu 4-May at 4:30pm)
Finals
-- Fri 12-May, 5:30pm-8:30pm: Final Exam
Room Andrew Id's
DH 2210AAA*** to HYU***
DH 2315IAN*** to MOO***
DH 2302MRO*** to RUJ***
DH 1212RZH*** to TJA***
DH A302TSA*** to ZZZ***