Michael Marsh

This professor has taught: CMSC388J, CMSC389Z, CMSC414, CMSC417, CMSC420, CMSC433, CMSC436, CMSC818Y
Information Review
Michael Marsh
CMSC420

Expecting an A
Anonymous
12/07/2022
The course is very well organized and the professor and TAs respond quickly and do adjust the course based on how the course goes. He uploads pre-recorded lectures which do a great job of explaining stuff that I had to go to lecture 0 times to do well in the course. Tests were all online. For the first test out of four, most students thought the format was bad as drawing trees and uploading them took most of the time rather than testing the concept. So subsequent three tests had no drawing of the tress. All test materials were directly covered in the class so if you paid attention or put some time in, you will do well. Professor actually does listen to student feedback and is willing to adjust if students have point. Projects are straight forward and all grades come from semi-public tests and no secret tests. We get plenty of time for the projects as we only had 5 projects throughout the semester. And material necessary for the project was taught at least 2 weeks before the due date so we got plenty of time. I am no genius but before taking the final, which is 10% of our grade, my grade currently sits at 96%. If you put in work in this course, you will get results. No surprises. I would be sitting at 98% if I didn't miss quizzes due before each session which has unlimited tries. I just forgot about them sometimes.
Michael Marsh
CMSC414

Expecting an A
Anonymous
05/20/2022
Marsh has a bad rep for CMSC414, but I don't agree with it whatsoever. All his exams are online open-book open-internet, so they aren't stressful at all. He gives quizzes before the scheduled class time, but you have unlimited attempts on them and all together they added up to 6% of your grade. He had 4 midterms (one for each unit: programming errors, cryptography, networking, human incentives) and some of them can be tricky, but even if you mess up they aren't worth a lot of your grade. He uses a "flipped-classroom" model, where he has us watch videos before class and during class he answers our questions on any material. As a result, not many people showed up to class (I personally stopped going after the second week). One thing I will agree with the criticism about Marsh is that his projects are extremely open ended. The lectures are more or less useless in trying to figure out what he wants you to do in these projects, and you'll find yourself banging your head against a wall for a few days trying to get started, but he gives a lot of time (close to three weeks) for each project. Overall, I'd whole-heartedly recommend Marsh to anyone wanting to take CMSC414.
Michael Marsh
CMSC436

Anonymous
05/16/2022
Marsh taught the iOS version of this class when I took it and I also took 420 with him the previous semester. Class is structured like Marsh's other classes: - Projects are the majority of your grade in this class - There are exams but they are online on gradescope, open note, open internet - Class is flipped model, so lectures are prerecorded and you are expected to watch them before class. During actual lecture time, he goes over examples which may or may not be helpful. The projects outside of the first one are graded by hand by TAs and they are pretty lenient with grading. Be fully prepared to teach yourself for this class and pray you get good TAs the semester you take it. There will be a group project to design an app, which is very open ended. My biggest complaint is with the final project. It felt very cobbled together and it was released far too late into the semester, while we had other projects to do as well. Overall, Marsh is one of the nicest, most accommodating professors in the department, but takes a while to get used to. His lectures can be very boring and 436 itself seemed to fall apart organizationally towards the end of the semester.
Michael Marsh
CMSC414

Anonymous
05/05/2022
I have a love-hate relationship with this course. I have come to the conclusion, after much flip-flopping, that although Marsh has a bit of a strange protocol for running a course, he is my favorite CS instructor. At first it is a little tricky to get into his headspace, but once I had my head around the groove of the course I found it very enjoyable. I thought that the projects were fun, and that Marsh really wants his students to succeed in the course. He is always responsive and willing to help out and give feedback. Marsh himself is your most valuable resource in this course, I think. I highly recommend 414 in particular, but I would recommend Marsh as an instructor for any other course as well. I would absolutely take a class with him again.
Michael Marsh
CMSC420

