Reviews for CMSC423

Information Review
Mihai Pop
CMSC423

Expecting a C+
Anonymous
03/06/2023
The good: Professor Pop is lenient with deadlines and as a student with health issues, this is very helpful. The bad: Professor Pop gives us a choice between watching pre-recorded lecture videos or doing a reading prior to coming to class in person. This way we learn the material outside of class then he reviews in person. I personally am against this teaching style. Lastly, sometimes coming to lecture in person feels like a waste of time because it’s hard to follow along with what he’s saying. He’s clearly super smart but makes things harder than they really are
Robert Patro
CMSC423

Expecting an A+
Anonymous
01/11/2023
I thought the class was pretty good. Stopped showing up to class halfway through because im a lazy shit (I stopped attending pretty much all my other classes too). lectures were recorded but at terrible quality so showing up to class is definitely better. Either way, I still learned a lot. The exams were not easy but their difficulty is overstated. There is usually one question that is an extension of a concept taken from class, making it harder, but the rest of the exam content can be very simply and easily answered with exact information from the lecture, or from something you coded already in a project. The projects were not easy, but they were also not unreasonable. It took me maybe an average of 8-9 hours per project and I got 100% on all of them. You have two to two and a half weeks per project and unlimited submissions. The feedback they coded into gradescope generally lets you know what you did wrong and its not too hard to fix it based on the feedback. Dr Patro is a nice dude, gives generous curves, usually responds well to piazza posts, and even gave an extra credit project that was optional and added post curve and worth a lot of points. Admittedly, the lecture is hard to follow at times but I think that is due to the content covered and not due to Dr. Patro. If you're afraid to ask questions in class, you may fail to understand something and become confused. I think that most of the 1 stars here are just due to the content being hard, and people coping with the fact that they didnt do as good as they are used to doing with the same amount of effort. You will have to put in a considerable amount of effort if you take this class and that is of no fault to the professor as he does a pretty good job.
Robert Patro
CMSC423

Expecting a B
Anonymous
01/05/2023
When I initially signed up for this course, I thought I'd be taking an "easier" 4XX course atop my 2 other 4XX classes. However, I very quickly found out I was wrong. The lectures are dense and the programming projects are hard. The projects are worth 50% of your grade and you have to write everything from scratch and I mean everything (like src files with a bash script submitted as a tarball). As a side note, when writing programming projects for this class, the M space for your algorithm matters a lot! I know on Leet code or other platforms most people focus on conserving N time, but in this class you really have to think about the cost of instantiating a new string in your algorithm which could result in 20+ minutes of auto grader testing time to end up with a zero. Regardless, although this class was difficult I did enjoy it a lot. It really shows you a side of cs that can actually help people and can provide valuable information to scientists across multiple disciplines like biology to help prevent diseases like cancer or sickle cell anemia. This was refreshing to me as it provided a bit more meaning to my degree rather than trying to get a job at a large tech firm and make that bank. So, if that is your goal I'd recommend taking classes like databases or machine learning to boost your resume to employers. As a professor, Rob was fantastic. He was very enthusiastic about what he teaches (which was refreshing for a change) and was very knowledgeable on the subject matter and open to helping students, extending deadlines, etc. I remember he literally held office hours on his phone for me in a hotel room to help debug my code which was awesome and I don't think any professors in my other classes, regardless of cs classes would do the same. Also, he's very up front about curving the class and tries to keep the average around a B, so if your grade suffers the first half of the semester don't give up! The only reason I rate this course as a 4 and not a 5 is that I felt the course was managed a bit poorly with 1 T.A. who tries her best with students, but when students can write in either Java, C++, Rust, or any acceptable compiled language it makes her job very hard. In the future, I think normalizing what students can submit would make office hours more beneficial.
Robert Patro
CMSC423

