Samrat Bhattacharjee

This professor has taught: CMSC216H, CMSC417, CMSC711, CMSC798, CMSC818C, CMSC818X, CMSC818Y
Information Review
Samrat Bhattacharjee
CMSC417

Expecting an A
Anonymous
01/17/2024
The review from 09/25/2023 sums it up perfectly. It's a difficult class, but with that difficulty comes growth. This is THE class I think I learned the most from ever. I agree with the other student's advice, start early! The projects have very clear requirements and I was never surprised with my grade. I felt that both the project aspect of the course and the theoretical aspect of the course were beneficial, and I am now a stronger programmer, with a much stronger understanding of how pretty much everything works.
Samrat Bhattacharjee
CMSC417

Expecting a C-
Anonymous
01/16/2024
He will literally not move on to the next topic until all questions are answered. Friendly, funny, and knowledgeable professor. Quite merciful with grading. I got a C- even though I flunked most projects and all exams. He's also quite fascinating to converse with on Piazza. Unfortunately, he unknowingly assumes you know certain concepts about networking. He also goes too fast in class. If you take the time read the notes posted on Reddit, you'll be fine. They reflect his content better than his own notes. Another complain I have is that I could not connect the concepts he was talking about. I only learned a bunch of seperate protocols. But overall, great professor. Definitely take him.
Samrat Bhattacharjee
CMSC417

Expecting an A
Anonymous
12/25/2023
The projects are a massive pain and will stress you out. Bobby himself can also be kind of abrasive as a professor. That said, he is probably one of the best lecturers I've ever had, and the content is consistently interesting. Exams are generally fair content-wise, but are graded harshly. Definitely learned a lot, but I would be very careful taking this class alongside other difficult courses.
Samrat Bhattacharjee
CMSC417

Expecting a C-
Anonymous
12/15/2023
Bobby is a textbook example of the entitled narcissist professors you see in college movies. His lectures are okay, except for the fact that he will openly berate students he doesn't deem intelligent by interrupting their questions before they have a chance to ask them in full, with the excuse that it's "To keep the class on track" while allowing his obviously favorite students to fully ask questions he afterwards deems just as incorrect. The projects are a complete nightmare. Only Chord and BitTorrent had a lecture dedicated to them, and those lectures were essentially useless to implementing the projects. He gives you 2 weeks to complete the project, and I can attest that you will need every minute of those 2 weeks. Project scores required 15-20 hours to get a 50% in my experience. There are no public or release tests given, and the rubric in the assignment does not match the grades i.e. the first project said you'd get an A if your server could handle multiple clients. Mine could and I got a 55% because of some corner cases I didn't test with my client, NOT my server. The only saving grace in this class are the exams. With a cheat sheet or open note they're actually doable. I usually was 10-15% above the class average on the exams, which if there is a curve should help me pass this class. Only take this class if you are <=14 credits including it (as I was at 17 and this class is easily a 4 or 5 credit in terms of project load), you are not taking any other hard classes like ENEE440, and if you really like networking, though you can definitely learn this better in your own free time with a couple of Github repos and articles. I would give this class 2 stars, but simply because of how rude and arrogant of a person Bobby is, I have to give it the 1 star. I hope and pray that Bobby can grow as a person and treat all of his students with respect, and ultimately improve the assignments so that they are reasonable in comparison to the rest of UMD's 400 level classes
Samrat Bhattacharjee
CMSC417

Expecting a B-
Anonymous
11/02/2023
You are expected to put in an exceptional amount of effort. DO NOT take with any other hard classes
Samrat Bhattacharjee
CMSC417

Anonymous
09/25/2023
One of the worst professors at UMD. Avoid at any cost. Will not record lectures nor let anyone record them, will not provide lecture notes or anything that will help students. Will expect students to know everything. The projects will ask you write your own starter code which will take hours before you can even begin with the actual project. For my other 400 level CS classes, the projects took me an average of 2-4 days, but this class projects took me at least a week. Bobby also never taught anything related to the projects. No tests were given to students where we could check our code is working as per requirements or not. So basically the projects were open ended and if you don't start early, you're screwed.
Samrat Bhattacharjee
CMSC417