Expecting an A-
Anonymous
01/28/2022
You SHOULD take Marsh for CMSC420. I took the course in Fall 2021. Professor Marsh is an amazing teacher. He had a flip flop style class, where his lectures were posted online and there was a quiz that was due before class time. The online lectures were really clear. The quizzes were unlimited time and you had unlimited attempts, so do you what you want with that information. In class, he went over examples problems that explain the algorithm and they were really really helpful. He recorded those in class lectures too, so you didn't even have to go to class. There were 4 exams that were online and the averages were always in the 80s and 90s. He gave us enough time with the projects (2-4 weeks) and they were all very doable and really helpful in understanding the algorithms better. The projects were all in Java, while there was another teacher who made the projects in C, so this is another benefit of taking Marsh. The final was harder than the other exams since it was more abstract, but it was only worth 10% of your grade and he gave a lot of partial credit, so it was fine.
Michael Marsh
CMSC417

Expecting an A+
Anonymous
12/27/2021
I took this course Spring 2021. CMSC417 is definitely not trivial and the projects take time, but I also enjoyed it and learned a huge amount. Marsh uses flipped classroom but the lecture videos he posts are broken into short sections and are very clear. The projects and homeworks help you learn the material well and the tests were open-note on Gradescope.
Michael Marsh
CMSC436

Expecting an A+
Anonymous
12/27/2021
I took this course in Spring 2021. Marsh uses a flipped classroom but generally he makes everything very explicit and his lecture videos teach the material well. I would say that learning to program iOS apps with Swift is one of the most satisfying and valuable skills I gained in college.
Michael Marsh
CMSC420

Expecting an A
Anonymous
12/27/2021
Professor Marsh puts a lot of effort in and makes everything very clear and explicit. The assignments generally help you learn the material well and prepare for the test.
Michael Marsh
CMSC420

Expecting an A-
Anonymous
12/23/2021
I took this course in Fall 2021. Pros: + Very effective lecturer, asynchronous lecture videos had all the content you need but were concise enough to be not too long. + Projects are explained clearly and are very doable in the time allotted + Listens to student feedback and is very adaptable (especially pertaining to COVID) + Is always happy to answer questions Cons: - Marsh uses a flipped-classroom model, where you view lecture content at home, and actual lecture class time is used for discussion/answering questions. I was personally not a fan of this, as it just led to there being unnecessary 420 HW and having almost nothing to do during class time. Barely anyone even showed up to class. - Partial credit is very harsh, you typically lose points for selecting the wrong answer AND not selecting the right answer, so you essentially lose double points - Compared to midterms, the final felt almost "abstract" in its questions, was definitely much harder than the midterms
Michael Marsh
CMSC414

Expecting an A
Anonymous
12/23/2021
Pros: - All exams were timed, open note, and open internet. They were not structured to be extra difficult because of this caveat. The final was supposed to be in person, but got moved online. - The goals for assignments (home works and projects) were fairly clear. It takes some time to adapt to Marsh's "unique" approach to projects in the class, but office hours and campuswire were always open and the instructors actually answered questions (Most of my previous class piazzas had questions ignored on piazza) - Marsh genuinely cares about the course. Cons: - Lectures are asynchronous. You watch the lectures in your own time, and the lecture itself was a "discussion". I attended almost every in person lecture, and it was a waste of time. - All of his projects are graded with bash and python scripts, and you submit through a gitlab commit. You will always have that feeling in the back of your head that the project might not run the same on his system. - This class has A TON of overhead knowledge. C, docker, git, bash, python, linux, etc. You aren't expected to be an expert, but you will spend a lot of time learning content independent of the class just so you can do the projects. Overall I recommend 414 with Marsh. This is the CS class I had the best experience in. It doesn't hold your hand, but help is there if you need it. It is structured in a way where you ACTUALLY LEARN stuff on your own. With that in mind, you have to put in work to do well in this class. Do not expect this class to be a free A unless you already have security knowledge.
Michael Marsh
CMSC420

Expecting a C-
Anonymous
12/17/2021
Marsh was very organized and taught very well. Exams and homeworks were very fair and we knew what to expect for them. Projects were very difficult and tested heavily on edge cases, so make sure to start those well in advance of the deadline.
Michael Marsh
CMSC420

