Reviews for CMSC424

Information Review
Peter Keleher
CMSC424

Expecting a C
Anonymous
12/24/2023
Very bad lecturer. He simply reads off slides and does not record lectures either. You will have to teach yourself the whole class. Assignments are not explained well and some are difficult to implement. Exams all had huge standard deviations. These exams and weekly quizzes have lots of material not covered in class, which you are expected to teach yourself from the textbook. Some of the material expected for you to learn is not even covered in the textbook and lots of the material in the textbook is very confusing.
Peter Keleher
CMSC424

Expecting a B+
Anonymous
12/20/2023
He could be the worst professor in the entire CS department. Boring lectures, useless slides, and generally dishonest. He promised a curve for the class in the very first lecture and completely ignored it. He also reiterated that there would be a curve before taking the final, saying last semester's A- was about an 86 and that this semester would be similar. He then gave no partial credit on the final and the A- was a HARD 90 (89.9 does not go). Awful professor, communicator, and generally dishonest. AVOID HIS CLASS AT ALL COSTS
Peter Keleher
CMSC424

Expecting an A+
Anonymous
12/16/2023
Despite the slides being mediocre and the 12 quizzes being a bit tedious, the class was low-stress. His exams are very easy and he gives tons of past material. He is also responsive on piazza and answers questions during office hours, and projects are easy. He even tells you what is on the exam and what topics you can expect, so he's very generous in this aspect. The TAs on the other hand are a tossup though and most are not helpful. They also do not answer questions properly. Make sure you read the textbook to learn. There’s a lot to read but the material isn’t anything analytically intensive. It’s just textbook and conceptual memorization. I’d recommend him for sure.
Peter Keleher
CMSC424

Expecting a B-
MentalAnguish
12/05/2023
Peter is a suitable lecturer. I do wish he would record his lectures or get a microphone (it was sometimes difficult to hear in class). The lectures were a deluge of information, most of which is not needed for an exam, but is probably useful if you really want to take all of this database stuff to heart. I found it difficult to know what was going to be tested before the exam. The content itself is tough following the latter half of the class, where it leaves the realm of using databases and enters the realm of hardware and how databases themselves work. A NOTE: This class is not just about using or setting up databases! A lot of the class is digging into the nitty gritty about how different parts of a database works. I definitely got in over my head on this one.
Peter Keleher
CMSC424

Expecting a C
Justacoder
12/01/2023
Very poor expirence overall. He read of lecture slides never goes into detail. His exam and quiz often have content not covered in lecture, it is difficult to find examples relating to questions. This projects are often confusing and structures of objects are unclear. Giving him some credit he often gives extensions and review material. You'll spend alot of time teaching yourself. The textbook has a lot of good information but is often hard to follow. Not the worst professsor ever but generally avoid.
Daniel Abadi
CMSC424

Expecting an A+
juiceman
08/26/2023
1. Did you find the exams and major assignments fair? · The reading quizzes are connected to the readings, but some questions can be tricky and require close attention. · Clicker questions are free as long as someone provides a reasonable justification during class. · The midterm exam was fair. The final exam was challenging but had a significant curve (20%). · The projects were manageable, taking about 10 hours each. The last two projects are based on Berkeley's database class and require understanding the existing codebase before applying class concepts. · The breakdown was projects (32%), midterm (20%), final (32%), clickers (8%), and reading quizzes (8%). — 2. Did you feel the professor had reasonable expectations for the students in the course overall? · Yes. There were reading quizzes almost every week. Clicker questions were challenging but thought-provoking. Exams were reasonable. Participating during class and answering non-trivial questions was expected. Fair application of what we cover in the textbook and class. — 3. Did you like the professor's teaching style? · I enjoyed the professor's teaching style as he provided clear guidance on how to prepare for and succeed in the course. · He offered ample practice problems, gave advice on studying for exams, and emphasized hands-on practice. The midterm heavily focused on the projects. · What I particularly enjoyed was the professor's dedication to creating a positive classroom culture. He made an effort to personalize interactions by remembering and using our names. He encouraged questions and fostered discussions. It was evident that he cared deeply about the subject matter and his students. His enthusiasm was reflected in his attire as well, as he wore a suit to every class. Very caring. — 4. Was the workload appropriate for the number of credits? · The workload was appropriate but slightly heavy, considering 17 reading quizzes (approximately 1.5 hours each), 4 projects (each taking 10 hours), and 2 exams (requiring 10 hours of study each). — 5. Was this course valuable or a waste of time? · This course is highly valuable, especially for those interested in software engineering and data science/machine learning. Interacting with databases is a crucial skill in various careers. He emphasized making 424 practical rather than overly theoretical. · The first half of course covers advanced SQL, ER diagrams, schemas, normalization, and database building components. The second half focuses on theoretical aspects, considering memory constraints and algorithm costs. Cost considerations of queries was one of my favorite topics. B-trees are a significant topic as well. · Projects 3 and 4 provide excellent practice working with large existing codebases. · The TA's (Pooja, Cuong) contribute to the positive learning experience. — 6. How much support did you receive throughout the semester (office hours, extra resources, etc.)? · Four hours of TA office hours were available each week, and the TAs were responsive to Piazza and willing to provide assistance with code privately. · The professor had office hours by appointment (after class) and was always willing to explain clicker and reading quiz questions. · He offered a bonus project to raise project grades and had a generous project late penalty. · Three reading quizzes and three clickers were dropped. · While the professor sometimes spoke quickly and didn't record classes, the classroom culture, energy, and support were excellent. Attendance was required. — 7. TLDR Weekly reading quizzes, clicker questions, mandatory attendance, relevant concepts, fair projects and exams, exceptionally caring and intelligent professor who encourages participation during class. Decent workload, but this is my favorite CS class at UMD. I highly recommend it with Abadi.
Daniel Abadi
CMSC424

