- Home
- Search
- Paul R Eggert
- All Reviews

Paul Eggert
AD
Based on 367 Users
This isn't rly a review for Eggert or CS 111, but rather the TA Yadi Cao (and by extension Brian Rosyar). If you see any discussion section TA'd by Yadi Cao, even if you aren't in his section, DROP THE CLASS. Yadi Cao is a TA straight from the depths of hell. Yadi does not prepare for his discussion sections (if he is even present), is always late, and is very rude both in-person and via email. If you try to email him or ask questions on Piazza, don't expect a response from him (or Brian for the matter). The worst part though is his grading standards. Yadi had completely asinine grading schemes for Lab 2 and Lab 3. For Lab 2, he changed the lab significantly and provided no test cases, then proceeded to use over a thousand randomly generated test cases that caused the class mean and median to be in the range of 60. And for Lab 3, we don't even know how he graded it, just that tbe class mean and median was once again in the 60's. It's absurd he's still allowed to TA classes frankly, but I suppose that's to be expected from UCLA.
Unlike 35L, this class has a textbook, which covers 90% of what you need to know for the tests. You don't need the textbook, as everything on the tests is covered in class, but it's nice to have anyways. The tests were decently difficult (average around 60 for both the midterm and the final I think) but fair enough. There were a few particularly challenging questions on each of the exams, but I think you could get a solid grade just by answering the simpler ones and hoping for partials on the hard ones.
The grading for the final and labs 2 and 3 was so ridiculous, I honestly can't tell if they just used an RNG. If you're set on getting a good grade, this may not be the class for you.
Paul Eggert is an absolute legend. A veteran of the software development industry, he shines in his lectures while he doles out wisdom from his years of experience. He is irreplaceable.
In terms of exams, yes, they are hard, but one can easily get away with 1-2 standard deviations above the mean by writing down what seems reasonable. Much easier than other exams where you absolutely must know the answer.
Readings were a little bit harsh. Too many readings, not much useful content on them in the exams. One of the books, Principles of Computer System Design: An Introduction by Jerome H. Saltzer and M. Frans Kaashoek (SK), was way too stuffy.
Projects were an absolute disaster this quarter. Way too easy, the skeleton gives everything away. Takes me only like 2 hours to complete. Absolute disgrace, learning nothing from them. Please note that I talked to the professor about this—this isn't his fault, he says he has to keep the labs because the TAs are only trained on them.
I didn't really attend discussion, but the first one was pretty good. Solid TA. Just by design of the course, this discussion wasn't very useful. Reading over the PDF worked just as well for me.
This is a classic Eggert class, lectures are interesting but very inconsistently relevant to the assignments. The exams were hard, but the projects were very manageable, I hear they are much easier than in the past.
This class is just something you'll have to suffer through. The course is extremely difficult and you won't have very much guidance for most of it, and from what I can tell, that's mainly the point. You'll learn a lot in this course, and you'll be teaching yourself much of it.
Make sure to pay very close attention to the lectures, since Eggert constructs his exams directly from small tidbits he mentioned during that quarter's lectures. Don't worry about making your notes concise; make them organized instead. The exams are open-book and you will often need the tiny details that Eggert mentioned in passing during a lecture in order to answer a question on the exam.
I got really lazy after the midterm and didn't end up the second half of the class's lectures until the day before the final when I binged them. I definitely do not recommend this strategy, though it ended up working out for me since I remembered almost everything that he had covered in lecture and I ended up doing extremely well (relatively, I got a 69% lol) on the final. So, if you really stressed about the exams, I would genuinely recommend rewatching lectures before exams. Though it'll be a bit painful sitting through it, you can probably multitask browsing Reddit, playing your favorite farming simulator, or building a Lego set while watching the lectures on 2x speed.
You don't really need lectures to do any of the assignments nor for the group project, which is worth a whopping 35% of your total grade. Please make sure to find a good group people you know and trust before it's too late, preferably before you even attend the first lecture. Having a good team of 5 is pivotal to reducing stress in this already very stressful class. You're mostly left on your own by the instructors for the group project, where you'll have to construct some sort of dynamic application with the skills you definitely did not learn from lectures or discussion. The course content is mostly unrelated to the group project.
Eggert has a really lenient late policy for assignments. You should start early but do not worry about having to be multiple days late. If you calculate how much of your total grade you're losing out by taking a few extra days to complete an assignment (also remember that the class is heavily curved), you may realize that you were stressing way too much on turning your assignment in on time.
The TAs are usually pretty late on grading assignments and you do not get much feedback. PLEASE make sure to submit a regrade request on anything you might find reasonable to get points back on. Named your file incorrectly? Regrade request. Assignment guideline was ambiguous? Regrade request. Forgot to comment a piece of code that crashed everything? Regrade request. This philosophy also applies to the midterm, something I regret not taking advantage of. The TAs were very understanding.
Learn as much as you can. Good luck. Unless your laptop is already plastered in arch stickers, you'll probably need it.
Get ready to get fucked on the most ridiculous tests you will ever see in your life
No more need to say. He is Eggert. Be prepared to be egged for the exam...
However, Eggert's class really worth it. I end up learning so much useful staff by the end of the quarter.
You will get egged! Overall this class is TOO fast, tough, but teaches you some important material that's pretty practical. If you thought CS32 was fast, this is easily 3 times that.
This class is something that'd work well in semester system. But absolutely sucks in quarter. Everything is bunched up together, you go over fundamentals way too quick (within 2 weeks). You are into the next huge topic in 2 weeks which is crazy. It is WAYYYY too fast paced. The assignments are weird. The tests are even weirder and super tough. The graders make mistakes, and some of the TAs are absolute shit in their grading. They are ruthless, if u dont have something specific, you will get 0/10 for a question where you probably should've gotten partial 5 points.
Let's start with the cons of this class. For one the tests are hard, there are no workarounds for that. Since you have access to all the notes possible during exams there almost isn't a point to studying. The averages are low, but there is a curve at the end. Another pain is the assignments. The specs are vague and frustrating at times, and you'll for sure find yourself checking piazza for any sort of help deciphering what is going on. The hardest assignments for sure were the second Git assignment and the C assignment. I would agree with many that having experience with any of the topics (those including Linux, Shell, Python, Emacs, Lisp, JavaScript/webdev, git, etc) will make things a lot easier. I would recommend learning beforehand to ease the load.
Now for the pros. Eggert is undoubtably a great lecturer. For topics that could very well be dull he does a great job of making things interesting and always provides a good history on topics. The topics he covers are practical and will for sure show up in any sort of job/development you do. While he may seem intimidating he is quite open to answering anyone's questions, whether it be in lecture or office hours.
Overall the toils are relative to your prior knowledge, which may or may not be fair for many.
Eggert is awesome!! Sure the class is really hard but Eggert is probably my favorite lecturer so far at UCLA and I learned so much useful stuff.
This isn't rly a review for Eggert or CS 111, but rather the TA Yadi Cao (and by extension Brian Rosyar). If you see any discussion section TA'd by Yadi Cao, even if you aren't in his section, DROP THE CLASS. Yadi Cao is a TA straight from the depths of hell. Yadi does not prepare for his discussion sections (if he is even present), is always late, and is very rude both in-person and via email. If you try to email him or ask questions on Piazza, don't expect a response from him (or Brian for the matter). The worst part though is his grading standards. Yadi had completely asinine grading schemes for Lab 2 and Lab 3. For Lab 2, he changed the lab significantly and provided no test cases, then proceeded to use over a thousand randomly generated test cases that caused the class mean and median to be in the range of 60. And for Lab 3, we don't even know how he graded it, just that tbe class mean and median was once again in the 60's. It's absurd he's still allowed to TA classes frankly, but I suppose that's to be expected from UCLA.
Unlike 35L, this class has a textbook, which covers 90% of what you need to know for the tests. You don't need the textbook, as everything on the tests is covered in class, but it's nice to have anyways. The tests were decently difficult (average around 60 for both the midterm and the final I think) but fair enough. There were a few particularly challenging questions on each of the exams, but I think you could get a solid grade just by answering the simpler ones and hoping for partials on the hard ones.
The grading for the final and labs 2 and 3 was so ridiculous, I honestly can't tell if they just used an RNG. If you're set on getting a good grade, this may not be the class for you.
Paul Eggert is an absolute legend. A veteran of the software development industry, he shines in his lectures while he doles out wisdom from his years of experience. He is irreplaceable.
In terms of exams, yes, they are hard, but one can easily get away with 1-2 standard deviations above the mean by writing down what seems reasonable. Much easier than other exams where you absolutely must know the answer.
Readings were a little bit harsh. Too many readings, not much useful content on them in the exams. One of the books, Principles of Computer System Design: An Introduction by Jerome H. Saltzer and M. Frans Kaashoek (SK), was way too stuffy.
Projects were an absolute disaster this quarter. Way too easy, the skeleton gives everything away. Takes me only like 2 hours to complete. Absolute disgrace, learning nothing from them. Please note that I talked to the professor about this—this isn't his fault, he says he has to keep the labs because the TAs are only trained on them.
I didn't really attend discussion, but the first one was pretty good. Solid TA. Just by design of the course, this discussion wasn't very useful. Reading over the PDF worked just as well for me.
This is a classic Eggert class, lectures are interesting but very inconsistently relevant to the assignments. The exams were hard, but the projects were very manageable, I hear they are much easier than in the past.
This class is just something you'll have to suffer through. The course is extremely difficult and you won't have very much guidance for most of it, and from what I can tell, that's mainly the point. You'll learn a lot in this course, and you'll be teaching yourself much of it.
Make sure to pay very close attention to the lectures, since Eggert constructs his exams directly from small tidbits he mentioned during that quarter's lectures. Don't worry about making your notes concise; make them organized instead. The exams are open-book and you will often need the tiny details that Eggert mentioned in passing during a lecture in order to answer a question on the exam.
I got really lazy after the midterm and didn't end up the second half of the class's lectures until the day before the final when I binged them. I definitely do not recommend this strategy, though it ended up working out for me since I remembered almost everything that he had covered in lecture and I ended up doing extremely well (relatively, I got a 69% lol) on the final. So, if you really stressed about the exams, I would genuinely recommend rewatching lectures before exams. Though it'll be a bit painful sitting through it, you can probably multitask browsing Reddit, playing your favorite farming simulator, or building a Lego set while watching the lectures on 2x speed.
You don't really need lectures to do any of the assignments nor for the group project, which is worth a whopping 35% of your total grade. Please make sure to find a good group people you know and trust before it's too late, preferably before you even attend the first lecture. Having a good team of 5 is pivotal to reducing stress in this already very stressful class. You're mostly left on your own by the instructors for the group project, where you'll have to construct some sort of dynamic application with the skills you definitely did not learn from lectures or discussion. The course content is mostly unrelated to the group project.
Eggert has a really lenient late policy for assignments. You should start early but do not worry about having to be multiple days late. If you calculate how much of your total grade you're losing out by taking a few extra days to complete an assignment (also remember that the class is heavily curved), you may realize that you were stressing way too much on turning your assignment in on time.
The TAs are usually pretty late on grading assignments and you do not get much feedback. PLEASE make sure to submit a regrade request on anything you might find reasonable to get points back on. Named your file incorrectly? Regrade request. Assignment guideline was ambiguous? Regrade request. Forgot to comment a piece of code that crashed everything? Regrade request. This philosophy also applies to the midterm, something I regret not taking advantage of. The TAs were very understanding.
Learn as much as you can. Good luck. Unless your laptop is already plastered in arch stickers, you'll probably need it.
You will get egged! Overall this class is TOO fast, tough, but teaches you some important material that's pretty practical. If you thought CS32 was fast, this is easily 3 times that.
This class is something that'd work well in semester system. But absolutely sucks in quarter. Everything is bunched up together, you go over fundamentals way too quick (within 2 weeks). You are into the next huge topic in 2 weeks which is crazy. It is WAYYYY too fast paced. The assignments are weird. The tests are even weirder and super tough. The graders make mistakes, and some of the TAs are absolute shit in their grading. They are ruthless, if u dont have something specific, you will get 0/10 for a question where you probably should've gotten partial 5 points.
Let's start with the cons of this class. For one the tests are hard, there are no workarounds for that. Since you have access to all the notes possible during exams there almost isn't a point to studying. The averages are low, but there is a curve at the end. Another pain is the assignments. The specs are vague and frustrating at times, and you'll for sure find yourself checking piazza for any sort of help deciphering what is going on. The hardest assignments for sure were the second Git assignment and the C assignment. I would agree with many that having experience with any of the topics (those including Linux, Shell, Python, Emacs, Lisp, JavaScript/webdev, git, etc) will make things a lot easier. I would recommend learning beforehand to ease the load.
Now for the pros. Eggert is undoubtably a great lecturer. For topics that could very well be dull he does a great job of making things interesting and always provides a good history on topics. The topics he covers are practical and will for sure show up in any sort of job/development you do. While he may seem intimidating he is quite open to answering anyone's questions, whether it be in lecture or office hours.
Overall the toils are relative to your prior knowledge, which may or may not be fair for many.