Your feedback has been sent to our team.
25 Ratings
Hours/Week
No grades found
— Students
I'm not a CS major, but I felt that this class provided me with a strong fundamental understanding of data structures, and helped me score offers at top software engineering companies. It also provided me with the tools to learn future CS concepts on my own. Floryan is a fantastic professor who really understands the material. I didn't really find the later labs that interesting, and got bored when we talked about IBCM and Assembly. I think the difficulty of this class is overblown, and that if you're willing to put in the work for the labs you'll be able to do well.
Professor Floryan is one of the best people and professors at UVA. He's such a genuine guy and has such an energetic soul. Found it so easy to pay attention in lecture and pay attention the material.
The material in this class is extremely useful. Foundations for a lot of good software development. Pay attention and understand the material. Use resources wisely. This class will benefit you a lot.
A very informative course, it is so lauded simply due to the fact that this class has multiple personality disorder. This class covers many concepts that are really not directly related to data structures, and those topics are typically the harder ones to deal with. A large amount of the class is working with algorithms, and low level programming (processor level). This class is structured really poorly, but the professors seem to think that it is fine. Lab 5 is probably the hardest lab now (a new version was implemented in our semester) with huffman encoding being a close tie.
Considering how much this class covers, Floryan does a great job keeping the class engaging and explaining the material (as long as you pay attention in class). What's really going to take up a lot of your time are the labs. There's a prelab, inlab, and postlab, and a lot of these can be very time-consuming especially when you don't have a solid understanding of what's going on. Please DO NOT procrastinate on them. Overall, you really have to manage your time, pay attention in class, and make sure you understand the material to do well. There's a nice curve at the end so don't stress too much about your grade, just putting in the effort should be enough.
By far the most rewarding class I've taken at UVA. Bloomfield and Floryan are insanely intelligent and are both great lecturers. This class is a pretty heavy workload (pre, in, and postlab due every week) but this is the class where a lot of concepts in computer science truly began to click for me so it's definitely a worthwhile course.
This course is by far one of my favorites at UVA and I can genuinely say that I have learned a lot. Floryan is an amazing professor and he's very funny. Each week we have a pre lab due on tuesday morning, in lab due tuesday night, and post lab due friday morning. There are no extensions and office hours go from sunday to thursday (excluding tuesday nights). Most of the lab work is in the pre lab and sometimes the in lab. Labs are always easier with groups to work on but still very doable without them. I always worked alone and went to at least half of the office hours each week and got an A on my labs. While the material can be difficult, you will learn a lot and will actually enjoy most of the labs. Please take this course with Floryan and enjoy at least one of your classes!
A lot of people say that 2150 is a class that they really only like after they take it but I honestly have to disagree. 2150 was one of the most fun classes I have ever taken in my career as a CS student in the E School. The course has such a well structured curriculum and over the years, the Professors have been working hard to make it even better. Every lab and every assignment that you get has a purpose and with every pre, in, and postlab, you come out of them learning so much. I won't deny that this course is really challenging and will demand a lot of your time, but I also will say that it is definitely worth the time and effort. Floryan especially was one of my favorite Professors at this University. He makes these funny, corny jokes all the time and always keeps things lighthearted but at the same time, teaches the material really well. When he answers student's questions during class, you can really see how he tries so hard to help the material be as easy for the students to understand as possible. Great professor, great course, nothing bad to say about this class.
Really fun and valuable class. Some of the structure didn't necessarily make sense (putting Assembly and IBCM in the middle of the course) but it was good to learn a lot of different material. I like how the labs incorporate the algorithms well. It was really nice not to have reports this semester so we could focus on the coding.
Hot take: the difficulty is overhyped. If your only exposure to programming is CS 1110 and CS 2110, then this class will be a massive jump in difficulty (still doable though!) If you're coming in with some additional experience, it won't be that bad.
The class, now that it's online, was basically taught asynchronously. Everyone (across all sections/professors), watches the same prerecorded lectures. The synchronous time was used for Q&A, and after about the 3rd class it was clear those could be skipped at no cost. Great class overall - really gives a strong understanding of a variety of topics fundamental to CS. Would highly recommend taking the class before deciding whether or not CS is for you - it's perfect for that. Assignments weren't too hard, but there are some tricky ones so I recommend starting early on them. Some weeks I spent <5 hours on class, some I spent nearly 15. It varies by Lab, but you can find out the lab difficulty pretty easily.
This class was the bane of my existence, it was like I was non-stop doing CS and could never catch a break. There is a pre-lab, in-lab, and post-lab due each week and as soon as one is due, the next assignment is assigned. This is definitely a change from 2110 and 1110, and the level of difficulty increases exponentially. I spent most of my week in office hours doing the labs because they're just so hard. The TAs are godsends though.
I'm assuming most people are taking this class because they have to, so instead of talking about how hard this class was (since I'm sure you've heard enough horror stories), I will provide some tips. Even though this class sucks, Floryan was a great professor and I would rather take his class over any other professor. Definitely get started on your labs early if you can (you can see assignments before they're officially assigned on gradescope!). The exams are on paper (taken during your lab period so choose your time slot wisely), and they don't really involve handcoding. The test questions are more math and conceptual based, and you can see past exams on the website just a heads up. Good luck.
#tCFfall2021
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.