Expecting a C+
Anonymous
12/09/2021
I took this class in conjunction with CMSC414, and the difference is quite astounding. Comparatively speaking, this class is much better put-together, it is easier to follow, and definitely doesn't suffer the same issues as CMSC414. The course material is relatively easy, and the slides are quite useful. Marsh himself is an alright professor, but his course materials are probably a bit more useful than his actual lecturing. The logistics of the class-- Campuswire, GitLab, etc. -- are not ideal, but they are manageable. The projects are quite tough, but they are in Java! If you are ready for a decent workload, I would recommend this class. Marsh seems to have a pretty good grasp on how to teach data structures.
Michael Marsh
CMSC414

Expecting an F
Anonymous
12/09/2021
Michael Marsh is a decent professor, but his classes can be quite difficult. I would NOT recommend taking CMSC414 as your first upper-level class. Definitely take something else first to get used to how they operate. This class is very dense, the material is tough without a lot of background experience, and the projects can be overwhelming. The logistics of this class can also be very annoying. The slides, homework, and exercises are supposed to be helpful, but without some prerequisite knowledge, they can be incredibly difficult to use. Due to the structure of the class I would only recommend taking this if you are ready for a very large workload. I'd imagine someone much more prepared than I was might be able to succeed quite well in this class, but I also imagine my position is a pretty common one. Be careful going into this class, it will challenge you.
Michael Marsh
CMSC414

Expecting a B+
Anonymous
11/18/2021
Awful, awful professor. Lectures are incredibly high level with absolutely no application involved. Grading scripts make countless errors, which he promises to resolve, but WILL NOT ALWAYS if you are unlucky. Incredibly disorganized course webpage.
Michael Marsh
CMSC420

Expecting an A
Anonymous
11/11/2021
He is very mean. Don't take courses with him
Michael Marsh
CMSC420

Expecting an A
Anonymous
11/04/2021
Since the switch to online, Marsh has been an incredible teacher. I had him for cmsc436 and cmsc420 and for both courses he did a "flipped" course, where he posts very clear and concise online modules where you have to watch usually 3-5 broken up (roughly 5-10ish minutes each) lectures twice a week and do a quiz. This is nice becuase it makes class optional becuase its just a session where he goes over examples and lets people ask questions (no clickers or no material taught, so you can skip if you know the material). Quizzes are super easy if you watch the lectures and you get multiple attempts. Exams are extremely fair and heavily resemble homeworks assigned (due about once every 2-3 weeks for 420) or slides from lecture videos. He also made the 420 exams online and open note even though we are back in person, which is very nice. His exams come at the end of every module (also about 2-3 weeks) and are mini exams that are NOT cumulative. The final is the only cumulative test. the exams overall also only account for <30% of the grade, which is good if you somehow bomb an exam. The projects are where he puts heavy emphasis on and theres usually 5 projects (one per module) worth 10% each so 50% total. He has a strict "turn in late and get a zero" policy but don't let that worry you. His projects are very reasonable, Office hours and his campuswire (online forum like piazza) are very helpful and the projects are usually given 3 weeks to finish, I find myself only needing a week or less in most cases though (and Im no genius). He stays away from heavy edge case testing and tests are a mix of public and release (you can only see name of test), but no secret tests. Overall he is my second favorite CS teacher behind Nelson and I highly recommend him for 420 and 436, but I've heard not so great things about 414 with him.
Michael Marsh
CMSC414

Expecting an A-
Anonymous
11/02/2021
Micheal doesn't teach you and expects you to learn all of the material outside of the class.
Michael Marsh
CMSC417

