Category | Difficulty |
---|---|
HW | 8 |
Exams | 7 |
This class is an introduction to computer science theory. It is designed to be taken after concepts (21-127 or 15-151/21-128),and is notorius for being one of the most time consuming classes an underclassman could take. Even though the course is in computer science, almost all of the homework will be written proofs. Weekly homework assignments are submitted via writing sessions, which happen weekly on Wednesday evenings.
- Homework: There is a weekly problem set consisting of about 6 questions. There are three types of problems: SOLO, GROUP and OPEN. SOLO problems are designed to be done yourself, and cover material from the current week. GROUP problems are a little harder, and are designed to be done with a group you form with other students in the class (upto 4 people). OPEN problems can be solved with anyone currently in the class.
- Writing Session: One of the quirks of this class is that you submit homework in weekly writing sessions. Three problems are chosen from the current problem set which you then have 80 mins to write solutions up for during this writing session. You are not allowed to refer to notes, your computer, etc.
- Exams: The difficulty of the problems is around the same as SOLO problems (since you're expected to do exams by yourself...). They happen in place of writing session for 3 hours.
- Go to lecture, even though lecture doesn't go over the nitty-gritty of how to solve problems, it gives you an overview of the topic (without which recitation and homework doesn't make sense)
- Go to recitation- this is where TAs walk you through problems and how to do them!
- Go to office hours- The class is hard and the homework is hard. The TAs and the professors are there to help you.
- Read the notes!! Read them over and over again, there's many proofs that only make sense the third time around.
- Find a group you work well with. Contribute during group meetings, and don't be afraid to slow down and make sure you understand all the steps.
- That being said, don't be afraid to switch groups if your current group situation isn't working for you.
- Know the definitions
- Practice writing your solution formally, just like you would for writing session. Often proof ideas break when writing them down, and you'd rather have that happen before writing session than during.
- This class is hard and time consuming. Make sure you're willing to dedicate time towards it.
- Hand-wavy proofs (if you make a claim, don't make the TA think about why that claim is true. If they have to think about it, then your claim is non-trivial and must have a proof)
- A lot of students find the second midterm harder than the first.
Professor Ada usually gives an introduction lecture about proof writing in the first week of class, which covers some good advice that goes hand-in-hand with this guide.