2.9
Quality4.5
Difficulty44%
Would Retake92
Reviews44%
Would Retake
92
Reviews
Rating DistributionOfficial
92 total ratings5
30
4
11
3
8
2
12
1
31
What Students Say
“You will hate his class”
CSCI670 - 1.0 rating“He doesn't deserve to be a Professor”
CSCI670 - 1.0 ratingClass Info
Online Classes
100%
Attendance Mandatory
13%
Textbook Required
45%
Grade Predictor
Your expected effort level
Predicted Grade
B+
Grade Distribution
Common Tags
Rating Trend
Declining
-0.72 avg changeRatings by Course
CS570
5.0
(1)CSCI104
4.2
(15)CSCI303
4.0
(2)CSCI270
4.0
(12)CS270
2.5
(44)Difficulty by Course
CSCI170
5.0
CS270
4.8
CSCI270
4.6
CSCI303
4.5
CSCI670
4.4
Reviews (91)
Great great teacher. Course work was hard, but he spent a lot of time to make sure everyone understood. The first teacher I have had at USC who I thought really cared about me and my education.
Really difficult class, and I don't feel he prepared us well for what he had us do. He is always nice and clear in lecture, but he does tend to get dry and too technical at times. He's always willing to help out and make things understandable, but when you ask, he's not as helpful as you'd hope.
the most difficult professor i think i will ever have, but be glad future 102 students i'm sure he will give you the education you need and deserve for the real world.
he will make you suffer. TONS of homework and all of them are difficult. exam was horrible as well.
terrible professor, extremely stubborn. Always spend the whole lecture just trying to explain one thing but actually make things more confusing. Avoid him if you really want to learn.
Terrible professor. This is very important class for cs, but Kempe will destroy your interest
Outstanding professor, extremely helpful and available. Has high expectations of students, but expectations are fully attainable if students actually think – you cannot get by in this class by rote memorization.
Homework is exceptionally challenging. Fully expect to spend 12+ hours a week on the assignments. Furthermore, tests are quite difficult, with the average on first midterm being a 55% (which still curved to a B) Aside from that, he clearly and concisely explains material, and is very nice and helpful in person.
Amazing professor. He'll make you work hard on the course. But it'll be totally worth it.
David is a good lecturer, however his assignments are just super hard and time consuming that I don't think would help understanding the concepts. Also the exams are nightmares.
Going to lectures did not help understand concepts. Assignments became so time consuming they destroyed my semester. Easily my most hated professor in USC so far.
Is able to clearly explain the material to students of all levels. Tells (funny) jokes during lectures to lighten the mood. Doesn't subject students to death by PowerPoint. Takes an interest in all of his students. Wish he taught more classes.
Class is hard and it is a lot of work, but Kempe is a great lecturer and he will go above and beyond to help you. Also the TAs and "Sherpas" are helpful.
Kempe is a great professor. He has a sense of humour and is understanding. He is an empathetic and intelligent professor. His class is extremely challenging but he is one of the best professor's I've ever had.
David was one of the smartest professors I've ever had. He clearly is a computer science guru, but he expects a LOT out of you. 104 is one of the hardest cs classes at sc, but Kempe actually made it do-able (not easy, just do-able). Also, he's really flexible with deadlines and curves, and listens to the class's voice. I got a 50% which was a B-.
Very clear lectures. PPT slides typically put me to sleep--David's class is more of a conversation + coding examples so it was perfect for my learning style. Assignments can be long but doable in a day or two if you know what you are doing. Expects a lot of his students; but, adds huge curve at the end (75% A).
Really invested in his students. Starts the class off with 1-on-1 interviews, just to get to know your interests. When you listen to him lecturing, you can tell that he absolutely adores CS, which makes it all the more enjoyable to learn from him. Be alert, present, curious, and willing to work your butt off, and you should be fine.
Best professor I've had yet. Super friendly, knows everyone's names, and loves his subject. He gives so much homework it is like having a part time job, but you learn SO much. He's very clear and is deep into Computer Science. He is extremely knowledgeable and his assignments are hard but clearly explained.
The course was tough and only serious ones would pass with a descent grade.
Awesome professor. He is so passionate and truly cares about his students. He makes a bunch of funny and nerdy jokes, it's great! He is a great professor, and knows a massive amount of the material. The class is NOT EASY. Get ready to work for it. (Totally worth it though)
Genuinely a good guy. He requires all of his students to meet with him at the beginning of the semester so that you can get to know him and vice versa. Definitely cares about his students and the overall department in general. He definitely wants his students to learn. 104 is hard and takes a lot of work. Don't be caught off guard or blame profs.
Kempe is a great teacher and really does his best to explain difficult concepts. Do not be afraid to ask questions during class as there are other kids that probably have the same ones. Be prepared to make 104 a full time job, but that is due to the difficulty of the assignments and not the teaching. Overall a nice guy and good professor.
Kempe is a good guy but this class was HELL. The grading on the homework assignments are completely subjective at times. Its a really messed up system and when you complain about it Kempe tells you to kick rocks. Kempe prides himself on having "30%" of students failing or drop. The exams are pretty easy to be honest. Don't start assignments late.
One of my favorite professors in USC. The class is hard, and the assignments need a lot of time, so you really need to pay attention in class. Kempe really cares about his students and he explains the concepts really well, though sometimes his progress might be a little bit slower than the other section. I will definitely take his class again.
Worst Professor Ever. Don't ever take his class if you don't want to ruin your career. You will hate his class. You won't learn at all. This guy will give so much mental stress.
Awful Professor. He doesn't deserve to be a Professor. Classes will be super boring and you will dislike the course the way he would teach. It will be highly stressful. Grading is extremely tough. Don't ever take his course. He poses he knows a lot, but reality is different.
I did not like his classes at all. He cannot explain concepts well. His grading criteria is weird too. Better think twice before taking his class.
Most sections of this class have reasonable difficulty while one or two topics are extremely hard. Prof. Kempe has a lot of knowledge in algorithms and explains things pretty well. This course is far better than CSCI 270 (which I was supposed to take), but I don't recommend taking it without learning materials from CSCI 270.
Extremely bad communication skills. This guy will make even simple things like basic algorithms too hard to be understood. He will have time to practice his throwing skills in class but not clear students' doubts. He will keep discouraging and demoralizing students. He is very stringent in awarding marks too. More than half the class fails/drops
David is extremely poor at explaining concepts. Avoid taking his course. It will be quite test, homework heavy and lots of unrelated homework. In short, he is the worst lecturer I have had in USC.
I disliked his class overall. He is a poor lecturer. He has a pathetic teaching style, just focusing on a few students of the class, whom he likes. He cannot explain simple concepts well. In short, you will lose interest within a few weeks by his teachings. I would recommend take some other Professor's class or you will be wasting your time/money.
Have only been in his class for two weeks so far, but he seems like a very nice and caring teacher! Super smart and willing to explain things multiple times until students understand :)
He is one of the most hated teachers of USC. I understood the same during this course. His teachings are pathetic. He can't even explain the simplest of the concepts well. But in fact he will force you to lose complete interest in the course. He doesn't even clear any doubts. Please do not waste your money by taking his course. You will regret.
Very caring of his students, but not great at lecturing. Often very disorganized lectures that are hard to follow and doesn't follow any coherent lecture slides; just sorta rambles and writes down as he talks (Not great online)
Prof Kempe is a great guy!!! His CS 270 is very difficult, but at the end of the day very fair. He is very accessible during office hours and scheduling outside of office hours, and I would definitely recommend him to anyone you will learn a TON.
To be honest Prof. Kempe is just OK. His lectures are neither amazing nor horrendous. Sometimes for homework, we are to do more than the lectures (can be very hard) and make extensions that only become obvious after actually figuring the problem out. Problems in tests seemed even harder. But with 15% standard deviation I guess many did really well.
Terrible Professor. I regret taking David's course. I did not understand anything from his lectures. He is getting 1 star ONLY because this platform doesn't let you put in 0 which is what he deserves. He cackles for no reason at all. He is extremely irresponsible and unprofessional. Do not waste your money on this guy's course.
I really liked Kempe, even if his class was somewhat challenging. He is one of the best lecturers I've ever had, and I feel like I learned so much from his class!
I learned a lot from this class. Not the easiest professor, but he made me feel like my time wasn't being wasted, which is rare for professors.
Hard course, hard homework, lot to learn and lot time needed to spend. These are required and can make sure you really learn something out. David is really good at the field and has a passion in it (he has the nerdy style humor) and the lectures are cool (given difficulty of course). Worthy prof and a valuable class.
270 is a very difficult class. Just like 104, however, the content of the course is interesting. Likewise, Kempe is a great lecturer. That being said, a lot of the homework is unnecessarily difficult and depends on attending office hours. You will also be penalized (before re-grades) for using an implementation different than that on the rubric.
Kempe is a nice guy, and understands the subject well. That being said, his lectures are often confusing. Grading is extremely subjective and inconsistent. Usually this can be resolved with regrades, but not always. Sometimes he'll just nicely tell you to get lost. No meaningful practice is given for the exams, which is the worst part of the class.
Avoid avoid avoid. Kempe is known as one of the hardest for 270. Take someone else if you can. He's not that bad but the grades in his class are way lower than for other profs. Don't take!
270 is hard no matter who teaches it, but Kempe only makes you love this subject. Kempe has a magic that even though his homework is always challenging, you involuntarily want to contribute time and focus to conquer those interesting questions. His algorithm class is a perspective-changer. More importantly, HE ANSWERS ALL PIAZZA POSTS! A TRUE GOLD!
Despite his homeworks being ridiculously hard and lectures not always as clear as they could be, Kempe is a genuinely nice guy (crazy smart too) who has good intentions for his students. He's always on Piazza ready to help and is great to chat to in office hours. It's a difficult class, but I feel like I've really learned a lot this semester.
This class is notoriously difficult, yet Kempe will leave discouraging remarks in the Piazza and weekly homework that say that solutions *should* come intuitively at this point. It is genuinely difficult to do well in this class unless you already excelled in CS170 as the grading criteria is insanely harsh with little opportunity for partial credit
Good lecture clarity. Obviously cares a lot about the class. However, test grading is entirely inconsistent and very nitpicky.
Kempe is fine. He's a nice guy and understands CS extremely well, to the point he can answer any question you have, even when you don't even understand what you're asking. But grading of assignments is bull. I had to request 17 regrades for the semester, getting points back on 15/17. You have to watch grades like a hawk, and hope for an easy TA.
His ratings on this site far outpace the general consensus. Most people irl rate him 3/5, the main complaints being unclear lectures and inconsistent/subjective grading. Pros: always available to help, responds very quickly to emails, straightforward class format. He's stuck in his ways, but his ways are generally reasonable. BEWARE OF GRADING.
Extremely clear and straightforward lectures, homework is great practice, and exams are fair and very doable. The sloppy hw grading is a reflection of poor CPs, not the professor. Very prompt and helpful on piazza, and accessible in office hours. Always does a great job making the content relevant to our lives and careers. Grading scale is generous
Hands down the best prof at USC
Professor Kempe is truly great. His lectures aren't the most engaging, but if you can pay attention, he's actually pretty funny and a wonderful professor. He's also just a super nice and helpful guy and made me love algorithms
Great professor with most valuable homeworks I have ever seen
Very nice and encouraging professor
Professor does not know the material well. He is very unprofessional and never wants to help students outside of class. Don't take his course. He gives very bad grades.
Professor Kempe is friendly, but there is obviously weekly homeworks that greatly affected my time to concentrate and prioritize other tasks. Gradings are also harsh. Prepare to take good notes during lecture. Go to office hours frequently.
270 is a hard class, but Kempe explains the content slow and clear that even I can follow along(I almost failed 170). The homework are difficult and take lots of time, but they provide great practice(exams are much easier than hw). Do remember to ask for regrades, as the CPs are pretty bad at grading them. Hard work actually pays off in this class!
Dude is alright, but this is genuinely the hardest class I've ever taken. Expects 10-15 hours minimum for weekly homework, so if you are a normal student with a social life instead of a sweaty CS nerd that studies 8 hours a day and doesn't shower, don't take this class with Kempe.
I consider myself a strong student and understood the concepts pretty well. That being said, holy smokes this class was hard to manage. It literally consumes your life with homework if you want to do well.The exams are also graded super harshly so make sure to regrade. He's a great guy, but the class itself is just so rough with irregular grading.
I consider myself a strong student and understood the concepts pretty well. That being said, this class was so hard. My life was consumed by homework taking hours even going to OH. The exams are also graded super harshly with little to no partial credit. Kempe is a good guy, but the class ruined my mental health with irregular grading and poor cps.
This is the worst class in terms of how it is structured, as well as taught. He gives roughly 9-10 HW's for the semester that are extremely difficult, they requires 10 -12 hrs a week and serves no purpose in helping student understand and learn the topics. Don't take this course with this professor, it would be a waste or your money and time.
Poorly structured class consisting of 10 difficult homeworks and unnecessarily difficult exams. TAs and CPs offer no constructive feedback on the homeworks, can't even grade homeworks on time, and the class is just an overall mess. Homeworks were even FORCED on Thanksgiving AND Finals week. I highly recommend taking this with someone else. Trust me
CS270 is naturally hard, but Kempe does everything to ensure students get the material. His lectures are great and he is really good about answering questions. Homework is challenging, but it is very good practice and the exams were much easier. The content is useful and Kempe made it very interesting (plus he's pretty funny). Favorite prof at USC.
CSCI270 with Kempe is definitely not easy, but it's a really valuable class and you learn a lot. He's really receptive to feedback, funny, and makes an effort to connect with students and learn their names. Also I can confirm that even if you are a normal student with a social life and not a sweaty CS nerd, you'll study and be fine :)
this dude deserves 1. class is unnecessarily hard and he grades so harshly and doesn't want to see you succeed. Not accommodating or flexible at all to students' situations.
Terrible. Avoid taking 270 with this Professor. CPs rushed grading 99% of the time and took regrades harshly, class structure is absolutely horrendous, exams were difficult and regrades are guaranteed to lower your original score, lecture style is terrible, "wants to see you succeed" is absolutely false, CPs chose who to help and not to help, etc.
Honestly, thought Kempe was a really good lecturer and felt I learned a lot that will be super helpful in interviews. However, this was all overshadowed by incredibly difficult homework that was extremely time consuming (including one due day before thanksgiving and one during finals study days). Also, tests were really hard and grading was brutal.
Lots of posts here complaining about the difficulty, which is more 270 itself and less Kempe specific. Kempe, in his language and persona, is extremely precise; HWs and exams are less BS-able, but lecture/OH is more effective than with other profs in the dept. Exams are TOUGH, but CPs are generous with HW tips and the curve is p good (86% is an A).
He was not a generous professor and made his course unnecessarily painful. Lectures weren't helpful at all
Kempe is a really wonderful human being and I love his lecture style. I had to drop his course for personal reasons, and I really regretted it. He certainly isn't an easy Professor, and 270 with him is a lot of work, but at the end of the day, you'll learn far more than you would with any other Professor. If you care about learning, he's your guy.
It was a very boring class and this Professor makes you lose interest in the course with his weird teaching style. He does not know the actual lecture well and will just 270 can be taught in a much more friendly and easy to follow way. Don't take this guy's course. You will regret. He is a very tough grader and fails a lot of students unnecessarily
Very knowledgeable professor. Was very good at explaining questions and working them out in class. One of the best cs professors. However, lot of homework, very hard grading, and hard exams.
Very dull lecturer, just writes notes on the screen that are hard to follow. Homeworks are unnecessarily long, especially for how much they are worth, and grading is extremely harsh and discouraging. Three midterms are a lot, and they are worth a major portion of the final grade. Averages on midterms are extremely low as well. Take Cote!!
please save yourself the trouble and do not register for this 270 section. Grading is very harsh, the homework is ridiculously and unexplainably hard and only worth 10 percent of your final grade, and the professor's lecture style is not accommodating for many students' learning styles (no PowerPoint slides). 10/10 would not recommend--GPA tanker.
His teaching style is unfriendly to most students, he just rambles for an hour and writes it on a plain word doc. the students who thrive are the ones who came out of the womb with a PhD in CS and competed in math competitions for sport, but if you're not that, prepare to struggle. a lot. Take this class with anyone else.
Grading is too tough. Students do not necessarily have to get low grades to learn stuff, cannot understand why the grading is so unkind. Even deducts points outside the rubrics for "point adjustments". Unnecessarily difficult and frequent homework and exams. He makes this class painful. Great job. Avoid taking him at all costs.
If you did not grow up doing math/cs competitions, this class is not for you. Take Cote instead!
Frequent hw that are graded very harshly and not worth a lot. Exams can be very difficult and are worth a lot. Lectures are boring but I do believe Kempe does explain concepts decently. Expect to spend a lot of time in OH and make friends in the class. If you aren't strong in proofs, take Cote, Kempe's a nice guy but its not worth losing sleep.
He's a decent lecturer and the content is really interesting, but the course is structured in such a way that practically your entire final grade is dependent on a few tests. And those few tests are graded very harsh...
This class is insanely brutal & unforgiving. Homework is very dense with Kempe himself saying it will take an average student 15 hours to complete 3 problems and is only worth 10%. The 3 exams are graded with absolutely no leniency in the way of scoring points. I think Kempe is very smart and means well, but for the sake of your sanity, avoid it.
avoid him lol 4 exams are EXTREMELY hard, which doesn't make sense bc he doesn't even teach that well. He rambles in lectures, and even in the problems he writes for homework and exams. there's HW every 1.25 weeks that takes at LEAST 10-12 hours and is graded on accuracy. I regret not taking it with Cote. Grades harshly too
Worst grading through all classes i've taken since a freshman at usc. You need to try everything you could to just get 40% out of 100% to pass this class! 10 extremely long and hard homeworks worth only 10% of your grades. 3 midterms worth 20% each and a final worths 30%. I HAVE NEVER SEEN A COURSE THAT HAS 90% OF GRADES FROM EXAMS ONLY!
The grading is inhumane. 4 exams graded harshly and worth a lot, average usually below 50%. Unbelievably difficult and time-consuming homeworks that worth little, which is also graded harshly. Heard that he used to have only 1 midterm with homework worth lots, but now 3 midterms, not reducing the homework workload, not changing the grading cutoffs.
he looks like a chipmunk and grades like one too
TOUGH INCONSISTENT GRADER EACH HOMEWORK TAKE 15-20 HOURS and there are TEN of them. Final exam avg < 50%. Phd level requirement for undergraduate class lack of quality control over TA His class is harder than graduate level eqv. TAs not helpful, long queue never ends. Lecture not helpful. DO NOT TAKE HIM! AVOID AT ALL COSTS! YOU HAVE BEEN WARNED.
When I sign up for his class I felt 3/5 was not bad. Now I feel 3 is overrating. The goods comments were old so he might be nicer in the past. Taking his class=worst decision. First time I give 1 to prof. Get ready for 10 pieces of 15 hrs HW. EXTREMELY INHUMANE TOUGH GRADER. Absolutely no mercy. No PPT for review. People cry after his exams! AVOID!
The worst professor in the Viterbi department. Doesn't care about his students, gives horrible advice that ultimately sets you up for failure at the end. Gave a third midterm on the day of the add / drop period which was the worst idea ever, as students were not able to see their midterm scores until after the drop period. avoid at all costs.
Horredously strict grading for the 3 mt's + 1 final (sub 50% avg) is absurd and unnecessarily harsh on students. The pursuit of making students knowledgeable on the material covered can be done without such abhorrent grading. Also 10 HW's taking 15-20+ hours each are only worth 10% of your grade. Soured a class which could've been really rewarding.
Prof Kempe is def tough and imo his teaching style and 270 prepares you to be a better researcher and academician than a SWE. He explains tough 270 concepts super well if you manage to pay attention in lecture. I caught myself dozing towards the end but I still appreciate how detailed oriented he is.
Insane amounts of homework, but truly a rewarding class. All I see on here are 1's which Kempe is definitely not. The class is difficult, but he teaches very well. At some point the concepts click and the class becomes much nicer. Heavy on exam weight, but the grade scale is beyond generous. I finished with 72% which was an A-. Good class.
Very difficult class but incredibly rewarding. Kempe doesn't just teach you a list of algorithms and when to use them but how to think about and solve abstract problems with computing (which is far far more valuable). If you don't want to be just another app dev or SWE that will get automated away by AI, TAKE THIS CLASS. It teaches you how to think
Class Info
Online Classes
100%
Attendance Mandatory
13%
Textbook Required
45%
Grade Predictor
Your expected effort level
Predicted Grade
B+
Grade Distribution
Common Tags
Rating Trend
Declining
-0.72 avg changeRatings by Course
CS570
5.0
(1)CSCI104
4.2
(15)CSCI303
4.0
(2)CSCI270
4.0
(12)CS270
2.5
(44)Difficulty by Course
CSCI170
5.0
CS270
4.8
CSCI270
4.6
CSCI303
4.5
CSCI670
4.4