Your feedback has been sent to our team.
6 Ratings
Hours/Week
No grades found
— Students
Sections 1
This class was really interesting but a lot of work so I would try to make it your hardest course. I really liked the material but it seemed like Pettit would be reading off the slides for the first time, but all of the lectures are recorded so that is helpful. However, Pettit is very understanding and helpful in Office Hours and it may have just been that he had other priorities this semester.
There is a lot of work for this class. First, we had weekly Problem Sets worth 25% which were really tedious and time consuming. I would definitely recommend working with friends and going to TA office hours for these. We barely got anything back until around halfway through the semester so we had no idea thoroughly these were graded, but they were pretty picky until they switched to just check for completion to grade faster. 20% of the grade came from biweekly Programming Assignments, which were a lot more enjoyable than the PS's but still took a decent amount of time. I would suggest doing these in Python but you can also do them in Java. There are 5 quizzes that make up 50% of your grade (10% each) that are divided into 2 "exams" of 2 quizzes each, then a final. These can be really hit or miss and are based on all of the content for the slides so I would suggest making sure you really understand and can apply those. Readings aren't necessary at all.
Overall this was an interesting but time-consuming class. Make this your most difficult class and try to stay on top of everything!
#tCFS24
The first thing I'll say is that I personally wouldn't recommend taking this class with Pettit. For half of the semester, I went to his lectures and found them very unhelpful. Each class felt like I was watching him see the slides for the first time (which he might have, since they were made by Hott) -- he hesitated a lot and avoided elaborating on complex concepts such as time complexity calculation or why an algorithm worked a certain way. After doing terrible on Quizzes 1 and 2, I started going to Hott's lectures in the morning and he was MUCH better. He was engaging, paced his lectures well, and knew the content for each class through and through. He explained concepts like the max flow theorem etc. very thoroughly and with great examples, and I did a lot better on the last 3 quizzes because of that.
Aside from the instructors, this is a very difficult class. The final grade is composed of:
- 50% from 5 quizzes: Quizzes 1 and 2 are taken together, and same for 3 and 4. Quiz 5 is taken during the final exam time slot, during which you can also take the time to "retake" shorter versions of any of the previous quizzes to gain up to 20 points back on your scores for them.
- 20% from 5 programming assignments: Not that bad, you get a lot of time to do them so I would suggest starting early. You can code in either Java or Python, and are provided with general shell codes for each as a starting point.
- 25% from 10 problem sets: These are extremely difficult and time-consuming, I would highly recommend going to office hours to get help/advice from the TAs (especially on when proofs are required). After a certain point, the teachers decided to grade them based on completion this semester but I don't know if this will be true for future students. The graders are very picky and you will lose a lot of points if you do something off.
- 5% from attendance and course review etc., probably mentioned near the end of the course
Overall, it is a very difficult class but I found the concepts super interesting and fun to put into practice. The assignments are a chore but they teach you how current concepts work pretty thoroughly. Good luck!
P.S. There are course readings in the CLRS textbook, and I did take notes on them. I think they're okay but not necessary, just take notes on them as a supplement if you don't understand something.
#tCFS24
- COURSE -
This is definitely a tough course, but I do think its difficulty is overhyped to an extent. The first time I tried to take this class, I had to withdraw and retake it the following semester due to how frustrating it could be. To succeed in this class, you'll probably need to brush up on your calculus a little bit, and be pretty proficient in OOP principles. You also might want to brush up on some of the more complex data structures you went over in DSA1, like heaps, mergesort, and quicksort. There are bi-weekly problem sets that aren't too bad in my opinion, and I recommend visiting office hours if you feel lost with the instructions. Towards the end of the semester, the professors stopped grading them in terms of correctness because it was taking so long, which definitely helped my grade, but also made the problem sets seem somewhat pointless. The programming assignments can be really tough depending on which one, but on the good side, the autograder usually will tell you what specific test case made your code fail. I found this to be really nice in comparison to some other CS courses' autograders. There are bonus points for submitting PS's and PA's early, but they only give you 2% extra; I'm not really sure how I feel about this. The process of getting an extension is borderline impossible unless you're in the hospital, in court, or a student athlete, which I feel is somewhat unfair. You also have to provide "considerable work" on the assignment, and if you submit even a minute after the deadline without an extension granted, you get a 0. The quizzes are worth 50% of your grade, and can be ridiculously challenging. It's extremely disheartening to be given a problem worth 30 points on one of these quizzes and not know the answer; 30 points on one of these quizzes is worth 3% of your final grade. You really want to study for these, I'd recommend studying the proofs on the slides very heavily. The collaboration policy is also extremely confusing and vague, I think they need to provide more examples of what is and isn't allowed to be collaborated on.
- INSTRUCTOR -
I liked Pettit. He's very chill and approachable, and a decent lecturer. I'll admit that the lectures do get pretty boring at points, but it's not too difficult to review the material outside of them. I'm not sure if Hott will be teaching this class next iteration, but it seemed like he was handling most of the course administration and decisions about the layout of the class. The TAs for this class tend to be pretty helpful, but I did have experiences with some that were really disappointing and unhelpful. There's a help desk email address you can forward questions to, but I'd recommend going in person instead. Emails can get lost and not responded to for weeks after an assignment was due.
Overall, this class is definitely difficult, but not impossible. I wouldn't recommend stacking it with other tough classes, though. The first time I tried to take this class, I paired it with CSO2 which ended up being way too much work, resulting in me withdrawing. I would highly discourage doing that unless you have absolutely no commitments outside of school and are willing to devote the majority of your waking hours to schoolwork.
#tCFS24
Pettit is not a good lecturer. I used to really like him when he taught 1110 but I realized, that is just because the material was easy. This material is dry and it is clear the slides weren't created by Pettit, it was by Hott. Pettit looked like he was looking at the slides for the first time too when he was lecturing and would just read off the board.
This class also does not deserve to be a 3 credit class. The time commitment for this class is insane. Oftentimes, we would have weeks where a problem set and a programming assignment was due the same week, 2 days apart. Before they changed the problem sets to be graded by completion because they couldn't keep up with grading, I used to spend nearly 12 hours a week on that damn problem set where they would be sooo nitpicky with grading criteria. I spent 3 hours a day, 4 times a week, at office hours to TAs who don't have the answer key. The TAs would give me wrong answers that would conflict each other ultimately leading me to get points off on the grading.
The learning curve is steep and not easy from DSA1 or CSO1 to this class. YouTube videos are your best friend at actually teaching you.
#tCFS24
I really enjoyed the content of this class and was genuinely interested in it. However, at times the problem sets could be very confusing and hard to get an understanding of. They offer a 2% extra credit opportunity for submitting problem sets and programming assignments 2 days early so that was helpful. Overall, I enjoyed the material and thought this was a very helpful class for my CS career.
#tCFS24
This class is definitely tough. The material is incredibly interesting and very fun to learn about, but the problem sets can be difficult and the quizzes are unreasonably hard. The bonus for submitting problem sets and programming assignments (2%) is so measly that it seems like insult to injury considering that the "late policy" can basically only be invoked you have a medical/family emergency. The 5 quizzes comprise 50% of your grade and the questions are overly difficult. You do get the option to earn back some points on quizzes, but only up to 10 out of the 100 each one is worth. If the exam structure of this class was different, it would be more enjoyable.
Get us started by writing a question!
It looks like you've already submitted a answer for this question! If you'd like, you may edit your original response.
No course sections viewed yet.