Your feedback has been sent to our team.
175 Ratings
Hours/Week
No grades found
— Students
This was probably my favorite class that I've taken at UVA so far. There are tons of in-depth reviews already so I won't repeat them, but I will add a few comments.
1) This class was a bit less time consuming than previous years (I believe, I could be wrong though) because the going to your lab section was optional this semester - instead, lab sections were open office hours with TAs and the entire lab could just be done remotely. You have to go to your lab section for exams still, so make sure to pick a time that works with your schedule.
2) The labs that are commonly regarded as the hardest ones are 2,5,6, and 10. I would argue lab 2 actually isn't that bad (hear me out here). The primary reason lab 2 is challenging for most people is because it's most people's first time seeing pointers and working with c++. I spent maybe two or three hours learning c++ right before the semester started which allowed me to get ahead with the course early and as a result found lab 2 to be one of the easier labs, as linked lists are a very simple data structure. From personal experience, I highly recommend taking some time before the semester begins to get accustomed to basic c++ if you're worried about getting stuck early. Lab 5 was, in my opinion, the most challenging lab, so make sure to start on that one as early as you can.
3) Attend lecture! Professor Bloomfield is an incredible lecturer - easily the best and most dedicated lecturer I've encountered thus far at UVA.
this was a hard class for me, lots of lab work that could range from a few hours to pulling all nighters. I passed the class and survived but i would recommend the class with Bloomfield, he is the c++ god. dont give up, you can make it. lab 6, 10 were really hard, and 2, linkedlist was hard cause of the jump of scale in hw size/time. final exam was fair, but midterm 2 was a deathtrap.....rip the piazza memes. start early on labs, this semester there were no in lab extensions
I think, simply put, if you're willing to put in the time to start early, attend office hours and work hard to code/debug for hours, pull a few all nighters, you will be fine in this class. Expecting to start assignments last minute and still do well is just infeasible. The tests were pretty hard, but the final was fair. Looking back, I'm SO glad I'm done with 2150, but I do feel like I truly implemented the concepts I learned in class and know pointers/data structures extremely well.
A truly one-of-a-kind class, with Aaron Bloomfield who I firmly believe is the best teacher I have had at UVa.
This class was what I needed to get to the next level as a programmer. By the end, I not only had a comprehensive knowledge of how to program in C++, but also could give the algorithm analysis and intuitions behind my code.
Coding is something that can only be improved with deliberate practice. While comprehensive and sometimes difficult, the labs in this class gave me this practice and more. While it was a tough transition from other classes, it was such an amazing learning experience that I do not think I could have gotten any other way. Grade-wise, I think it is fair to say anyone who dedicates time, starts early enough on assignments, and has a genuine interest in Computer Science can expect to perform well. Taking this in a lighter semester will also allow you to fully appreciate the class which I would recommend also. Regardless, don't listen to rumors saying this class will ruin your life; if you start early you will be totally fine. A few final tips: go to Sunday office hours as the later you go the more packed they will be; ask the professors questions on things you don't understand, the class seems daunting at first, but Floryan and Bloomfield are so knowledgable they will help you instantly just talking to them; do as many past midterms before exams as you can, they're great prep; PSEUDO CODE - this is actually really important - I think one reason I really succeeded on the labs was I drafted out everything first on paper, and walked through it to make sure it made sense - then I started coding and it just flowed easier; code a little test a little - constantly test small parts of your code to make sure the whole thing works - will be way easier when mistakes come up; USE THE DEBUGGER - such an awesome practice you learn in this class that actually saves you loads of time. Again, what a great class. Enjoy the ride.
2150 is a dense course. Bloom does a great job of teaching it but it does go fast and is a lot to take in. The labs take a lot of time and can be frustrating but the TAs are there almost all the time to help during OH. Highly recommend taking if you want to get a better grip on CS but be ready for a few hours of work on labs a week.
Bloomfield was an amazing professor! Throughout the course he was fast paced, but for my eccentric personality, it went great! Even when we went on Coronacation, he was super accommodating, willing to send a flash drive with the rest of the course on it for people without high speed internet for streaming. Sure it can be a decent amount of late nights, and sure it may be considered one of the hardest in the CS curriculum, however, haven gone through it, I feel I can take on any challenge and have a solid grasp on what it really means to code something that's actually worthwhile. Warnings about Labs 2, 5, 6, and 10. Yes these are hard labs. No they are not impossible. It is good to whiteboard these as much as possible, and use the stuff they give you to check your work often! It saved me a lot of hassle especially with trees and hash lab. These labs do not wait until the day before they are due to start, that will lead to a long night of energy drinks and wishing you didn't go to a party that weekend. Overall though, you learn so much that you apply later on, that it's worth it in the end!
Professor Bloomfield is a phenomenal professor and does his best to engage his students through his lectures. He definitely knows what he's talking about and cares about his students. Don't get me wrong, CS 2150 is a hard class. Professor Bloomfield definitely challenges you throughout the semester. It's a lot of assignments back-to-back and can often cause stress, especially while trying to balance with other classwork. But I can say that I learned a lot through this class and that it was well worth it though. You get what you put into this class! I highly recommend taking CS 2150 with Professor Bloomfield.
This was quite possibly one of my favorite courses I've taken at UVA. I found the material super interesting, I think it's really the first CS class where you really feel like a Computer Scientist. The homework may have been difficult, but I also found very fun and rewarding. Professor Bloomfield also did a great job at making the lectures feel useful and interesting. Overall, there is a decent amount of work but I didn't find it unbearable (admittedly I think it was made more manageable since a chunk of the work was cancelled due to the coronavirus).
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.