Expecting a B
Anonymous
12/19/2022
Most of the course content wasn't my favorite, but I feel like I picked up some worthwhile and interesting stuff. The material can be complex, but Patro explains it nicely and is responsive on Piazza/in class when you want further explanation of concepts. The fill in the blank sections on the exams were tough, but you'll do fine on the rest if you understand all the algorithms and data structures taught. Just keep going to class even if you only understand 50% of what's going on lol. The class will be generously curved
Robert Patro
CMSC423

Expecting an A-
Anonymous
12/13/2022
This was admittedly a challenging class, but I thought it was very worthwhile. The projects were long and tough, but rewarding and gave great practice to coding skills. The exams were also tough, but he intends on curving the class. Patro was a very smart and kind professor and clearly cared about the students, even giving an up-to 10% extra credit project, to be applied after a curve to the class. He was also great at responding to any questions on projects/exams/etc on Piazza. The only real knock is that it's a bit hard to follow lectures, but that's mostly because Patro tries to fit a lot into the course.
Robert Patro
CMSC423

Anonymous
11/18/2022
Patro is very knowledgeable in bioinformatics but the class was just a headache all around. Programming assignments were hard to understand and can easily take 45+ hours to complete and even then I wasn't able to get a fully working solution. TA's weren't too helpful as they would never offer any advice on the actual coding of the projects and only offered general advice which makes spending the time to go to office hours feel like a waste of time. Exams were also really difficult and the "study guides" he provides do not reflect how difficult the exams were going to be. I honestly did not enjoy the lectures either as he goes through topics so quickly that I honestly dreaded this class as time went on. Avoid him if you can and take this class w/ another professor. (I took this class during the Fall 2021 semester)
Robert Patro
CMSC423

Expecting a C
Anonymous
11/01/2022
The worst class I've ever taken at UMD. There is no way someone would rate this class as a five-star. It's low-key him trying to make y'all take it. The attendance is 5 people/ session. Not worth the headache, trust me. Go take a class that is a headache but at least teaches you something.
Robert Patro
CMSC423

Expecting an A-
Anonymous
10/19/2022
I liked this class. Some of the material is hard, but the algorithms are really cool, and stuff you won't see in other classes. He walks through a lot of examples for the algorithms and the projects have you implement some of them. For me, this helped me to really understand how and why they are working. You have to program things, but this is a CS course. Some of the exam questions were hard, but the grading was fair, and he explained on piazza and in class what to expect on the exams and in terms of a curve. My average in the class was around 80, I ended up with an A-, and I learned some cool stuff. I'd recommend this class if you want to learn bioinformatics algorithms, otherwise, I wouldn't take a class on bioinformatics algorithms.
Robert Patro
CMSC423

Expecting a C+
Anonymous
10/19/2022
Don't take Patro. Just don't. These reviews are too positive to the point that I feel like he himself comes here occasionally and leaves a nice thing for his future self.
Robert Patro
CMSC423

Expecting a B
Anonymous
10/19/2022
Patro is a very, very lovely gentleman. He is good at what he teaches, obviously. But, I would avoid this class with Patro specifically unless you are very interested in the topic. His projects are challenging. The projects expect you to write library-quality code. Ridiculously difficult and time-consuming. Lectures are also really confusing and hard to understand. I wouldn't trust all the other comments saying, "wow, a tough class, but you will get a ton out of it." No, you won't! The lectures are so complex that even if you manage to understand them, which you won't, by the way- the exam's mean was in the 50s despite lenient grading; you will absolutely forget the material the day after the final cause it's just useless. Take it with Pop. Avoid Patro. Patro is too enthusiastic about the topic and has made the course unnecessarily tricky.
Robert Patro
CMSC423

