CMU 15-112: Schedule
Fall 2019

   
Week Dates Event / Topics Quizzes / Homeworks / Practice
Week
#1
Mon 26-Aug
to
Fri 30-Aug
Getting Started
Data Types and Operations
Variables and Functions
Conditionals
Optional: How to Build a Computer (from Gates to CPU's) + "Bits and Bytes"
112-student-contract (due Wed 28-Aug)
writing-session1 (on Fri 30-Aug)
hw1 (due Sat 31-Aug at 8pm)
extra-practice1 (due never)
creative-task1 (optional, due Tue 3-Sep)
Week
#2
Mon 2-Sep
to
Fri 6-Sep
Loops
Graphics, Part 1
Debugging
Optional: Gaussian Elimination + Power Sum Polynomials
quiz1 (on Tue 3-Sep)
writing-session2 (on Fri 6-Sep)
hw2 (due Sat 7-Sep at 8pm)
extra-practice2 (due never)
Week
#3
Mon 9-Sep
to
Fri 13-Sep
Getting Started with VSCode
Graphics, Part 2
Strings
Object-Oriented Programming (OOP), Part 1: Using Objects and Methods
Style + Algorithmic Thinking
Optional: How to Build a CPU + Assembly Programming
Fri 13-Sep: Deadline to transfer to 15-110
quiz2 (on Tue 10-Sep)
writing-session3 (on Fri 13-Sep)
hw3 (due Sat 14-Sep at 8pm)
extra-practice3 (due never)
Week
#4
Mon 16-Sep
to
Fri 20-Sep
1d Lists and Tuples
Object-Oriented Programming (OOP), Part 2: Writing Classes and Methods
Optional: History of Computing
quiz3 (on Tue 17-Sep)
writing-session4 (on Fri 20-Sep)
hw4 (due Sat 21-Sep at 8pm)
extra-practice4 (due never)
Week
#5
Mon 23-Sep
to
Fri 27-Sep
2d Lists
Week5 Case Studies
quiz4 (on Tue 24-Sep)
writing-session5 (on Fri 27-Sep)
No hw this week
extra-practice5 (due never)
Week
#6
Mon 30-Sep
to
Fri 4-Oct
Midterm Review
Thu 3-Oct: Midterm #1
Optional: Sun 6-Oct, 12:30pm-4:30pm: 15-112 Puzzle Hunt!
No quiz, writing session, or hw this week
Week
#7
Mon 7-Oct
to
Fri 11-Oct
Mon 7-Oct: Semester Course Drop Deadline
Event-Based Animations, Part 1: Getting Started with MVC
Optional: Machine Learning
No quiz this week
writing-session7 (on Fri 11-Oct)
hw7 (due Sat 12-Oct at 8pm)
extra-practice7 (due never)
Week
#8
Mon 14-Oct
to
Fri 18-Oct
Efficiency
Sets
Dictionaries
Fri 18-Oct: Mid-Semester Break (No Classes)
quiz7 (on Tue 15-Oct)
No writing session this week
hw8 (due Sat 26-Oct at 8pm)
extra-practice8 (due never)
Week
#9
Mon 21-Oct
to
Fri 25-Oct
Object-Oriented Programming (OOP), Part 3: __Magic Methods__ + Inheritance
Event-Based Animations, Part 2: Using the App Class
Advanced Functions Syntax
Exceptions
Optional: QuickSort, RadixSort, Priority Queues, Heapsort, Huffman Coding
Fri 25-Oct: Community Engagement Day (No Classes)
quiz8 (on Tue 22-Oct)
writing-session9 (on Thu 24-Oct, in lecture)
hw9 (due Sat 26-Oct at 8pm)
extra-practice9 (due never)
Week
#10
Mon 28-Oct
to
Fri 1-Nov
Recursion (part 1)
TA-led Mini-Lectures (Attend any 1 of your choice)
Optional: Sat 2-Nov to 3-Nov, 6:00pm-6:00pm: Hack112!
quiz9 (on Tue 29-Oct)
writing-session10 (on Fri 1-Nov)
hw10 (due Sat 2-Nov at 8pm)
extra-practice10 (due never)
Week
#11
Mon 4-Nov
to
Fri 8-Nov
Mon 4-Nov: Semester Course Withdrawal + Pass/Fail Deadline
Recursion (part 2)
Term Project Assignment
Optional: Quantum Computing
quiz10 (on Tue 5-Nov)
writing-session11 (on Fri 8-Nov)
hw11 (due Sat 9-Nov at 8pm)
extra-practice11 (due never)
Week
#12
Mon 11-Nov
to
Fri 15-Nov
Midterm review
Thu 14-Nov: Midterm #2
no more quizzes, writing sessions,
or hw's this semester
Week
#13
Mon 18-Nov
to
Fri 22-Nov
Intermediate Python Topics
NP-Completeness + The Halting Problem
Optional: How to write a programming language
Week
#14
Mon 25-Nov
to
Fri 29-Nov
Monte Carlo Methods
Wed 27-Nov to Fri 29-Nov: Thanksgiving Holiday (No Classes)
Week
#15
Mon 2-Dec
to
Fri 6-Dec
Programming for Social Good
TP User-study-a-thon
TP Last-minute-OH
Thu 5-Dec at 7:30pm: Term Project Presentations (McConomy)
Term Project (due Thu 5-Dec at 4:30pm)
Finals
-- Tue 10-Dec, 1pm-4pm: Final Exam (Location TBD)