Expecting a B-
Anonymous
05/29/2023
Incredibly knowledgeable about databases. Great lecturer, projects and weekly quizzes are difficult but you get all the help needed. Definitely recommend!
Daniel Abadi
CMSC424

Expecting a B
Anonymous
05/20/2023
Enjoyed this class with Dr Abadi. You will learn a fair amount about SQL and using DBMS properly, but even more about the in depth technical details of designing databases. The first half of the class is straightforward and fun, learning about writing SQL queries and E/R models. Midterm was pretty easy if you paid attention. The material gets very very difficult towards the end of the semester. Reading quizzes get hard as the semester goes on. The projects become very time consuming and somewhat confusing as well. As always, if you start early, they are doable. Final was egregiously hard, but Dr Abadi informed us that there was a mistake made regarding the difficulty level. A quite substantial curve was provided on the final exam. Overall, would recommend, but be ready for a moderately heavy workload at times.
Amol Deshpande
CMSC424

Expecting a C-
Anonymous
01/28/2023
Content in projects had very little to do with exams and lectures and had little impact on our grade relative to how time consuming they were, there was just too much content in the course to where we were allowed a cheat sheet on the final and it was possible you missed half the content on the exam
Amol Deshpande
CMSC424

Expecting a C+
Anonymous
12/21/2022
Let’s start with the pros. The course teaches you a decent amount of concepts about different database systems, how to design them, and how to work with each. The projects were a lot of fun and taught me most of what I know about databases. I would say you could finish a project in a day or two if you understand the concepts. With all that being said.. the homeworks and exams are MISERABLE. Amol has HUNDREDS of slides on a subject, but they don’t really teach you much. He does go in depth about some subjects in class, but a lot of it is left to self teaching (go figure, it’s a CS course). I wouldn’t take this course again. A lot of what I found to be useful can be learned on your own if you follow some advanced SQL book and lookup Apache spark and mongodb. The last 4 weeks of class are mostly useless, as he goes into how database programs are implemented. It may seem useful at first, but there are just so many concepts to memorize. I’m giving the class 3 stars because I enjoyed the projects. The other material was insane. On the bright side, there is a pretty generous curve.
Amol Deshpande
CMSC424

Anonymous
12/20/2022
Learned a lot of material in this class. We started with SQL, some theory about database design, MongoDB, Spark and ended with some more theory. Definitely a challenging class but there was a lot to learn. Every homework/project had a one week, no questions asked extension. Exams were challenging but also always had questions that were on the homework.
Peter Keleher
CMSC424

Expecting a B+
Anonymous
12/17/2022
I had an amazing experience in CMSC424 with Prof Keleher. I think many of the 1-2 star reviews judge Keleher a little too negatively. I liked this class and the way Keleher taught it. Pros: 1) Keleher actively responds to Piazza posts and answers student questions in office hours and is very understanding if you communicate with him proactively 2) Weekly lecture quizzes had questions and solutions that helped prepare for the exams and final 3) Assignments were well-explained and not too difficult to implement 4) He posted practice exams with problems, detailed answer keys, and topic lists to prepare 5) He answered questions in lecture and recommends good resources and sections in the textbook 6) TAs are responsive and had both online/in-person OH and responded to my Piazza questions quickly and private posts 7) Cutoffs for the overall grades were pretty generous 8) Well organized, good logistics and regular announcements on Piazza 9) Topics covered in class are very applicable to real-life database engineering Cons: 1) Doesn’t record lectures which I found a little challenging at times as hearing his personal commentary would have helped supplement my understanding of the material Other than that, this was an excellent course that I learned a lot from and I would definitely recommend taking it with Keleher.
Amol Deshpande
CMSC424

Anonymous
12/15/2022
The only pros to this semester were that the dreaded B+ tree, the E/R Project, and the math-related projects are removed. Spark is a separate project and MongoDB was another separate project, along with a new JDBC/ODBC project. That's the only reason why I'm giving this review two stars, since the projects were actually useful and were a lot easier than they were in the past, and from the generous late policy. But other than that, this was miserable. Each topic no matter how complex it is was gone through in such surface level so then we have to pick up extra time ourselves to thoroughly learn the concepts, especially canonical cover, and concurrency. For canonical cover, we were just supposed to look up an algorithm instead which was ridiculous. Also, the fact that we have to study I don't know a 1000 slides for an exam that can ask about literally anything is ridiculous too. I could be fine with all of this if the homeworks had detailed solutions after them. Some answers are just marked as "Correct" or "Incorrect" without giving us the full answer, and how we get to that answer. Also, as I mentioned earlier in learning the material on our own, examples were not given well at all. Examples should mimic homework difficulty so then we can learn from them and apply to the homework problems, not learning them in surface level and then having to take a lot of extra time just to do the complex ones. And with the late policy, official solutions can't be released, which I understand that. But if that's the case, then we need more complex examples with solutions so we have a point of reference. Overall, this class was just a lot. If you want to learn databases, you're better off learning it on your own.
Amol Deshpande
CMSC424