Anonymous
05/24/2021
I don't know why there are some reviews commending Marsh for how he handled this course. I took this course with three friends and all of our experiences were pretty terrible. I would keep in mind that we took this during an online/Covid semester so in person may be different. The work load for this course is MUCH greater than 3 credits. I spent more time for this course than for most of the core 4 credit CS classes. A typical week would include about an hour of pre-recorded lectures, 2 quizzes on that content, 2 normal lecture hours, then either a MASSIVE project due over the weekend or several homework assignments. There were also 5 exams throughout the semester. Marsh said at the beginning that this courses bad wrap is due to it being "one of the hardest the department offers". I don't think the difficulty is the content, its entirely with how the course is organized. The lectures do not coincide with the projects, so for more than half the projects you'll be looking at text books learning the material to execute the projects. Marsh will release public test scripts to test your projects but they typically don't work, causing everyone stress by having to submit their project blindly. His testing scripts would also typically screw up on the projects causing many students to request regrades, which they wouldn't receive back for months later. In 2 instances, information in the project description was either wrong or misleading, which caused due dates to get pushed back. This would be fine except Marsh did not compensate the rest of the schedule. This caused the biggest project of the semester to be given a week less to complete. On the last day of classes, we had an exam, a homework and the big project due. The only reason I did not give this 1 star is that I believe some of the projects are pretty cool once theyre in a complete state. I would not recommend this course unless you genuinely think putting on your resume that you took a formal networking course will help you. If you're just interested in networks, you're better off just looking at networking textbooks and resources online in your freetime.
Michael Marsh
CMSC414

Anonymous
02/10/2021
Insists on using campuswire for some reason when literally everyone else uses Piazza. Also insists on using Gitlab when everyone else uses the submit server. In 414 he gave us previous exams but would straight up refuse to answer or ignore us if we asked what the answer was. Rushes thru slides and expects us to know every single small detail about a topic, but at the same time will assign homeworks and projects that barely have anything to do with what he tests you on. Also in 420 he made exams super long for no reason, you wouldn't have finished unless you used other resources or asked your friends for help or saw the exam beforehand. Avoid him, you and your GPA will thank me later.
Michael Marsh
CMSC420

Expecting an A
Anonymous
01/26/2021
His recorded lectures are easy to understand and go over. His exams aren't too bad. Projects can be tricky given how much he tests on edge cases. Overall a pretty good professor and really understanding.
Michael Marsh
CMSC420

Expecting a B+
Anonymous
01/12/2021
I had Professor Marsh for CMSC420. Previously, I had him for CMSC414 and did not have a great experience. This time I thought that he did a much better job in how he taught the material and the assignments that were given in class. The projects and exams were very reasonable and it was one of the better upper level computer science classes that I have taken so far.
Michael Marsh
CMSC414

Expecting a B+
Anonymous
01/05/2021
Although Dr. Marsh was nice and a lenient regrader, I found his lectures and in-class exercises to be very boring and unintuitive. All content lectures were pre-recorded, and during our actual class time, we would ask him questions and watch him do exercises. He explains concepts in high level terms that make it difficult to understand as a student who is learning about cybersecurity for the first time. I would ask him questions about certain topics so that I could better understand them, but it became a chore as the semester went on. He is very smart and knows a lot about the concepts that he teaches, however I was able to better understand these concepts by watching youtube videos that covered them. Homeworks and exercises, while intellectually challenging, taught me more about how to navigate unix systems and find bugs than about computer and net security.
Michael Marsh
CMSC414

Expecting a B
Anonymous
12/29/2020
Dr. Marsh was a pretty solid professor. He was really accommodating during the pandemic and tried to make things as easy for us to understand given the circumstances. While I had some complaints about the tests and the format of the material, he was helpful in clarifying any confusion and was really open to hearing suggestions for how to teach the course virtually in the future. The projects for 414 were really fun and interesting, but also challenging and really made you think about the code rather than just mindlessly typing. He also was flexible with regrade requests on projects and exams, which probably saved my grade when I realized later on that something was wrong.
Michael Marsh
CMSC414

Anonymous
12/24/2020
Does not help you prepare for exams whatsoever. What's the point of showing us previous exams with no answers? Likes to ask random trivia questions that you'll never find even if you search the whole internet. Tough projects that are worth too much of your overall grade, no late deadlines either. Genuinely regret taking this class with him, honestly a miracle I passed
Michael Marsh
CMSC420

Expecting a B
Anonymous
09/15/2020
Really good professor, but he uses Jason's projects and he hasn't read the src code so you won't ever know how your code gets tested. He'll review your code from a theory pov, however his mini-exams every week and his lecture videos are perfect.
Michael Marsh
CMSC420

