- Home
- Search
- Paul R Eggert
- COM SCI 131
AD
Based on 89 Users
TOP TAGS
- Tough Tests
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Sorry, no enrollment data is available.
AD
The textbook for this class is actually amazing. Highly recommend dishing out the fat stacks of cash to buy it because it is well worth it. It is easy to understand, often funny, engaging, AND it covers EVERYTHING Eggert talks about in lecture. Seriously. Honestly, don't go to a single lecture. It's a waste of time. Just read the textbook, it's much better at explaining than Eggert.
Just to give you some general tips to help you succeed in this class:
hw1 and hw2 are OCaml functional programming. hw1 is easy, but hw2 is exponentially harder (probably the hardest one), so make sure you start early on this one.
hw3 (concurrency in Java) is probably the easiest, but you need to derive data and write report.
hw4 (prolog) is intermediate difficulty, but lots of people may find functional programming hard to understand at first, and you need to figure out how to optimize performance to get full score.
hw5 (scheme) is also intermediate difficulty, but I personally find this one the hardest to understand. Personally, I insist the spec and my solution on this one is quite sloppy, even though I got full score.
hw6 basically requires no programming.
Project (asyncio in Python) is not hard on the logic side, but you need to understand the asyncio library in Python and the concept of server and client.
As for the lecture, you can learn a lot if you do the reading and pay full attention to Eggert's lecture. However, unlike the experience of others, I found his lecture quite hard to follow (I feel like I have not mastered adequate background knowledge in CS to understand his points).
As for the exam, based on the response of my peers, the midterm tends to be easier than the final, although I did better on the final (I score fairly above the median in both and get an A). One thing to notice is that some open-end questions are actually quite hard to get points, so fully develop you arguments and provide enough technical details to back it up. One general strategy to eggert's exam is always to remain calm, pick the battle you can fight, and aim for every possible points.
Some side notes: go the the discussion as the TA will explain the spec for you; I personally find that CS131+CS181 combo is quite helpful since both of them talks about grammar, and I notice that there are handful of students in both lecture (although CS181 is usually recommended as the last CS class to take).
Haven't gotten a grade for this class yet. The first two homeworks are insanely hard (and its only like a couple functions you need to write for each) but when you finish them it's smooth sailing (for the most part). There is only one midterm which is nice and I found it to be a lot easier than every Eggert midterms I've ever taken. The final was rough though and left me leaving with the same sadness that Eggert usually does on a test. There is one project in this class which isn't too bad on the coding end and mostly focuses on the report. The homeworks are difficult but piazza is your best friend. The scheme and prolog homeworks were medium difficulty. The java homework is really easy and is mainly focused on the report as well and so is the last homework (the language for this one varies). Lectures are SUPER useful and I find that he is a lot better at teaching this course than cs 33 (but maybe that's just cuz 33 is a harder subject). You don't need to read the book really but it is also helpful and gives a deeper understanding. He pretty much goes over whatever's in the book in lecture a few days later. Best Eggert class I've taken but still difficult as always.
I really wanted to like this class because Eggert was legitimately an interesting lecturer (unlike his CS33). I felt I learned a lot by going to class. Unfortunately that's ruined by every other part of this course.
TAs are one of the most important parts of getting through this class. Go to different discussions and compare with your friends. A good TA makes all the difference and some are more generous about giving tips on the homework than others. A few of the assignments involve written reports, which is annoying but at the same time is easier than the 100% code ones. I'd rather write more reports than pull my hair out over OCaml .
Tests are your standard Eggert tests. It's open book/note so bring all the things you want but it just comes down to whether you're lucky enough that the things you focus on happen to be what he write questions about.
This class is really hard. Eggert's lectures are unclear at some times. Assignments take 15-20 hours per week, 2nd assignment is especially difficult (took me 40 hours even with a ton of TAs help). I did all the assignments legitimately, but it left a sour taste in my mouth knowing that others were using past solutions and getting the same grades as me. Thus, this leads to a more heavy emphasis on doing well on exams. However, exams are also really difficult with an average of roughly ~40%. I got slightly below median on both exams and ended up with a B+. Though to be fair, I only studied for an hour or two for each exam. Because the exam is hard for everyone, you don't have to study as much and still get a median score.
With all this being said though, Eggert has good intentions. I think both the hard assignments and exams defines what UCLA CS education is all about. Finishing an assignment legitimately also gives you a small ego boost. Your GPA might take a hit, but luckily I'm not planning on applying for grad school.
Overall not that bad of a class, as long as you attend the lectures or get notes, and then do a good bit of self-studying. The projects are hard (especially project 2) but if you start early, most of them are pretty doable. The exams are okay if you have the ability to BS and make convincing arguments, and are curved generously.
Selling the textbook - message me at **********
Eggert is a pretty eccentric teacher, but for this class I felt like that was good. He did a pretty good job of teaching concepts of programming languages and getting you to question why things are the way they are, how different languages look like, etc. The homeworks can be tricky, but once you get a feel for the language and start to understand what's going on, the assignments usually only involve a few lines of code. Tests are basically a bunch of theoretical questions that you just have to work your way through, as I believe is typical for Eggert tests. If you like tests that are straightforward and just test you on your memorization of concepts, you probably won't like this, but personally because it's curved I was fine with it.
If you're reading this that means you're probably new to UCLA, or the CS department, because you're wondering how Eggert is. Either that, or you took him for 111 and are curious if he's different. Short answer - not really. No professor gives me as much internal conflict as Eggert. His exams are impossible, and his projects unbelievably time consuming and difficult to understand. However, as was the case when I took him for 111, when I walked out of the final I thought to myself, "damn, I learned a ton in that class." If you actually do the projects you'll learn a lot more than from most other CS classes, but you'll suffer mightily while it's happening. I'd analogize his class to the Navy SEAL training camp of UCLA CS. Tough love from daddy Eggert, but hell, he'll make you good.
The textbook for this class is actually amazing. Highly recommend dishing out the fat stacks of cash to buy it because it is well worth it. It is easy to understand, often funny, engaging, AND it covers EVERYTHING Eggert talks about in lecture. Seriously. Honestly, don't go to a single lecture. It's a waste of time. Just read the textbook, it's much better at explaining than Eggert.
Just to give you some general tips to help you succeed in this class:
hw1 and hw2 are OCaml functional programming. hw1 is easy, but hw2 is exponentially harder (probably the hardest one), so make sure you start early on this one.
hw3 (concurrency in Java) is probably the easiest, but you need to derive data and write report.
hw4 (prolog) is intermediate difficulty, but lots of people may find functional programming hard to understand at first, and you need to figure out how to optimize performance to get full score.
hw5 (scheme) is also intermediate difficulty, but I personally find this one the hardest to understand. Personally, I insist the spec and my solution on this one is quite sloppy, even though I got full score.
hw6 basically requires no programming.
Project (asyncio in Python) is not hard on the logic side, but you need to understand the asyncio library in Python and the concept of server and client.
As for the lecture, you can learn a lot if you do the reading and pay full attention to Eggert's lecture. However, unlike the experience of others, I found his lecture quite hard to follow (I feel like I have not mastered adequate background knowledge in CS to understand his points).
As for the exam, based on the response of my peers, the midterm tends to be easier than the final, although I did better on the final (I score fairly above the median in both and get an A). One thing to notice is that some open-end questions are actually quite hard to get points, so fully develop you arguments and provide enough technical details to back it up. One general strategy to eggert's exam is always to remain calm, pick the battle you can fight, and aim for every possible points.
Some side notes: go the the discussion as the TA will explain the spec for you; I personally find that CS131+CS181 combo is quite helpful since both of them talks about grammar, and I notice that there are handful of students in both lecture (although CS181 is usually recommended as the last CS class to take).
Haven't gotten a grade for this class yet. The first two homeworks are insanely hard (and its only like a couple functions you need to write for each) but when you finish them it's smooth sailing (for the most part). There is only one midterm which is nice and I found it to be a lot easier than every Eggert midterms I've ever taken. The final was rough though and left me leaving with the same sadness that Eggert usually does on a test. There is one project in this class which isn't too bad on the coding end and mostly focuses on the report. The homeworks are difficult but piazza is your best friend. The scheme and prolog homeworks were medium difficulty. The java homework is really easy and is mainly focused on the report as well and so is the last homework (the language for this one varies). Lectures are SUPER useful and I find that he is a lot better at teaching this course than cs 33 (but maybe that's just cuz 33 is a harder subject). You don't need to read the book really but it is also helpful and gives a deeper understanding. He pretty much goes over whatever's in the book in lecture a few days later. Best Eggert class I've taken but still difficult as always.
I really wanted to like this class because Eggert was legitimately an interesting lecturer (unlike his CS33). I felt I learned a lot by going to class. Unfortunately that's ruined by every other part of this course.
TAs are one of the most important parts of getting through this class. Go to different discussions and compare with your friends. A good TA makes all the difference and some are more generous about giving tips on the homework than others. A few of the assignments involve written reports, which is annoying but at the same time is easier than the 100% code ones. I'd rather write more reports than pull my hair out over OCaml .
Tests are your standard Eggert tests. It's open book/note so bring all the things you want but it just comes down to whether you're lucky enough that the things you focus on happen to be what he write questions about.
This class is really hard. Eggert's lectures are unclear at some times. Assignments take 15-20 hours per week, 2nd assignment is especially difficult (took me 40 hours even with a ton of TAs help). I did all the assignments legitimately, but it left a sour taste in my mouth knowing that others were using past solutions and getting the same grades as me. Thus, this leads to a more heavy emphasis on doing well on exams. However, exams are also really difficult with an average of roughly ~40%. I got slightly below median on both exams and ended up with a B+. Though to be fair, I only studied for an hour or two for each exam. Because the exam is hard for everyone, you don't have to study as much and still get a median score.
With all this being said though, Eggert has good intentions. I think both the hard assignments and exams defines what UCLA CS education is all about. Finishing an assignment legitimately also gives you a small ego boost. Your GPA might take a hit, but luckily I'm not planning on applying for grad school.
Overall not that bad of a class, as long as you attend the lectures or get notes, and then do a good bit of self-studying. The projects are hard (especially project 2) but if you start early, most of them are pretty doable. The exams are okay if you have the ability to BS and make convincing arguments, and are curved generously.
Selling the textbook - message me at **********
Eggert is a pretty eccentric teacher, but for this class I felt like that was good. He did a pretty good job of teaching concepts of programming languages and getting you to question why things are the way they are, how different languages look like, etc. The homeworks can be tricky, but once you get a feel for the language and start to understand what's going on, the assignments usually only involve a few lines of code. Tests are basically a bunch of theoretical questions that you just have to work your way through, as I believe is typical for Eggert tests. If you like tests that are straightforward and just test you on your memorization of concepts, you probably won't like this, but personally because it's curved I was fine with it.
If you're reading this that means you're probably new to UCLA, or the CS department, because you're wondering how Eggert is. Either that, or you took him for 111 and are curious if he's different. Short answer - not really. No professor gives me as much internal conflict as Eggert. His exams are impossible, and his projects unbelievably time consuming and difficult to understand. However, as was the case when I took him for 111, when I walked out of the final I thought to myself, "damn, I learned a ton in that class." If you actually do the projects you'll learn a lot more than from most other CS classes, but you'll suffer mightily while it's happening. I'd analogize his class to the Navy SEAL training camp of UCLA CS. Tough love from daddy Eggert, but hell, he'll make you good.
Based on 89 Users
TOP TAGS
- Tough Tests (32)