15-112 Schedule
Fall 2014
Week | Dates | Event / Topics | Quizzes / Homeworks / Practice |
#1 |
Mon 25-Aug to Fri 29-Aug |
Getting Started Types, Literals, Variables, Operators, and Expressions Program Structure and Control Flow, part 1: Functions Optional/Advanced: Bitwise Operators + 2's Complement Optional/Advanced: How to Build a Computer (from Gates to CPU's) |
hw1 (due Sun 31-Aug at 10pm) practice-thru-week1 (due never) |
#2 |
Mon 1-Sep to Fri 5-Sep |
Conditionals Loops Optional/Advanced: Gaussian Elimination + Power Sum Polynomials Fri 5-Sep: Deadline for xfer to 15-110 |
quiz1 (on Thu 4-Sep, thru week1+hw1) hw2 (due Sun 7-Sep at 10pm) |
#3 |
Mon 8-Sep to Fri 12-Sep |
Top-Down Design
Style Testing and Debugging Graphics in Tkinter Optional/Advanced: How to Build a CPU + Assembly Programming |
quiz2 (on Thu 11-Sep, thru week2+hw2) hw3 (due Sun 14-Sep at 10pm) |
#4 |
Mon 15-Sep to Fri 19-Sep |
Strings
Optional/Advanced: Countability and the Halting Problem Optional/Advanced: Complexity and NP-Completeness |
quiz3 (on Thu 18-Sep, thru week3+hw3) hw4 (due Mon 22-Sep at 10pm) |
#5 |
Mon 22-Sep to Fri 26-Sep |
1d Lists and Tuples
Basic Interactive Graphics, Part 1 Exceptions Optional/Advanced: Heaps, HeapSort, RadixSort |
quiz4 (on Thu 25-Sep, thru week4+hw4) hw5 (due Sun 28-Sep at 10pm) |
#6 |
Mon 29-Sep to Fri 3-Oct |
Efficiency
Optional/Advanced: Heaps, PQ's, and Huffman Coding |
quiz5 (on Thu 2-Oct, thru week5+hw5) hw6 (due Sun 5-Oct at 10pm) |
#7 |
Mon 6-Oct to Fri 10-Oct |
2d Lists
Sets and Maps (Dictionaries) Basic Interactive Graphics, Part 2 Optional/Advanced: Combinatorial Iterators (Krypto, Cryptarithms, ...) |
quiz6 (on Thu 9-Oct, thru week6+hw6) hw7 (due Sun 12-Oct at 10pm) |
#8 |
Mon 13-Oct to Fri 17-Oct |
Midterm Review
Thu 16-Oct: Midterm #1 Fri 17-Oct: Mid-Semester Break (No Classes) |
no quiz this week no hw this week |
#9 |
Mon 20-Oct to Fri 24-Oct |
Object-Oriented Programming (OOP)
Optional/Advanced: Markov Chains Sat 25-Oct (10am-4pm): Microsoft Kinect Hack Day |
no quiz this week hw8 (due Mon 27-Oct at 10pm) |
#10 |
Mon 27-Oct to Fri 31-Oct |
Recursion
Optional/Advanced: 1-Player + 2-Player AI |
quiz7 (on Thu 30-Oct, thru week9+hw8) hw9 (due Wed 5-Nov at 8pm) |
#11 |
Mon 3-Nov to Fri 7-Nov |
Functions Redux
File IO Event-Based Programming and Animation Miscellaneous Tkinter/Python Demos Quick Tour of Python Libraries, Modules, and Applications Term Project Assignment Optional/Advanced: Webapps + Git |
quiz7-retake (on Tue 4-Nov, thru week9+hw8) quiz8 (on Thu 6-Nov, thru week10+hw9) hw10 (due Sun 9-Nov at 10pm) |
#12 |
Mon 10-Nov to Fri 14-Nov |
Midterm Review
Thu 13-Nov: Midterm #2 Optional/Advanced: Natural Language Processing (NLP) |
no more quizzes this semester no more hw's this semester |
#13 |
Mon 17-Nov to Fri 21-Nov |
Lecture+Lab: Monte Carlo Methods
Lecture+Lab: Steganography Mini-Lectures (Attend any 1 of your choice): Tue 8pm: A: Data Analysis + Data Visualization in R [Sunny] Tue 9pm: B: Graph Algorithms [Evan + Ben] Wed 6pm: C: Quantum Computing [Anil] Wed 7pm: D: Advanced Image Processing [Tim] Wed 8pm: E: Parallel alg's/functional programming [Sunny] Wed 9pm: F: Machine Learning [Xiaote] Thu 8pm: G: Robotics [Alex + Andrew] Thu 9pm: H: Arduino and Raspberry Pi [Tommy] |
tp1 (due Wed 19-Nov at 8pm) |
#14 |
Mon 24-Nov to Fri 28-Nov |
Optional/Bonus: Cryptography [Jordan]
Wed 26-Nov to Fri 28-Nov: Thanksgiving Holiday (No Classes) |
tp2 (due Wed 26-Nov at 8pm) |
#15 |
Mon 1-Dec to Fri 5-Dec |
Term Project User-Study-a-thon
Term Project Last-Minute Office Hours Thu 4-Dec at 8pm: Term Project Presentations |
tp3 (due Thu 4-Dec at 4:30pm) |
Mon 8-Dec to Fri 12-Dec |
Tue 9-Dec, 5:30pm - 8:30pm: Final Exam DH 2210: Andrew Id's from AA*** to HY*** DH 2315: Andrew Id's from IC*** to RN*** DH 2302: Andrew Id's from RO*** to VR*** DH 1212: Andrew Id's from VS*** to ZZ*** Optional/Advanced: How to write a programming language |