Expecting a B
Anonymous
12/13/2022
He is very very smart and this course covers a LOT of material. I was new to everything database/SQL, but had to learn fast. That being said, I thought the professor did a great job at teaching the content and answering questions for those who attended class. Projects were long but manageable, not to mention that he gave week long extensions available for every project/HW as the late policy. Overall, very useful class with lots to learn.
Amol Deshpande
CMSC424

Expecting a B-
Anonymous
12/13/2022
This was the most miserable class I have ever taken. It's hard to know where to start: The review below touches on this, but the class is structured and managed terribly. The slides don't have enough information to rely on, but the lectures often weren't useful enough, so it felt like I was losing by going to class (I went to class every day) or losing if I didn't go. Some of the slides literally say to look stuff up online. There is a topic called Canonical Cover we "learned" where the slides said to look up how to do it, we didn't do any examples in class, and then we had to do Canonical Cover twice on homework and on an exam. Because literally everything in the class is on exams, there was even a case where something we learned in the last 15 minutes of class the day before the exam was on the exam. It makes it extremely difficult to study, especially because slides are grouped by unit, which means you have to sift through a ~250 slide slideshow to find any information. Furthermore, Amol does not provide good examples of stuff. The limited examples he provides are often copied and pasted form the textbook. I had no SQL experience before this class, but when we covered SQL he never really taught us how to write queries, he just sped through the syntax. This meant that I struggled on the SQL programming assignments. Assignments are doable, but often require a ton of time. We had homework and projects due within days of exams. At one point we had three weeks' worth of homework assigned simultaneously. He does schedule assignments they're all done before Thanksgiving, but as a result we'd only have 1-2 days of "rest" between programming assignments. Homework is your only attempt to get practice with the vast majority of the class content. The homework was okay, but he never provides answer keys because of his lax late policy. I'd rather have him be slightly harsher about homework deadlines so I can actually get feedback and learn from the homework, because the Grade Scope rubric often doesn't provide the feedback you need. This class also relies on Docker, so if you have a slow/old computer, like I do, you will be miserable on the programming assignments. Just a heads up. To summarize, this class was terrible. If you are completely new to databases, like I was, just learn how to use SQL or MongoDB on your own. The hell you have to go through in this class is not worth the very little gain you'll get.
Peter Keleher
CMSC424

Expecting an A
Anonymous
12/12/2022
Organization of the course was good, weekly quizzes covered content taught in the past two weeks or so, outlines for exam content were specific and exams were pretty similar to the provided sample exams and representative of the content taught/quizzes provided. I thought about 70-80% of the content in this class was pretty applicable to real life, the first 6 weeks focus on SQL and E/R diagrams/schema design. The rest of the course goes farther into indexes, query planning/optimization and more "under the hood" stuff about how databases work, which is still applicable although sometimes it felt we spent a lot of time studying one very protocol/algorithm that is only sometimes utilized in real life. Also thought the projects in this class were fair. There's about one every week or two and they're fairly focused on one specific topic, meaning once you understand what you're doing they go by pretty quickly. The reason for 3 stars is because mostly of the lectures/slides. There were more than a few times the slides were outdated and incorrect. The slides are also ambiguous and sometime difficult to understand/follow along. I also felt as if the lectures weren't very helpful, I still went to all of them but found myself needing to teach myself a lot of the content using the slides/textbook (the textbook is really good btw). The TAs are helpful and they had plenty of office hours, although the professor had no dedicated office hours. TAs/professor were pretty responsive on Piazza. Overall I'd recommend mostly for the usefulness of the content. From reading other reviews it sounds like this semester was a lot better than previous ones.
Amol Deshpande
CMSC424

Expecting a B+
Anonymous
11/03/2022
This is THE worst structured course I have ever taken, which has not been helped by Amol's lectures not being useful, mostly just reading off of extremely long slide decks. Despite their size, the slides provide only minimal information to complete weekly homework and projects, so we are expected (explicitly) to read up on the programming language manuals for examples and syntax. The project descriptions are extremely vague and full of typos, with him usually updating them multiple times after releasing it. Sometimes the project descriptions contradict to examples we have gone over in class, making it all very confusing. The class schedule is also a disaster. We will have homework due the day before exams, with a full project due only days after. On the topic of exams, he has put material on an exam that we had not learned until THE LECTURE BEFORE, with no opportunity to practice concepts on homework/projects. There were no explicit topic lists released for exams, usually having to be put together by scouring many piazza posts. The exams he released as practice did not accurately reflect the topics on the exam due to him re-organizing the syllabus, but he couldn't even be bothered to write an accurate practice exam. The class has entirely too much content, trying to jam in at least 2 semesters of content, a lot of which is theory with no practical examples of why it is useful. I would not recommend taking this course under any circumstances. If you want to learn SQL, you are better off teaching yourself than subjecting yourself to this misery.
Peter Keleher
CMSC424