Expecting an A
Anonymous
08/10/2020
Really responsive and well prepared for online lecture
Michael Marsh
CMSC420

Expecting an A-
Anonymous
07/22/2020
One of the best CS professors I've ever had. Marsh is a very kind and interesting person as well as a very attentive and well-organized professor. All lectures were well presented and all projects were fair. He was very generous with project extensions when they were warranted. Tests and homework assignments were extremely easy. It would take great effort or supreme procrastination for one to do poorly in Marsh's CMSC420 section. Highly reccomend.
Michael Marsh
CMSC420

Expecting an A-
Anonymous
05/16/2020
Explains things well and provides exercises for students to practice
Michael Marsh
CMSC414

Expecting an A
Anonymous
05/15/2020
I was scared to take him based on past reviews, but I'm happy to say he was great. Great lecturer with interesting material and anecdotes. He was truly nice and understanding. Responded quickly and helpfully to questions. I also had read that he used to live and die by his automatic grading system. That is no longer the case and is more than willing to go in manually and re-grade something, even if it was your fault for misformatting some output.
Michael Marsh
CMSC420

Expecting an A-
nshropsh
05/12/2020
Marsh has so far been my favorite computer science professor. All content he covers through lecture is clear and complete, so it leaves out ambiguity. His tests have been very fair (despite making the switch to online exams). He has been extremely responsive to students this semester and he has been very active online even before quarantine. Take him for 420 if you get the chance.
Michael Marsh
CMSC420

Expecting an A+
Anonymous
03/31/2020
I think his previous reviews were when he was a very new professor. He has definitely improved a lot since then. He is one of the best CS professors I have had at Maryland.
Michael Marsh
CMSC414

Expecting a B
Anonymous
12/18/2019
Marsh was fine (clearly knowledgeable, willing to take feedback, friendly in office hours), but he insisted on spending the entire class reading from his slides from behind the podium, almost totally still. The room tended to be dim, and his voice was steady and soothing. . . The final was unexpectedly all multiple choice, not ideal for me, but the curve was strong. Overall, I'm not going out of my way to take Marsh again, but he's not a dealbreaker.
Michael Marsh
CMSC417

Expecting an A-
Anonymous
06/03/2019
Based on past reviews, I was extremely weary to take Marsh for this class, but after going through it I’m glad I did. He has improved a ton and takes constructive criticism in stride to actually improve the class (the only cs prof I’ve seen do this). Many complain his test scripts are still broken, but these were due to tests that are more in depth than other courses, which I believe is a great thing. You can also tell he loves the subject. His lectures can be a little tough to follow at times as his examples aren’t always the clearest, but he is willing to reexplain anything that may have been ambiguous. Overall, the most useful class I’ve taken at UMD and no regrets on Marsh.
Michael Marsh
CMSC417

Expecting an A-
Anonymous
05/16/2019
Overall Professor Marsh was a much better professor than I think most of these reviews suggest. He has made changes based on what I hear on here. He no longer does take home exams which seemed to have been a major issue in past semesters based on past reviews and reddit threads. He is well prepared for lectures, and genuinely seems to care about students' success. He offers a survey active all semester for students to voice their opinions of the course, and he even sent individual messages to the students who did really well on each exam congratulating them on their success which was a nice way to show he actually cares about students doing well, which is really rare among professors here in my opinion. His grading scripts can be frustrating and his lack of public tests is something that I think could be improved, but overall he is not a bad professor. Class is pretty hard, but you learn a lot about how the internet works which is pretty cool.
Michael Marsh
CMSC417

Expecting an A
Anonymous
03/16/2019
Marsh for 417 was great. He took a systems approach to the whole class which I really liked. If you didn't like 216 then you'll have a rough time, but projects are easy as long as you can read manpages and use Wireshark. It's impossible to fail his class if you submit even a half-assed attempt on all the projects. All exams including the final were take-home. If you don't get an A in the class it's on you
Michael Marsh
CMSC414