Expecting a W
Anonymous
01/18/2023
Bobby is a nice and good professor, but the projects in this class are the worst. I've been fine in all other CS courses I've taken but every project in this class seemed like it was taking up my entire week. You don't learn anything related to projects in class and if you don't start super early you're screwed. I took a W even though I had fine project grades and did decent on the well exam because I didn't feel like it was worth the stress of ruining my weeks for the projects. I've gotten A's in all other cs classes and have never even considered dropping a class until this class. I should've listened to the other reviews when they talked about projects bc I didn't believe them at first :(
Samrat Bhattacharjee
CMSC417

Expecting a D
Anonymous
01/11/2023
The review left on 11/19/2022 sums up Bobby perfectly. "Bobby is your stereotypical grandiose narcissist who has a valid reason to be narcissistic" is a very good way to put it. His lectures can be very engaging since he is highly knowledgeable, funny, and interacts with his class often, but whether it be on piazza or in lecture, he will berate you infront of everyone; although; will help you nonetheless. Bobby is a cool dude and does have a soft side, It just sucks because there are more instances where he is hella rude than decent. There was one instance during a zoom OH where he openly stated a question was stupid and forced another student to answer it instead. Although I did say he can be rude to everyone, I have noticed that he is kinder to smarter students that don't irritate him. With regards to the actual course: this class is essentially two classes at once: the lecture side will cover things on the exam, but the projects are completely self taught. Bobby will not teach you how to code sockets, instead he will provide sources and then you have to figure it out. Do not take this class if you are not confident in your coding ability YET. MAN pages will be your bible. There are no recordings, and the class notes are the scribble scrabble he does during lecture. All-in-all: I do think you should take this class. I know my grade and review says otherwise, but you WILL learn a lot if you take this class, and it definitely forces you to become a better programmer. If you are going to take this class, make sure you have the time to give it your all. Most importantly - become a competent programmer before taking the class if you're not already. The final project is a group project that is still based on individuality, so if you end up with super smart people in your group and end up getting hard carried - that's two letter grades gone. TLDR: the class is a semester long suckfest, but is worth it in the end.
Samrat Bhattacharjee
CMSC417

Anonymous
12/20/2022
Lectures in person, not recorded, and no pictures allowed. Projects are in C/C++ except possibly final group project. Incredibly knowledgeable down-to-earth dude, with a lot of passion for teaching. He will call you out if you're not really paying attention, which you should be doing anyway. If you like computer networks, you will get a lot out of this class if you put the effort in learning. The projects are killer, please please start them early... Every project based CS class says this, but actually start them early this class. He doesn't teach any code and just asks you to implement something from scratch.
Samrat Bhattacharjee
CMSC417

Expecting a B
Anonymous
12/14/2022
Best CS course I've taken in terms of knowledge learned. It's true this class is hard, and it will probably hurt your GPA. But once you overcome the class you become a much better programmer. I also enjoyed learning about how networking works, and this class has peeked my interest in learning of networking algorithms and protocols. It makes you think like a computer scientist. Bobby is sometimes hard, but it seems like he brightened up compared to previous semesters, and he does want his students to learn.
Samrat Bhattacharjee
CMSC417

Expecting a W
Anonymous
11/19/2022
Although I have a W, I have decided to audit this class and do the projects at my own pace. I was struggling with finding a job and made the mistake of taking another extremely programming-heavy course and I wasn't confident enough in C to finish the projects without error. I hope whoever reads these reviews knows that the 5-star reviews are not given by "normal" people. They're either really good at C, very passionate about networking, or just don't care about red flags. These are people who are not bothered by Bobby's demeanor or attitude and fail to realize that although they had a good experience, there are many people in the class who don't. I want to give a rather detailed review. I think Bobby's teaching philosophy can be somewhat debatable, so I'll mention what can be done better: [-]: negative or can be improved upon. [?] Depends on your perspective. [+] Undisputable good quality [-] Not recording lectures or office hours: I think the whole idea behind this is that when people know a lecture is being recorded, they stop attending class. Although this is true, we have to see if this is a good thing or a bad thing for the students. It might be demoralizing for the professor since he might not be able to interact with a class and you could argue this is bad for the students since some students are lazy and fall behind schedule because "everything is recorded". So let's analyze this in detail: [+] Bobby provides OH "relectures" for people who missed the class. [-] Bobby does not record OH even if people have other classes during the time of OH and sometimes refuses to discuss what was mentioned in detail because he "discussed it many times in OH". [-] Some students like me usually will rewatch lectures to fill in missing gaps in our knowledge, not having lectures recorded means we have to go on Piazza but given the next bullet points this isn't so "smooth". Overall, I think if Bobby wants people to attend lectures, he should find a way to take attendance and leverage it in part with the participation grade. [-] Being demeaning to the students: This is an area Bobby needs to work on for sure. You can't go out there and call people stupid or get annoyed when people can't grasp concepts easily. I've seen instances where he literally said "this is a stupid question" even when the question was somewhat relevant. Maybe this might be why he doesn't record....... [?] Not giving previous exam solutions: This is probably a blessing in disguise. You are forced to learn where and how to find the information you need instead of having them given to you and just learning through pattern matching. I think this is a good thing but you can easily argue this is a bad thing. [?] Projects take up too much time: The tradeoff is that the projects are cool and useful on your CV. If you take this class, you should be informed that it is hard and a lot of work. Don't make the mistake of taking this with other hard classes. [+] Great Lecturer: Bobby can explain concepts well and you get engaged rather easily Overall, Bobby is your stereotypical grandiose narcissist who has a valid reason to be narcissistic. I rate him 3 stars because I feel like Bobby is an amazing lecturer but the 2 [-] are what makes him rather unpleasant. I have a feeling that even if he is given similar feedback from other students, he might not listen to them and continue with his current ways.
Samrat Bhattacharjee
CMSC417

Expecting an A-
Anonymous
12/20/2021
Was my favorite class at UMD, really learned a lot about not just Networks, but about low level programming in general. That said, other reviews about Bobby is fair. He's been in the field so long (he once told us in class that he's seen networks composed of single copper wire that people poke in needles to connect to, which is at least before 1985) that he kind of lost touch with what students already know/not know. I enjoyed the lectures (he's a pretty funny person). I learned a lot from projects too, despite it being very time consuming and often very underspecified. (There are no public tests to test the output formats against) I do really recommend this class with Bobby, but only if you you have some previous knowledge in computer networking and/or have strong C/C++ programming skills.
Samrat Bhattacharjee
CMSC417

Anonymous
12/18/2021
Taking 417 with Bobby is the Dark Souls of CMSC You know what you're getting into if you take this course Bobby is a great lecturer, the only thing I think he could improve on is recording his lectures so that you can go back to watch them later. The programming projects are intense and will consume all your time. I agree with Bobby's methodologies for choosing C over other languages for the projects. I wish that we had fewer projects and more time to work on them, as they would often be a matter of "write until time is over" instead of "write until your project is working/complete". I think I would have learned more if I had the time to actually focus on getting some of the implementations working instead of having to move onto the next project.
Samrat Bhattacharjee
CMSC417

Expecting a B
Anonymous
11/11/2021
If I could rate 0 stars, I would. He's definitely an entertaining and exceptionally intelligent professor, he'd be cool to have lunch with, TA for or do research under - but all that aside, he is a TERRIBLE instructor and should be avoided at all costs. Throughout the semester he has been very passive aggressive & sometimes just flat out mean with his responses to other students in class, on Piazza, and answering student questions on zoom, claiming that his goal is for us to "learn", and yet he refuses to straight up give an answer to a homework/exam question a student asks without making the student look like an idiot for not knowing first. An example of his unpleasant demeanor: on the first day of class he literally said "I do not expect you to come to class" yet time and time again he expresses passive aggressive frustration with those who do not attend class or office hours. To make matters worse, for some reason he REFUSES to upload recordings of lectures, nor any coherent powerpoint slides (instead he uploads drawings and scribbles he does during lecture that only someone who went to lecture would really understand) - either forcing students to join the Zoom call live or show up to class to stay on top of the material. This is the first course I have taken at UMD that does not provide at least some form of slides or an outline on the material covered in class. The problem with this practice is that his exams, while open note, are 100% based on content he covers in class so if you miss class and office hours & do not take detailed notes in class you're basically screwed. While all my other professors have been uploading recordings of their lectures, Bobby refuses. He will likely claim that because people joining on Zoom do not give their express consent to be recorded he won't do it or something to that effect, but if he actually cared he would use Panopto or some other solution. Coming back to in person after 3 semesters of remote learning is tough, and since I am still used to asynchronous learning it has been a particular struggle for me to stay on top of projects and study for exams in this course. TLDR: Bobby's attitude and expectations for the course leave a lot to be desired, and his teaching skills are not that of a professor who should be making a $200,000/year+ salary (which is likely due to his research and tenure at the university but still). He should stick to research or graduate level courses but for the good of future CS undergraduate students, he should NOT BE TEACHING UNDERGRADUATE LEVEL COURSES.
Samrat Bhattacharjee
CMSC417

Anonymous
11/09/2021
Please do yourself a favor and take any other professor for this course if you can. Don't get me wrong, he's an incredibly smart professor, but he is just incredibly mean and his courseload is suffocating.
Samrat Bhattacharjee
CMSC417

Expecting an A-
Anonymous
12/22/2019
Really knows the course material, and much more. Course was unnaturally hard compared to other CMSC courses I've taken. Really tough.
Samrat Bhattacharjee
CMSC414

Expecting an A-
Anonymous
06/11/2019
One of the co-teachers for 414. Dude knows what he is talking about, but is a bit of a douche to students in class.
Samrat Bhattacharjee
CMSC417

Expecting a W
Anonymous
12/13/2017
The review from 2013 is really not telling at all. I had to drop this class because the median of the first test was like a 50. I have a pretty decent GPA (3.6), but this teacher's workload is IMPOSSIBLE to manage unless you purposely make your other courses really light. I had to drop and take the W for the sake of my other classes. Don't believe me? There are currently 15/40 spots open in the class after people dropping, and his average is about a 2.6 based off past years. Basically only take this class if you consider yourself extremely smart, and every other class has been easy for you.
Samrat Bhattacharjee
CMSC417

Expecting an A
Anonymous
05/12/2013
Bobby is a very good professor. He is also one of the smartest people at UMD. He's very intimidating at first but if you get to know him you'll realize he's a really nice guy. I think he did a good job teaching this class; needless to say, this was a very challenging course (more so than 412 in my opinion). This class is conceptually simple, but the devil truly is in the details. Understanding how packets are routed through the internet is not a trivial matter. This requires understanding link-layer switching, and network-layer routing. I think Bobby did a rather crappy job explaining the link-layer. In particular, he failed to articulate the difference between forwarding and routing (which is HUGE). This certainly led to a lot of confusion. Either way, take this course with either Bobby or Neil Spring. Enough said.