Expecting a B+
Anonymous
05/21/2022
I took this course in Spring 2022 Pros: + He really got his act together for the final, after one of the most disastrous midterms I have ever taken. He gave an exact topic breakdown of each question on the final to ensure you knew what was coming. + All topics on the first midterm were taught and covered really well. + The projects from this part of the course were also really manageable and conveyed the topics taught well. + The first midterm as a whole was very fair and manageable + Late day policy is extremely generous: 20 no penalty late days shared across all assignments Cons: - Everything after the first midterm went to complete shit. Lectures suddenly became extremely dry, and it was hard to know what concepts to focus on and would become important later. Much less people stopped coming. - Topics in this part of the class were significantly more lower level and seemed to have less relevance to what you might be asked to do in real life - The second midterm went poorly as a result of this, with no one knowing how to answer the questions or having a good grasp on the topics - Projects in the later half of the course were exclusively instructor written but had almost no documentation. Since they were in Python, it was impossible to know what each function was asking for and was returning. This made coding the projects nigh impossible - Oftentimes, concepts were taught AFTER the weekly quiz corresponding to that topic was due, with the idea being you would use a late day. While the late day policy is generous, it contributed to an environment that encouraged hard quizzes, with the expectation that you would simply turn it in late after lecture
Amol Deshpande
CMSC424

Expecting an A+
Anonymous
01/31/2022
Amazing course. Learnt a lot about databases and the projects were fun to code. He is a good person and a great lecturer. He and his TAs are very responsive to questions after class on CampusWire which was a godsend because database environments and coding lead to a lot of questions. They also have a strong grip on the material and I got all my queries resolved. Highly recommend the class. One of the best ones that I have taken at UMD.
Amol Deshpande
CMSC424

Expecting a B
Anonymous
01/28/2022
I took the course during Fall 2021. The biggest issue with the class was his teaching style. He would just plow through his slides which were pretty much just copy and paste from the textbook, but he wouldn't explain the content on the slides well. He would pretty much just end up reading it straight from the slides and then assume that we know exactly what it means, while on most slides there was always something he could explain more. This made the class really difficult when it came to exam time. There could be a question that was somewhat similar to the slides, and many students would still have no clue how to do it, which is a big issue. When you go to office hours, there have been multiple times where I've asked the different TAs the same question and have gotten a different answer, which made things even harder to understand. The assignments were actually not too hard, just takes a lot of time, so you really have to set time to really work on it. Just getting a project set up could take 2-3 hours if your unlucky. Usually though, they are doable and you can get 90+ on all of them. While the teaching style was bad, you could get a 50-70 on every exam and midterm and still end up with a B/B+, so it ends not being the worst class. You do end up learning SQL, Spark, MongoDB, and important relational database concepts in the class.
Amol Deshpande
CMSC424

Expecting an A
Anonymous
12/25/2021
He gets a lot of hate but I don't fully understand why. His exams are difficult but he clearly cares about the students wellbeing by moving our midterms and finals online due to students fearing about COVID. He also frequently takes questions during lectures, which is not something other CS professors normally do. The projects in this class are quite tedious (especially project 4 and its lack of documentation), but overall he's a really nice guy, explains things well (at least for me), and has a really flexible late day policy.
Amol Deshpande
CMSC424

Expecting an A+
Anonymous
12/24/2021
Amol is a nice guy and generally means well, but this class has a lot of issues. 1. Assignments - In Fall 2021 we had 6 assignments (2 written, 4 programming). While they are somewhat helpful in understanding the material, their length makes them really time consuming (more than expected for a 400 level class). For example, I remember writing 20 or so SQL queries where 10 would have been perfectly sufficient, and in general the written assignments were really long. They aren't necessarily difficult, but you definitely have to start early. One nice thing that I really appreciated was that Amol gives you 10 free late days (up to 5 on a single assignment). 2. Exams - The exams are quite difficult, not in terms of content but more so in terms of time. If you had 24 hours to complete it, you could probably get 80+ assuming you understood the material. But with the time constraint, it was definitely very hard to complete all of the questions fully (the averages on the exam were around 60%). One good thing is that Amol puts a fat curve on the class. He didn't disclose the official cutoffs, but in the beginning of the semester he said that an 80% would be an A (i think it ended up being a few points lower). 3. Content - This is probably my biggest gripe with the class. Amol tries to cover at least 2 semesters worth of content in this class. As a result, he moves extremely fast and tends to not explain things as fully as he can. For in depth explanations, he just tells you to read the textbook (which is decent). The content starts off at a decent pace, but after midterm 1 really picks up. I didn't feel like I was able to absorb anything meaningful because I was so focused on just cramming all of this information into my head to study. I also think that a lot of the content can be changed. We spend a lot of time learning about specific operations on disk, even though Amol prefaces the unit saying "no systems actually do it this way anymore." He justifies it saying that this is still the foundation, but I personally found it very discouraging. 4. Campuswire - This is maybe more of a personal issue, but Amol insists on using campuswire instead of piazza. I really hate campuswire (and I think the majority of the class did too). I find it harder to search posts, and you can't follow questions for when they've been answered. In general, databases is a pretty dry subject so I don't blame Amol for the class being generally boring. One thing I really liked was that he was very responsive so you generally got a fast response to questions on campuswire. He did also listen to students' COVID concerns and had exams online (along with recorded lecture). There's definitely improvements to be made, so unless you are very interested in databases or need the class for a major requirement, I would avoid this class for now.
Amol Deshpande
CMSC424