Expecting a B+
Anonymous
05/19/2022
This was a very challenging but incredibly rewarding class. It was one of the best I've ever taken in my 4 years at UMD. Professor Patro is very knowledgable about the subject and has a passion for it. He was insanely responsive on Piazza. The course teaches advanced data structures and algorithms, a lot of stuff you won't see in other classes. Some of the material is genuinely difficulty, but the professor is willing to explain it multiple times and in different ways, and to expand things and answer questions during office hours and on Piazza. Some reviews on here complain about the workload, but if you're taking a 400 level CS class at UMD and you can't put together an algorithm covered in the class or figure out how to compile a program from the command line, you're gonna have a bad time. Personally, I thought the projects required effort but were totally fair. The material was super interesting, and we learned about data structures that have runtimes I wouldn't have even though were possible before I took this class. What I learned about dynamic programming alone was worth it. The exams definitely made you think, but were fair — they tested your knowledge of the data structures and algorithms we learned by asking you to use them to solve problems that would be very difficult otherwise. The averages on the exams were on the low end, but there was a huge curve and the professor was very clear about this up front. Also, there was a ton of extra credit offered. Overall, I loved this class. If you're looking for an easy, low-effort 400 level class, don't take this! But if you're willing to put in effort and want to learn some really cool data structures and algorithms, I can't recommend this class highly enough.
Robert Patro
CMSC423

Expecting a B+
Anonymous
05/19/2022
Great professor - it's a challenging, but incredibly rewarding class especially if you are interested in learning the fundamentals of bioinformatics algorithms and data structures. Makes it twice as worthwhile when the professor is really passionate about the subject and wants students to succeed.
Mihai Pop
CMSC423

Expecting an A+
Anonymous
05/17/2022
Professor Pop was very accommodating to students: he offered both in-person and Zoom recorded/streamed classes and allowed you to propose your own deadline for some assignments. The workload was also very reasonable. Make sure to study for the final; it was a bit difficult.
Mihai Pop
CMSC423