Anonymous
11/20/2018
Project grades are always off by at least 20% because he trusts his "scripts". Exams are tough, hard to study for. And everything else is as other reviews described. Terrible professor.
Michael Marsh
CMSC417

Anonymous
10/14/2018
Such a terrible teacher for 417. Exams and projects are so vaguely worded. You need to make several assumptions on exam questions, but if your implementation doesn't match his you get a 0. When we asked for clarifications, he would sometimes give us misleading answers. He never gave us sample input/output even though we asked before every project and exam. Half way through the semester he just gave up on doing slides. Grading felt like it was arbitrary, but he told us not to worry about it because he promised a substantial curve. He ended up setting 39 as the cutoff for a C-, but an 85 was still a B, so he might as well have not curved. He also gives out minuses but not pluses.
Michael Marsh
CMSC414

Expecting an F
Anonymous
08/30/2018
I agree with everyone else
Michael Marsh
CMSC414

Expecting a B
Anonymous
06/11/2018
Worst computer science professor I've ever had at UMD. He puts this university to shame, and the worst part is - he's a pretty nice guy (it's so frustrating). - lectures are downright impossible to follow - he gives high-level explanations and then tests on low-level code implementation - his take home exams require the use of libraries/tools that have bad documentation - his take home exams are heavily biased towards students who have already taken cmsc417/cmsc456 - warning: if he gives take homes, prepare to devote 20-30 hours of work to it and watch the average be a 40-60% - his grading scripts are terrible and you always need regrades - he uses elms discussion boards instead of piazza - he's stubborn, unhelpful, and oblivious in general My advice? Avoid this class at all costs, and don't take any class with this professor. Not worth your time.
Michael Marsh
CMSC414

Expecting an A-
Anonymous
05/21/2018
Nice guy. Worst professor I've ever had. I could go into all the reasons, but frankly it would just be exhausting, so I'll just say this: >He is bad at communicating >His project descriptions are borderline unfollowable >He only holds one office hour a week that is shared between 417 and 414 >His test grades are almost always wrong and you have to ask him for points back every time >His grading is completely opaque unless you bug him for his inputs >He forces you to use elms discussion boards and does not respond to any student questions posted to elms >His lectures do not cover exam topics, they just give general, high level explanations of things >He does not understand the math behind cryptography but tries to teach it anyway >If you take him, you will learn everything on your own DURING the test >He gives assignments that take much longer to complete than he says they will (his catch phrase is "30 minutes of coding per problem") The list goes on... If you take him, prepare to be paying for nothing I wasn't gonna list everything, but I did anyway. Woops. There you go. Avoid at all costs.
Michael Marsh
CMSC414

Anonymous
05/21/2018
Wish i could give a zero rating for his Excellenc in organizing lectures and his remarkable project readmes
Michael Marsh
CMSC414

Anonymous
04/17/2018
worst class ever. Don't even know what I should get
Michael Marsh
CMSC417

Anonymous
04/12/2018
Honestly, one of the most unorganized classes I've ever taken. Avoid this professor at all costs. The first project took nearly 2 months to get back to us, and over half of the students got zeroes due to shoddy testing code. Every assignment we've had so far has had to be regraded. This morning, the day AFTER the drop deadline, he announces the next midterm and final exam will be in class rather than take-home. Completely unprofessional.
Michael Marsh
CMSC414

Anonymous
04/04/2018
He is the worst professor. Just reads off the slides and gives like 4 15 minutes excercises in class. Doesn’t give answers to these exercises. He forced everyone to use elms discussion instead of piazza. Exams are extremely hard avergae was 52 for our first midterm. He doesn’t have time for his students. 1 hour of office hours per week and that too for 414 and 417 combined.i am not sure what grade i have in this class. Extremely unorganized professor. Biggest mistake of my life to take 414 with him.
Michael Marsh
CMSC417

Expecting a W
cnaka
03/30/2018
His lectures are mediocre, but the real problem is how he tests code. He puts our arbitrary project specs without public/release tests and then tests them in a very specific way, causing many students to get zeros for things such as putting a space in the wrong place in the output. He said he would fix this, but I still have no idea what grade I have in this class.