Expecting an A
Anonymous
12/23/2021
good guy, but not the best at teaching/running a course. all the projects were rather difficult and required you to do a lot of learning outside of class to figure them out. on the bright side, no secret tests. the midterms and final were extremely long and difficult, but he heavily curves (A- is about an 80) to make up for it. giving him 3 stars because he does seem to care about his students learning, just doesn't seem the best at it
Amol Deshpande
CMSC424

Expecting a C-
Anonymous
12/18/2021
Not a good class at all. The lectures were very dry. I get it, databases aren't the most exciting topic in the world. But I just found it hard to retain anything from the lectures in this class. It's a very, very good thing that all the exams ended up being online, because I needed my notes and the slides as a reference. I just finished the final exam and there was so much stuff that I remember him talking about in class, but I couldn't remember any of the details of. Deshpande just doesn't seem to be very good at teaching. I don't think he got the concepts across very well at all. And man, this class is actually really hard! The projects will eat up tons of your time. The exams are really, really hard. Even the weekly quizzes were pretty challenging. The upside is that there's a very, very, very generous curve. No matter what, a 60 is the minimum grade to pass this class. That cutoff can be lowered, but never raised. So there is plenty of leniency. This class actually reminds me of 351 in a few ways. 424 focuses a lot on theory at times, much like 351. 351 is extraordinarily hard, but there's always a very generous curve at the end. This class is the same way. I have no doubt that the SQL skills learned in this class will be helpful. But this class is so much more than SQL, and I kind of mean that in a bad way. There's relational algebra and functional dependencies, E/R modeling, database implementation, then NoSQL stuff, and finally transactions. That's a vast array of topics, and they're done in a strange order, too. This class needs to be whittled down a lot. Focus much more on the SQL and NoSQL stuff. Then at the end, focus on database implementation. Cut out all the theory. Basically, what I'm saying is, this class covers a lot of useful information, but it also covers a lot of useless information. And under Deshpande, I think it's taught poorly. If I even got a 50% on this final, I'll be lucky. I'm just glad the cutoffs are so generous that I could afford to get a 10% on the final and still pass.
Amol Deshpande
CMSC424

Expecting an A-
Anonymous
12/08/2021
He is a very good and fair professor. He genuinely cares. CMSC424 could use some improvements - such as better coverage of the theory assessed on the exams. Most of the topics are covered well but the exams can be quite tricky. Projects are fair and even fun at times. I took the course hoping to be better prepared for industry since I lacked database experience. For me ~60% seems immediately useful and the remaining ~40% was some cool-to-know theory and some challenges/issues in the space. Others may not be happy with this ratio or they may perceive a different ratio. I enjoyed the class. I'd give it a 4, but I am giving it a 5 because it is definitely better than 2.93 it currently stands at.
Amol Deshpande
CMSC424

Expecting an F
Anonymous
12/06/2021
I would give 0 star if I could. The lecture slides are basically 100+ pages table of content with excessive amount of useless information. The exams are insanely long and difficult given only 60 minutes. His lecture is just hard to understand and he doesn't explain things well. Worst class I've ever taken at UMD.
Amol Deshpande
CMSC424

Anonymous
12/03/2021
Absolute garbage professor. He gives out work without even teaching the material. Additionally, he has no respect for student concerns about taking an exam in person while Omricon is raging through the United States. Gave out assignments where majority of the time to work on it was during the Thanksgiving break. Would not take class with him.
Peter Keleher
CMSC424

Expecting an A+
Anonymous
05/18/2021
I don't think Pete is as bad as some of the reviews below state. First, I will say yes, he is not responsive on Piazza, and him not releasing recorded lectures is annoying, along with his refusal to post the slides beforehand. Some quizzes were hard, and he could have released answers sooner to some. The query optimizing part of the class was needlessly difficult and not very useful. However, I thought his lectures were ok- I've definitely seen waaaay worse. His exams were quite easy, with high averages, and were a lot like the quizzes. No final, too, which is a big relief. Projects were also reasonable, and I appreciate that they were worth a lot of the grade. Considering that other classes like CMSC351 and CMSC451 place an undue grade emphasis like 2 exams, this is a major relief. He also gave a total of 20 late days across all assignments, no penalties, which is also great. The content is also very useful to learn, especially in the first half. Like a review below said, if you plan on taking CMSC424 and see Pete is teaching it, you should be fine with him.
Peter Keleher
CMSC424