Expecting an A+
Anonymous
05/16/2022
Probably the most understanding professor I've ever had. The entire class was basically asynchronous, every week we had a online "mini-exam" (called End Of Module Assessment) that wasn't too bad, you could easily get full points on a lot of them. The in-person lectures themselves are review of the videos we have to watch before class, but he goes in more depth and they are helpful for the end of module assessments and the final exam. Has a great late policy for projects (you're allowed to turn them in late if you write a reflection as to why you failed to turn them in on time). The projects themselves weren't too bad, most of them you can complete in less than two hours. My only problem with this class is the amount of quizzes each week. It's not a lot, but they were all due on Tuesday, even for material that he wasn't going to cover in class until Thursday. The final was somewhat difficult, but in the end he curved pretty well after accounting for this. Overall, Mihai Pop is a great professor to take for CMSC423 and I heavily recommend him.
Robert Patro
CMSC423

Expecting a B
Anonymous
01/25/2022
This is by far the worst class I've ever taken. As a senior, that's definitely saying something. Patro seems really passionate about the subject and is usually pretty responsive on Piazza, but that's pretty much where any praise for this class ends. He obviously puts a lot of work into creating lectures and slides, but the issue is that they are so complicated that a lot of students have trouble understanding the material and end up having to spend a ton of time outside of class to learn it. The course is focused on teaching a lot of different algorithms that are relevant to bioinformatics, but weirdly most of the time he doesn't actually show how they work with examples, so it can be confusing. Also, much less important but the lectures are usually very dry/boring in my opinion. Projects: There isn't any homework for this class, only projects. He planned to give us 6 projects throughout the semester, but only ended up giving us 4 mandatory projects and a 5th extra credit project because students struggled so much on projects that he was very reluctantly forced to extend the deadlines of 2 projects. For example, the average on the first project was a 50%. It's worth pointing out that he seems out of touch with how difficult these projects are since he seemed confused by how low the average on this project was and the projects only got harder from there. His projects are also graded in a weird way where it can be pretty hard to get partial credit (hence a lot of people getting 0s on them). When he releases a project, you usually have exactly 2 weeks to complete it. Normally, this would be plenty of time to do it. However, he makes his projects extremely difficult and they take like 35+ hours to finish. Since most students at this level are taking 3-5 other classes, most of which are probably upper level classes, this is a crazy amount of work. Exams: This class has 2 midterms and a final exam. The averages on both midterms were Ds. He showed us the grade distribution for midterm 2 and according to that about 38% failed it. He gave a few practice questions before both midterm exams, but honestly they were so much easier than the actual exams that it wasn't helpful. He and the TAs didn't host any review sessions although they were requested multiple times. Personally, I found a bunch of his exam questions pretty unreasonable. From what I could tell, most students found his exams difficult. I heard a lot of good things about CMSC 423 with Pop. I regretted taking this class (with Patro instead of Pop) a couple weeks after the schedule adjustment period ended when I saw what the class would really be like. Apparently, a bunch of students felt the same way because even though we started with about 93-95 students, by the end of the semester there were only 75 of us left. It seemed like a lot of people took a W to get out of the class, which is pretty telling of how rough it is... I would take notice of how only those who got very high grades in his class are giving him good rankings.
Robert Patro
CMSC423

Expecting an A+
Anonymous
12/26/2021
I can't recommend Professor Patro enough especially for a course like CMSC423, and this class deserves high remarks both for how well it's run and the material conveyed. First of all, he is extremely knowledgeable and passionate about algorithms/bioinformatics(as evidently seen by his research background and his lectures), but even more than that, he has the unique talent of conveying even the most difficult material in a way that is very easy to digest while not watering down the material. Moreover, during my years at UMD, I have not come across a professor that has been as responsive during OH and piazza as Prof. Patro - even during late hours/weekends/hours before exams and project deadlines. His piazza posts in particular are godsend - extremely detailed and posted in a timely manner. Course policies are very straightforward and made very clear for everyone, and even with the constraints of having only 2 other additional TAs for a 90+ student class, the course is very well run and provides a good primer into the vast area of bioinformatics and computational biology, especially on algorithms related to fully-text indexing, sequence alignment, genome/transcript assembly, and basic phylogenomics. Make no mistake, the course material is fairly challenging(obviously since it's 400-level algorithms course) and does require a fair amount of work/effort, especially on a personal basis after lectures, to really understand and gain intuition for the algorithms and data structures covered over the semester. Your grade is entirely based on the level of effort and interest you put into the course - by starting projects early, going to OH's, actively attending lecture, I promise you a good grade will follow. Furthermore, the knowledge gained is invaluable for algorithms and bionfo enthusiasts and can help provide an entrypoint to a rewarding research career. Overall, over my years at UMD CS, he is easily the best professor I've had the pleasure of learning from.
Robert Patro
CMSC423

Expecting an A
Anonymous
12/25/2021
Professor is very kind and extremely helpful.
Robert Patro
CMSC423

Expecting a B-
bekahsburner
12/22/2021
Run as fast as you can. Never in my years at UMD with multiple CS upper levels taken did I get a prof so out of touch with what students can do. He played the victim when half the class got a 50% on project 1, and sent a huge email to the whole class blaming students for "being unprepared" and that they "asked for too much help on the project." This is an INTRO to bioinformatics class, why would you expect students to not struggle, they have no background on this material!? In 2020 when he taught for the first time at UMD, he gave two projects. Suddenly for 2021 (his second time), he thought SIX would be acceptable. Ended up "only" doing five, and projects easily took 20-50 hours a week and you only get two weeks to do them when you should get a month for the level (because you have to write everything from scratch, he gives NO skeleton code and it's implementing ridiculous data structures and algorithms that he is only theoretical about and shows hardly any code for in lectures.) He passive aggressively ignores Piazza posts on days the projects are due and emails from students asking for appointments (his syllabus says that he is available for that, which is a lie.) His two midterms exams are impossible, averages were both a D, exam 2 a D-, all he had to say was "but I wanted it to be a B." Again, not understanding his expectations are ridiculous for what undergrad students can handle. The TAs he had were two graduate students with one hour each of office hours a week, so don't even try asking them for help. They do not know anything about the class either because they haven't taken it and don't care to learn it to the depth the professor expects.
Robert Patro
CMSC423

Expecting an A+
StardustGogeta
12/06/2021
This is certainly one of the best classes I have ever taken. The way it has been managed this semester is absolutely impeccable! The presentations are extremely high-quality, and the instruction is thorough and effective, to say the least. As far as curriculum, the topics covered are modern and applicable to the real world. The projects are well-designed and challenging without being made artificially difficult through secret tests or other quirks, and they greatly help in understanding key parts of the course content. The exams are fair and thought-provoking, with algorithm design problems that students can be reasonably expected to know how to solve. (The exam review problems and topics are very reflective of the real deal, which is very helpful.) Finally, the teacher himself is great! He is able to answer any question posed to him in class or on Piazza and clearly has a great deal of passion and subject knowledge. It's truly fantastic!
Jacquelyn Meisel
CMSC423

Expecting an A
Anonymous
09/08/2021
Professor Meisel is fairly new to teaching the class and because of that she made a few mistakes. She has very promising potential and accepted feedback on issues that students had with certain aspects of the class (i.e. the first midterm). That midterm tanked my grade but she gave lots of resources to help study for future exams and adjusted the difficulty of these exams. She is the most approachable professor I have ever had. She had office hours four times a week and made time for anyone who couldn't meet during those times. I found that reading the book was important in understanding the concepts in depth. There was a programing assignment every week (except midterm weeks) they could be done in most popular languages (Java, Ruby, rust, etc.) but python is preferred. Pseudocode for each assignment was either in the book or a modification of something in the book. Start the projects when they are assigned as they are due in a week and you may need help in OH. The exams were 60% MCQ/fill in the blank and 40% short answer (final was 50/50) the MCQ was straightforward especially if you did well on the quizzes. The short answer was problem solving based on the topics covered in class and was harder but lots of partial credit was awarded
Jacquelyn Meisel
CMSC423

Expecting an A+
Anonymous
05/26/2021
Some students are so bitter that they'll lie about midterm averages. That 40-50 score was out of 60, not 100. It is true that Meisel recycled lecture videos, but she was helpful on Piazza. Sometimes she was unresponsive, but she always provided quality responses. The multiple choice part of the exams were straightforward and easy. If you actually keep up with the content and don't leave it til the night before However, you'll be fine. However, some of the written response questions were tough. Similar to 351, you can't be 100% prepared for them. Still, she gives a generous amount of partial credit. Finally, she had a generous curve. Salt is everywhere, just stay diligent and you won't end up like them
Jacquelyn Meisel
CMSC423

Expecting an A+
Anonymous
05/26/2021
I had professor Meisel for 423 and thought the class was alright. It is true that most of the lecture videos were from a previous professor but that didn’t bother me as much as the other reviewers below. The weekly quizzes were free points from the lectures and the weekly programming assignments had most of the information from the textbook. The 2 midterms and final were pretty difficult, but the averages for them were 61/77/79 respectively, which is low but not as bad as one of the reviews states. In general, it would take her a while to respond on piazza but there were many times when she gave lots of detailed information on student questions which I thought was good. Finally, the grading at the end was super generous as she gave a 5% curve and did not give any minuses for letter grades. Overall, the course was far from perfect but all things considered, the class was one of the better 400 level cs courses that I have taken at umd and I would recommend to take it.
Jacquelyn Meisel
CMSC423

Expecting a B
Anonymous
05/18/2021
Ok so I already gave a review, but the final questions did not line up very well with the amount each subject was taught. It was very disappointing. One question that was worth a big chunk of the grade wasn't even covered in class, and could only be solved likely by using the textbook explanation. Disheartening.
Jacquelyn Meisel
CMSC423

Expecting a B+
Anonymous
05/18/2021
She gave us lectures on maybe half of the material for the class and used a previous teacher's videos for the other half. The average response time on Piazza is a lot slower than other classes, exam averages were lower than expected (even though the average seems to be around a C+, maybe scraping a B-, she said previous to the final that there likely wouldn't be a curve, even though the exams are what's hurting our grades). She is accommodating with late work, but overall I felt a disconnect and the learning experience was strange. I don't know how to put it, exactly. She seems nice, and tries to put in effort for helping us understand the material, but it's in ways that aren't typical (for example, making detailed modules on ELMS instead of teaching it in lecture).
Jacquelyn Meisel
CMSC423

Anonymous
05/16/2021
Why she shouldn't teach again: 1) She didn't teach one topic during the entire semester. All of her lectures were video links to Mihai Pop's old lecture videos. 2) She expects one programming assignment every week (13 in total), without covering the material in depth. 3) Midterms were hard for no reason and she wouldn't give any practice material. 4) She would give points on the midterm and then remove them later on ("in order to maintain standardization") ?????
Jacquelyn Meisel
CMSC423

Expecting a B+
Anonymous
05/13/2021
Avoid her. The teaching material seem to be taken completely from Prof. Mihai Pop which is completely fine but the grading and assignments are harder. Few programming assignments remain the same but she has added many more which makes the work load a lot. The exams are really hard. The average midterm 1 and 2 was around 40-50/100. I took this course cause my friend said it's easy who took it with Mihai but that is not the case here. She made it unnecessarily hard.
Mihai Pop
CMSC423

Expecting an A-
Anonymous
02/01/2021
As someone who has mental health problems and turns things in late a lot, pop's class was perfect for me. His class is a decent amount of work, but I excelled at it because of the way he taught and walked away learning a lot.
Mihai Pop
CMSC423

Expecting an A
Anonymous
12/30/2020
Passionate teacher and very understanding about stress and potential extenuating circumstances during online classes. He provided many ways for us to manage deadlines for projects and exams.
Mihai Pop
CMSC423

Anonymous
12/25/2020
Dr. Pop was a wonderful professor this online semester. He spent the whole summer planning for the class and it showed. His lectures helped clarify the confusing parts of the textbook. He had a generous late policy for programming assignments and quizzes and was very helpful in office hours. Highly recommend.
Robert Patro
CMSC423

Expecting an A-
Anonymous
06/09/2020
Awesome
Max Leiserson
CMSC423

Expecting an A+
Anonymous
10/30/2019
Class is great if you have any interest in biology! The workload was extremely manageable, with one program due every other week in the language of your choice. There was quite a bit of jargon to learn, but the in class worksheets were very reflective of the exam material. The exams were weighted 90% in class individual grade and then 10% group grade. We had to meet with a group out of class and fill out the exam again together, which was a free 100. He also provided an extra credit assignment at the end of the semester for ~2% Overall a very understanding teacher who knows what he is talking about
Max Leiserson
CMSC423

Expecting an A+
Anonymous
07/04/2018
Not a very captivating lecturer. Uses Socrative (basically clicker questions) to measure participation, but by the end of the semester most of the class was not attending anyway. Exams were difficult to approach with no previous exams or many practice problems to study from. Programming projects are through Rosalind, which means you can use whatever language you choose (pick Python), but debugging is sometimes difficult. Overall - low workload, interesting subject matter, often boring lecture.
Mihai Pop
CMSC423

Anonymous
01/24/2018
Great professor who cares a lot about bioinformatics and the success of his students. Fun (well, as fun as lectures can be) classes and interesting presentation. Lots of tiny programming assignments that weren't harder than 330, but the last two can be a little bit of a pain. His exams are really fair, pretty much only covers what has been said in course unless he explicitly stated it. I'd recommend to final semester seniors.