Expecting a B+
Anonymous
05/16/2021
Do not take this professor. If he is the only one available, take the class next semester. Boring lectures, which he recorded but refused to share with anyone. His quizzes tested us on material that had not been taught yet. Also, he is the most difficult person to communicate with. He will only answer piazza posts if he feels like it and his answers will be at most a few words. You have a follow-up question to his 4-word answer? Good luck getting another response. In the syllabus, he says to email him if he does not respond on piazza. I sent him at least 4 emails this semester and he didn't respond to any of them. He really doesn't care about his students and he definitely wasn't there for them during this difficult online semester.
Peter Keleher
CMSC424

Expecting an A
Anonymous
05/13/2021
He's an average professor, but the class was pretty good overall. We had weekly quizzes and project assignments, and we had three exams (no final). The lectures were kinda boring, but the lecture slides were useful and a good resource for studying for exams. The most annoying thing about the class is that the quizzes were based on content that we didn't learn yet, which meant that we had to learn topics ourselves using the textbook. I still think overall the class and the coursework was pretty fair, and the class isn't any better or worse than other 400 level cs classes.
Peter Keleher
CMSC424

Expecting an A
Anonymous
05/12/2021
Worst professor I've had at umd. His lectures are boring and useless. He doesn't even upload them and refuses to send them to anyone even if they were sick (although he records them!). His quizzes are due at noon (before lecture) and the material on the quiz is taught after the quiz's deadline (in lecture). He doesn't care about his students and only answers piazza questions selectively. He does not respond to emails and does not make ANY sort of accommodations/exceptions to help his students. Even though I did well in the class, I genuinely believe that he wants students to fail and doesn't give a f**** about them. Do NOT take him for any class!
Peter Keleher
CMSC424

Expecting an A
Anonymous
05/11/2021
I did well in his class but I basically self taught the entire curriculum. The textbook is your friend if you can't get anything from the lectures. He wouldn't upload lecture recordings which I found quite annoying, and spending so much extra time reading the textbook for quizzes on material we didn't even learn in class yet was also quite annoying. The late days, exams, and assignments were fair but the assignments sometimes had vague descriptions. Overall, if you want to take CMSC424 and you have to take it with Peter, do it. I wouldn't avoid him for the sake of avoiding him, but don't expect it to be the best class....
Peter Keleher
CMSC424

Expecting an A
Anonymous
05/10/2021
Mediocore professor. The lecture and slides are somehow vague and disorganized. But do cares about students' needs.
Peter Keleher
CMSC424

Expecting a P
soji
05/05/2021
Not a great experience. I took the course while it was online and it was harder for unnecessary reasons. Keleher refused to upload lecture recordings to us so we only had the book and slides. His reasoning being we should be reading the textbook in advance and come to class for clarification, but he never told us the chapters we should be reading. On top of that he was giving us quizzes on material he hadn't taught yet. He justified it by saying that he offered a total of 20 late days for assignments, but that point is kind of moot when you have a hard enough time preparing yourself
Peter Keleher
CMSC424

Expecting a P
Anonymous
04/28/2021
Other than this class being useless, Peter is an awful teacher. He doesn't record lectures, reads off of slides, and seems to have no passion for teaching the material. Avoid if you can.
Peter Keleher
CMSC424

Expecting an A-
Anonymous
04/13/2021
Mediocre prof. Reads of the PowerPoint rather than teaching. Posts quizzes and makes them due before he actually teaches the material. Refuses to post lecture recordings. Projects aren't bad. Very vague on information relating to exams. Pushes students to participate.
Peter Keleher
CMSC424

Expecting an A
Anonymous
04/01/2021
This is a good class overall, especially in an online setting. The content is definitely relevant and need-to-know, and Keleher is a good and straightforward lecturer - doesn't meander or BS around at all. Some might consider him too curt but I honestly prefer that to a professor that's distracting or all over the place. Slides are good, although I wish he could post slides before lecture and also record them, but that's mainly to give us incentive to show up to class. Projects aren't too bad, we have a week to do each and each are worth a good chunk of the grade. Speaking of which, I'm glad that the grade distribution for this class is balanced, so that no one assignment / exam is worth an insane amount (looking at you 351). Exams and quizzes are also fair. Overall, I'd recommend taking this class with Pete if you can.
Amol Deshpande
CMSC424

Anonymous
03/10/2021
I took this class when it was online during covid. It was a terrible format for the insane amount of information they expected to teach. The pre-recorded lectures were decent (towards the end it started getting to be too much), but the once a week live classes were just simplified re-iterations of the pre-recorded lectures and did not add much value except for the few classes the professor created polls to practice application of the material. The professor tried to answer questions during class but often ran out of time because he was spending most of the time re-iterating the material. There was no clear guidance to use the textbook, but sometimes he would answer a student question by just saying to read the textbook. Homeworks were way too long and sometimes vague in expectations. Exams were also too long to finish for the average person. There was an overall curve at the end that helped take into account the difficulty and effort required to complete all the assignments. I think a lot of the material in the class is useful to know, but since there is SO much information, it's hard to take all of it in and pick out which specific things you should know for homeworks or exams. A good word to describe this class is "overwhelming," but if you're prepared to consume an insane amount of information (with a decent amount of self study), then you could get a lot out of this class.
Amol Deshpande
CMSC424

Expecting an A-
Anonymous
01/08/2021
I believe this class is necessary for all computer science majors to take because it gives you an in depth overview about databases and the theories/concepts behind them. However, the real world will probably cover 20% of what you actually learn. Since it was the covid online semester, I appreciate Amol for having a synchronous call once a week to cover the panoptos for the week, but if you didn't watch the videos or have any questions the lecture is useless. There was a homework worksheet on gradescope and mini coding project due every week which did seem tough to finish at times (especially at the end of the semester) but he was lenient and gave us 20 late days for the whole semester while dropping some assignments. The midterms were very hard and the averages of them were on the low side, but the curve was extremely generous (80% is an A). He is responsive to concerns and was one of the more understanding CS professors that I have had. The only comment that I have is that there are so many topics that you feel you are zooming without really learning it in depth. But it is kinda impossible to fail this class since the curve is generous and if you show effort within each assignment, you are guaranteed to pass.
Amol Deshpande
CMSC424

Expecting a B+
Anonymous
12/21/2020
It's a good course but I don't know if its transition to online has been best. As many other reviewers have noted, there's a definite disconnect between the lecture/slides/textbook and the homework at times. Most coding assignments are fairly easy, but worksheets can be very vague and often require office hours for clarification. Projects/worksheets take up about 75% of your overall grade and there is probably a minimum of a solid 8 hours of homework each week. It seems like the curve will be fairly generous and I believe this class is pretty hard to fail, but it's also far from a piece of cake. Also, there's simply way too much material involved in this course. You jump from topic to topic week after week while it feels like you're really just skimming the surface.
Amol Deshpande
CMSC424

Expecting an A-
Anonymous
12/18/2020
good class pogchamp very hard - but lots of interesting material online environment is, if anything, just as good or better than in person lecture, as is the case with most computer science courses The coding homeworks are often straightforward, but the gradescope questions are usually relatively long. Overall not too bad of a class. The exams are hard, but everyone does terribly, and the grading is extremely flexible.
Amol Deshpande
CMSC424

Expecting a W
Anonymous
12/14/2020
First course I've ever had to withdraw from (3.9 GPA double major). Semester started off fine (SQL section was handled fairly) and veered completely off the rails into incomprehensible algorithms which were not well taught. Professor started off giving polls on certain concepts, but then didn't bother when it was really needed. Homeworks regularly required us to sift through documentation, including learning procedural SQL (not covered in class), to low-level implementations of data structures and joining algorithms in Python. If I wanted to write shitty low-level code for 10+ hrs/wk I would have just taken Operating Systems. In addition, even though the professor gives 20 late days, the standard due date for homeworks is within 3-4 days, so it's not that big of a helping hand. I thought the HW in the later half of the course would be similar to the difficulty in the first half, and got screwed having to write those algorithms with limited time. Midterm was filled with questions on highly specific concepts that were covered once in class. Average on Part 2 of the midterm was <50%. This midterm was also supposed to be taken closed note, but on the honor system. Any student who cheated probably gained a major advantage due to the specific nature of the questions. Avoid CMSC424 online with Deshpande at all costs. This class singlehandedly made me switch out of Data Science into the Machine Learning track, and probably killed any interest I would have in Data Science at all, which was a shame since I really enjoyed CMSC320 and CMSC422.
Amol Deshpande
CMSC424

Anonymous
11/16/2020
The lectures are worthless, the homeworks take 10+ hours to complete and even then getting good scores on them is extremely difficult, the exam was terrible and poorly managed, and I don't think I learned a single thing this semester other than some useful surface level fragments of information
Amol Deshpande
CMSC424

Expecting a C
Anonymous
11/03/2020
CMSC424 during the full covid semester is actually kind of absurd. The concepts build up extremely rapidly, but the extraordinarily difficult homeworks don't even cover material relevant to future jobs. If I ever have to calculate precisely how many hard disk seeks and block reads occur when running a SQL Hybrid Hash merge join operation in the worst case at a future job, I will actually eat my hat. The fact that homeworks ask us to effectively re-derive and analyze internal sql algorithms is a bit ridiculous for this semester. I made the mistake of not doing a couple early homeworks to make room for other classes, thinking the difficulty would be consistent throughout the semester. Turns out I need every point I can get in this class, and that's not really possible with how inscrutable and impossible the homeworks have become.
Amol Deshpande
CMSC424

Anonymous
11/01/2020
This class as an online course has been horrible. The homeworks are absolutely killer and take 10+ hours a week to get done, if you can even figure them out at all. They’re usually 20+ questions and some programming assignment that the instructions are often unclear for. Multiple times during the homework it feels like during lecture we were taught how to do a doggy paddle and the assignment is like figure out how to swim across the Atlantic, good luck. The midterm was poorly done too, with 2 parts on elms being multiple choice and a writing section, timed. I truly feel like I haven’t learned that much and the homeworks are incredibly frustrating. Lectures are not great either and we have a synchronous time every week where we meet and he just repeats what’s on the slides from the videos we already watched. This class is very poorly organized and I would not recommend it to anyone due to the frustration and headache.
Amol Deshpande
CMSC424

Expecting an A
Anonymous
05/02/2020
Nice professor. Didn't do the best job handling covid, but was clearly trying and cares.
Daniel Abadi
CMSC424

Anonymous
07/08/2019
Pros: Nice guy Lenient grader Listens to student's concerns Easy and fun material in the beginning Cons: Extremely boring lecturer The class material is extremely boring for the most part Towards the end of the semester the material becomes very difficult
Nicholas Roussopoulos
CMSC424

Expecting a B
Anonymous
12/11/2018
Very outdated class. My class average was a 50% and I got above that just by cramming before tests/quizzes. The final project this semester required us to make an android app and node js server, none of which even had to implement all of the advanced things we learned. Slides are also mediocre and literally just ripped from the book. I feel like I learned all of the important stuff with one the first 5 weeks then the rest of the course was just needlessly complicated and not very useful.
Daniel Abadi
CMSC424

Expecting an A
Anonymous
05/14/2018
Good Professor, kinda boring to listen to during lectures but the material is interesting. Willing to listen to students about concerns with the class and will actually do something to address these issues. Exams are pretty hard though, but he curves them enough.
Daniel Abadi
CMSC424

Expecting an A-
Anonymous
05/02/2018
Really nice and lenient grader. Exams aren't too hard
Amol Deshpande
CMSC424

Anonymous
01/24/2018
Very nice professor, willing to work with his students. His projects earlier on in the semester aren't a joke (unless you've already studied python and django). So much stress in finishing each project, but it really hammered in the concepts for databases. I would recommend this course, but probably not to final semester seniors.
Peter Keleher
CMSC424

Expecting a B
Anonymous
08/20/2015
A lot of people say he's a douche or a jackass or w/e, so I was a bit worried when the class first started. In my opinion there's nothing to worry about. Yes, there are times when he gets a little impatient with people, but to me it didn't seem any more extreme than any other professor. His responses on piazza were always curt, but I feel like most professors give super short/curt responses that could be seen as rude when it comes to written communication. As far as teaching style, he's your average CS prof. Go to class, he pulls up slides and goes through them. He seemed to actually care whether or not students were understanding the material as he would stop and check often if people were keeping up. He would also encourage people fairly often to ask questions. In my case, it seemed like any of the few signs there may have been of him not enjoying teaching the class stemmed from the lack of class participation when he would encourage it (which was often) so he would be left talking at us, or there would be a dialogue between only him and a couple students.
Amol Deshpande
CMSC424

Expecting an A
rockinbassman
06/22/2012
Prof. Deshpande was a great professor (especially for computer science courses). He did not just stand in front of the class and read off a power point. He actually taught the concepts, sometimes with no presentation at all. When he did use a power point, it was as a visual aid and not as a crutch. For this semester, he did only quizzes (no midterm) and a final, plus homeworks. I liked the quizzes because it removed the stress of having a big midterm, however, it required you to always be caught up in the material.
Nicholas Roussopoulos
CMSC424

Expecting a B
kballsler
12/14/2011
Very tough class. He is a funny guy and knows his material, but expect everything to be self learning through reading the disastrously insane textbook as well as his lengthy slides. 2 homeworks (5%), 2 SQL Assignments (10%), 1 Project (30%), 1 Midterm (22%) and Final (33%) The class project involves scraping web data for a topic he chooses. Everything else is done on your own. Midterm and Final is extremely long and tough even for the TA to finish with the allotted time. No curve. If you are the "C" type of CS student who puts in <=60% and expect to pass then expect to get murdered in this class. No pusssyfooting or you WILL get stomped on and tossed aside with a D or F.
Nicholas Roussopoulos
CMSC424

Expecting an A
random
12/20/2010
I agree with the previous review about him just reading off the slides. DB is a very important and useful class though. See if you can get it with another professor. Nick's tests are very hard, and because he doesn't teach much (except for reading off the slides), you will find things going rough, unless you can keep up with him by reading the book. On the other hand, I was surprised when he covered some topics at the end of the semester and did them on the whiteboard. He was so effective, and because the guy knows his stuff really well, it worked out great. But that like last week of classes. During rest of the semester, it was all ugly outdated slides. If you get stuck with him, convince him to do things on the board; will make your life so much easier. But do take this course especially if you are looking to go into the industry. Maybe look for a different professor. He has a midterm and a final, two SQL assignments, a couple of homeworks, and a major class project, which was very hard, and we didn't have much help on the project. Also, read the book if you are taking it with Nick. Even though he covers most topics on slides (half-heartedly), his tests are definitely from the book.
Nicholas Roussopoulos
CMSC424

Expecting an A
Anonymous
12/09/2010
Terrible class! He's nice enough, but, the content is incredibly outdated, does not bother to update it, his 'slides' are just those out of the book, edited to be even more confusing, the homeworks and projects do not follow the course content closely enough, most people came out of this class not knowing ANYthing about databases, despite having done relatively well in the class. Do NOT waste your time.