Harry Xu
AD
Based on 38 Users
At this point, it's no secret that CS 111 is a horribly designed course with many flaws, particularly regarding its awful pacing and disconnect between lecture material and labs. I would, however, instead like to offer tips about how to survive this class and some insight about Professor Xu.
Lectures can be a little boring and confusing at times, but I think it's still a good way to stay on top of things and learn the material. Plus, the professor often emphasizes material that will show up on exams. Doing the recommended readings is also a good way to enforce your understanding of the material, especially if you have trouble grasping the how and why. The professor also provided some practice problems the quarter that I took it, and they really helped test my knowledge and let me figure out what topics I should review.
For labs, you should attend discussion sections since the TAs go over what the labs are about and help get you started. It saves a lot of time since you won't have to really start from scratch looking things up all the time.
Professor Xu isn't the best at explaining concepts in lecture, but he is definitely one of the most understanding instructors I've had. He listened to a lot of the complaints that students had about the course and took it as constructive advice for improving the class. For example, students complained about the difficulty of the midterm exam given the 2 hour time limit, and he made the final a lot more manageable. In all, he seems like one of the better options for this course.
This class is, as many others have said, horrible and in need of a *major* overhaul. Professor Xu tried to be accommodating, but still heavily relied on the TAs to carry the class. The lectures were pointless and few people attended after the midterm. Prof. Xu seemed surprised when people expressed concern over the disconnect between lecture and exam. This reaction is expected, as Xu's slides are compiled from other UCLA professors who focus on more theoretical topics, while our exam (not made by the same professors) was almost purely computational. I have expressed to the professor multiple times that this class is nearly beyond repair and in need of a complete redesign. Labs take upwards of 40 hours, readings are lengthy (but helpful), and discussion sections are the class's backbone. Hopefully Professor Xu and the CS department heed the advice of students and fix this class before more students are negatively affected by this monstrosity of a course.
Harry Xu cares a lot about the students, but lectures can be quite not-in depth. I feel bad cuz the dude has so much stuff he needs to teach and nowhere near enough time - also lecture was at 8 AM so like also my fault for not paying attention. I got 93+ on the final and every single project, but 51 on the midterm and still ended with a B which was a bit disappointing but whatever. Understand what's on his slides and u should be chill but i think it was curved down
This class was definitely difficult. The exams were very challenging, and 2/4 of the labs were pretty time consuming as well. Harry is a knowledgable professor, and it's evident that he knows what he's talking about during lecture. Though, there is just too much to cover in this course, and he tends to get side tracked a lot during lecture, making it difficult to absorb the content you need to succeed in the course. HOWEVER, I cannot emphasize this enough, but PLEASE READ the textbook. I haven't read a book (let alone textbook) since middle school, but I personally read all of the assigned readings and can without a doubt say that it saved me in this class. The authors constantly joke around in the text, and the book reads like a casual conversation (most of the time) rather than a dense science or math textbook. Compared to some of the people complaining about how difficult the tests were, I won't deny that they were challenging for sure (in my case, I scored slightly above the average on the final), but some of the difficult questions were very doable thanks to the reading.
Reasons to ditch lecture: It was very badly paced, because Xu tends to ramble about ?? (Idk because I didn't pay attention for the 3 weeks I did go) especially when students asked questions.
Reasons to read the wonderful, hilarious, eloquent, and most notably widely available, FREE, and ONLINE textbook instead: Very easy to read, you will actually learn, the footnotes have jokes, probably the best textbook you will read in the entire CS curriculum
As nice and approachable as Harry was, I didn't really gain much from having him as a professor. By week 5, nearly half the class (myself included) stopped attending lecture. My personal reason for this was that the textbook, Three Easy Pieces, explained OS concepts far more concisely and accurately than Harry could. He was consistently behind schedule, which made some of the projects unduly difficult. Thankfully, my TA was great about guiding us through the projects without directly telling us what to do (shoutout Shaan). Honestly, if lectures were removed and all my learning was exclusively from the readings/slides, my understanding of the course material wouldn't change all too much.
Harry is a bad professor. It's really obvious he cares little about teaching, and he lectures like he wishes he weren't there. Harry stole slides from previous professors (Reiher), presenting them word for word. Furthermore, he lectures as though he's never seen the slides in his life. Harry reads off the slides word for word, adding little to no additional information than what the slides provide. I can't understand why I'm spending money and time learning about operating systems from Harry, when I could be learning more as a broke high school dropout with a laptop. Additionally, he copied a significant amount of the midterm from a previous midterm, which may have been the reason why the median was in the 90s. While this did make the midterm extremely easy, it also further proves the point that Harry does not care. I could say the same thing about every project, but it seems like the projects have been the same for many quarters, which is a failure of the 111 course itself (writing new assignments obviously takes some time, but updating them once in a while doesn't seem unreasonable). Additionally, Harry's scheduling was atrocious. On the two lectures prior to the midterm (around week 4/5), we had covered half of what was planned. Luckily, Harry rushed through the slides, skipping whatever he felt like so that he could 'catch up'. Regardless of whether this was caused by poor planning, or a lack of motivation to teach the class, I think that incidents like these are inexcusable. Frankly, CS 111 with Harry was difficult for the wrong reasons. We use resources from other professors, we have no motivation to do learn much from this class, and nobody can say what Harry contributes to their education. Not even the grading can be taken seriously, since everyone has aced every single assignment and exam. We'd all be a lot happier (Harry included) if he never taught again. In the event that he does, I recommend for him to be better at pretending to care, or at least to put in a little more effort.
Good News: If you can, definitely take him. BAD NEWS: Zhaoxing Bu graduated so RIP future CS111 students.
This guys is one of the nicest professor you can have in any cs classes. I mean yes he is new and sometimes he gets all confused, but you can pretty much self-study everything based on the slides and textbook(which is free). He reuses projects and slides and course schedules from previous professors and he hands the projects entirely to the TAs. The projects take a shiiiiiiiit ton of time so don't expect to have a lot of free time during the weekends. For us we are lucky because we have Zhaoxing Bu to hold our hands and guide us through the projects step by step but as I said he graduated so whooopsies. But in case he gets tired of working at Google and decides to redo his PhD, definitely go to his section no matter what. His tests are not so hard compared to other professors' tests(which are INSANELY hard) but considering the extensive amount of material covered in this course it is a pain nonetheless. Overall this is a hard class but you will learn a lot. And he is a great guy so definitely take him on any course if you can.
P.S. because he is such a great guy he pretty much says yes to all of your demands. During the midterm there was a small confusion on his slides that led some students to give wrong answers. So when students asked him on this he just decided to give full score on that question (a 15 points question) to everyone who submitted a regrade request regardless if the mistake was because of the confusion or just a regular fuck-up. How about that huh.
Harry is an underrated professor. People have complained in the past about his slides, but this quarter he's revamped them and they were super clear and understandable. CS 111 is a lot of work, but Harry was really considerate and took into account students' problems with getting Beaglebones and student stress over the workload. For example, he made some of the readings optional and also made changes to the final exam, which turned out to be a lot easier than the midterm. I also thought he was actually a pretty good teacher. There are a lot of concepts in 111, and Harry's lectures were really organized in explaining big concepts piece by piece.
TLDR: Easy labs(this quarter), horrible bullshit lectures, and impossible bullshit exams.
Full review: I will be categorizing this review into 4 parts- Labs, Lectures, Exams, and Resources
Labs: This is specifically for Winter 2022. We had 1 warm-up lab and 4 full labs. all 5 of these labs were taken word-for-word from Professor Jon Eyolfson's class, and used Eyolfson's submission website as well. Harry Xu has ZERO involvement with labs, and this is a godsend. The TA's used their discussion sections to solely focus on lab hints, and in some cases often gave the answer to certain parts of the labs as well. The labs themselves are extremely easy and short. Lab 0 was a warm-up lab mainly just setting up virtualbox and writing 2 lines of code. Lab 1 was implementing the "|" pipe using c. This was very tricky to understand in the beginning, but once you get started the lab is not so bad. Lab 2 was implementing a scheduling algorithm learned in class. This was extremely easy as well. Lab 3 was adding locks to a program so that multithreading would work. Also very easy and maybe like 5 actual lines of code. These 4 aforementioned labs take about 5 hours tops, and thats including the time it takes to watch the TA discussion and goofing around on your phone every 10 minutes.
Lab 4 was by far the toughest one, and took about 9 hours to do. It was implementing an ext2 file system. It had a lot of reading, plus 2 websites to scour for answers, plus an hour long demo by Eyolfson himself. While the concept and getting started is tough, the lab is honestly extremely fun as you slowly inch closer and closer to getting it all right.
Lectures: How lazy can you get.... for the most part, Harry's lectures are an incredible waste of time, incredibly boring. He basically just reads off of his slides(sometimes inaccurately), it often like he doesn't even know what he is talking about most of the time. The content on the slides(and therefore lectures) is extremely surface level, and rarely goes into detail on any topic. For example, he had 2 slides on segmentation, and all it told us was the broad concept plus a vague elementary school level diagram showing what is was(this will be relevant when I talk about Exams btw). Sometimes, the slides did go into proper detail(scheduling algorithms for example) but these are very rare and also not a great sign either(I will talk about THIS as well in exams). He answers questions like a lawyer(by which i mean he will either give you total bullshit, or answer a totally different question). The thing is, you don't really know how little you until its time for you to take your...
EXAMS: dear god. Two exams, a midterm and final. Midterm open note cause it was online. Final allowed a single cheet sheet. I'll just say what the questions were like and you can decide how screwed you might be when you take this class. Labs don't help you much or at all for this, which is weird cause most of your time in this class is spent working on these.
For concepts that he breifly touches on in class(which is all of them), you will find instead an indepth super specific detailed question that you won't be prepared for. Like for segmentation, we had to calculate pointer addresses + physical addresses or smth crazy. For the rare topic he went in depth for like scheduling, he would put a very calculation heavy time consuming problem where a tiny addition mistake early on could cascade and get you a 0 on the problem.
The final was this but on steroids. While there wasn't so much of a time crunch, several questions went way into depth into stuff like journaling, something the professor half assed during the last half of the last lecture. He made us straight up implement a monitor(which i swear to god I still have no clue what it even is, let alone how to fucking implement it). All in all, it just isn't fair.
Grading is wack, I think there is no curve during me writing this review. Partial credit is nonexistent even though they try so hard to claim that the grading is fair.
Resources: professor before midterm provided us with a practice midterm, and a file with a bunch on page table questions on it. He then claimed the actual midterm would be like the practice on in terms of difficulty. He was lying. The practice midterm was a lot easier, and the page table practice was so out of scope it made no sense to even bother wondering how those answers worked...
for the final, he provided us with a bunch of practice questions, all of which were incredibly beyond scope of the class(one of them asked to run something through computer software even idk). Very irrelevant to what was gonna be on exams.
All in all, i feel like the professor tried to take 1 step forward but took 2 steps backwards. He made labs easier by just using another profs easier labs, but got super lazy in every other aspect.
At this point, it's no secret that CS 111 is a horribly designed course with many flaws, particularly regarding its awful pacing and disconnect between lecture material and labs. I would, however, instead like to offer tips about how to survive this class and some insight about Professor Xu.
Lectures can be a little boring and confusing at times, but I think it's still a good way to stay on top of things and learn the material. Plus, the professor often emphasizes material that will show up on exams. Doing the recommended readings is also a good way to enforce your understanding of the material, especially if you have trouble grasping the how and why. The professor also provided some practice problems the quarter that I took it, and they really helped test my knowledge and let me figure out what topics I should review.
For labs, you should attend discussion sections since the TAs go over what the labs are about and help get you started. It saves a lot of time since you won't have to really start from scratch looking things up all the time.
Professor Xu isn't the best at explaining concepts in lecture, but he is definitely one of the most understanding instructors I've had. He listened to a lot of the complaints that students had about the course and took it as constructive advice for improving the class. For example, students complained about the difficulty of the midterm exam given the 2 hour time limit, and he made the final a lot more manageable. In all, he seems like one of the better options for this course.
This class is, as many others have said, horrible and in need of a *major* overhaul. Professor Xu tried to be accommodating, but still heavily relied on the TAs to carry the class. The lectures were pointless and few people attended after the midterm. Prof. Xu seemed surprised when people expressed concern over the disconnect between lecture and exam. This reaction is expected, as Xu's slides are compiled from other UCLA professors who focus on more theoretical topics, while our exam (not made by the same professors) was almost purely computational. I have expressed to the professor multiple times that this class is nearly beyond repair and in need of a complete redesign. Labs take upwards of 40 hours, readings are lengthy (but helpful), and discussion sections are the class's backbone. Hopefully Professor Xu and the CS department heed the advice of students and fix this class before more students are negatively affected by this monstrosity of a course.
Harry Xu cares a lot about the students, but lectures can be quite not-in depth. I feel bad cuz the dude has so much stuff he needs to teach and nowhere near enough time - also lecture was at 8 AM so like also my fault for not paying attention. I got 93+ on the final and every single project, but 51 on the midterm and still ended with a B which was a bit disappointing but whatever. Understand what's on his slides and u should be chill but i think it was curved down
This class was definitely difficult. The exams were very challenging, and 2/4 of the labs were pretty time consuming as well. Harry is a knowledgable professor, and it's evident that he knows what he's talking about during lecture. Though, there is just too much to cover in this course, and he tends to get side tracked a lot during lecture, making it difficult to absorb the content you need to succeed in the course. HOWEVER, I cannot emphasize this enough, but PLEASE READ the textbook. I haven't read a book (let alone textbook) since middle school, but I personally read all of the assigned readings and can without a doubt say that it saved me in this class. The authors constantly joke around in the text, and the book reads like a casual conversation (most of the time) rather than a dense science or math textbook. Compared to some of the people complaining about how difficult the tests were, I won't deny that they were challenging for sure (in my case, I scored slightly above the average on the final), but some of the difficult questions were very doable thanks to the reading.
Reasons to ditch lecture: It was very badly paced, because Xu tends to ramble about ?? (Idk because I didn't pay attention for the 3 weeks I did go) especially when students asked questions.
Reasons to read the wonderful, hilarious, eloquent, and most notably widely available, FREE, and ONLINE textbook instead: Very easy to read, you will actually learn, the footnotes have jokes, probably the best textbook you will read in the entire CS curriculum
As nice and approachable as Harry was, I didn't really gain much from having him as a professor. By week 5, nearly half the class (myself included) stopped attending lecture. My personal reason for this was that the textbook, Three Easy Pieces, explained OS concepts far more concisely and accurately than Harry could. He was consistently behind schedule, which made some of the projects unduly difficult. Thankfully, my TA was great about guiding us through the projects without directly telling us what to do (shoutout Shaan). Honestly, if lectures were removed and all my learning was exclusively from the readings/slides, my understanding of the course material wouldn't change all too much.
Harry is a bad professor. It's really obvious he cares little about teaching, and he lectures like he wishes he weren't there. Harry stole slides from previous professors (Reiher), presenting them word for word. Furthermore, he lectures as though he's never seen the slides in his life. Harry reads off the slides word for word, adding little to no additional information than what the slides provide. I can't understand why I'm spending money and time learning about operating systems from Harry, when I could be learning more as a broke high school dropout with a laptop. Additionally, he copied a significant amount of the midterm from a previous midterm, which may have been the reason why the median was in the 90s. While this did make the midterm extremely easy, it also further proves the point that Harry does not care. I could say the same thing about every project, but it seems like the projects have been the same for many quarters, which is a failure of the 111 course itself (writing new assignments obviously takes some time, but updating them once in a while doesn't seem unreasonable). Additionally, Harry's scheduling was atrocious. On the two lectures prior to the midterm (around week 4/5), we had covered half of what was planned. Luckily, Harry rushed through the slides, skipping whatever he felt like so that he could 'catch up'. Regardless of whether this was caused by poor planning, or a lack of motivation to teach the class, I think that incidents like these are inexcusable. Frankly, CS 111 with Harry was difficult for the wrong reasons. We use resources from other professors, we have no motivation to do learn much from this class, and nobody can say what Harry contributes to their education. Not even the grading can be taken seriously, since everyone has aced every single assignment and exam. We'd all be a lot happier (Harry included) if he never taught again. In the event that he does, I recommend for him to be better at pretending to care, or at least to put in a little more effort.
Good News: If you can, definitely take him. BAD NEWS: Zhaoxing Bu graduated so RIP future CS111 students.
This guys is one of the nicest professor you can have in any cs classes. I mean yes he is new and sometimes he gets all confused, but you can pretty much self-study everything based on the slides and textbook(which is free). He reuses projects and slides and course schedules from previous professors and he hands the projects entirely to the TAs. The projects take a shiiiiiiiit ton of time so don't expect to have a lot of free time during the weekends. For us we are lucky because we have Zhaoxing Bu to hold our hands and guide us through the projects step by step but as I said he graduated so whooopsies. But in case he gets tired of working at Google and decides to redo his PhD, definitely go to his section no matter what. His tests are not so hard compared to other professors' tests(which are INSANELY hard) but considering the extensive amount of material covered in this course it is a pain nonetheless. Overall this is a hard class but you will learn a lot. And he is a great guy so definitely take him on any course if you can.
P.S. because he is such a great guy he pretty much says yes to all of your demands. During the midterm there was a small confusion on his slides that led some students to give wrong answers. So when students asked him on this he just decided to give full score on that question (a 15 points question) to everyone who submitted a regrade request regardless if the mistake was because of the confusion or just a regular fuck-up. How about that huh.
Harry is an underrated professor. People have complained in the past about his slides, but this quarter he's revamped them and they were super clear and understandable. CS 111 is a lot of work, but Harry was really considerate and took into account students' problems with getting Beaglebones and student stress over the workload. For example, he made some of the readings optional and also made changes to the final exam, which turned out to be a lot easier than the midterm. I also thought he was actually a pretty good teacher. There are a lot of concepts in 111, and Harry's lectures were really organized in explaining big concepts piece by piece.
TLDR: Easy labs(this quarter), horrible bullshit lectures, and impossible bullshit exams.
Full review: I will be categorizing this review into 4 parts- Labs, Lectures, Exams, and Resources
Labs: This is specifically for Winter 2022. We had 1 warm-up lab and 4 full labs. all 5 of these labs were taken word-for-word from Professor Jon Eyolfson's class, and used Eyolfson's submission website as well. Harry Xu has ZERO involvement with labs, and this is a godsend. The TA's used their discussion sections to solely focus on lab hints, and in some cases often gave the answer to certain parts of the labs as well. The labs themselves are extremely easy and short. Lab 0 was a warm-up lab mainly just setting up virtualbox and writing 2 lines of code. Lab 1 was implementing the "|" pipe using c. This was very tricky to understand in the beginning, but once you get started the lab is not so bad. Lab 2 was implementing a scheduling algorithm learned in class. This was extremely easy as well. Lab 3 was adding locks to a program so that multithreading would work. Also very easy and maybe like 5 actual lines of code. These 4 aforementioned labs take about 5 hours tops, and thats including the time it takes to watch the TA discussion and goofing around on your phone every 10 minutes.
Lab 4 was by far the toughest one, and took about 9 hours to do. It was implementing an ext2 file system. It had a lot of reading, plus 2 websites to scour for answers, plus an hour long demo by Eyolfson himself. While the concept and getting started is tough, the lab is honestly extremely fun as you slowly inch closer and closer to getting it all right.
Lectures: How lazy can you get.... for the most part, Harry's lectures are an incredible waste of time, incredibly boring. He basically just reads off of his slides(sometimes inaccurately), it often like he doesn't even know what he is talking about most of the time. The content on the slides(and therefore lectures) is extremely surface level, and rarely goes into detail on any topic. For example, he had 2 slides on segmentation, and all it told us was the broad concept plus a vague elementary school level diagram showing what is was(this will be relevant when I talk about Exams btw). Sometimes, the slides did go into proper detail(scheduling algorithms for example) but these are very rare and also not a great sign either(I will talk about THIS as well in exams). He answers questions like a lawyer(by which i mean he will either give you total bullshit, or answer a totally different question). The thing is, you don't really know how little you until its time for you to take your...
EXAMS: dear god. Two exams, a midterm and final. Midterm open note cause it was online. Final allowed a single cheet sheet. I'll just say what the questions were like and you can decide how screwed you might be when you take this class. Labs don't help you much or at all for this, which is weird cause most of your time in this class is spent working on these.
For concepts that he breifly touches on in class(which is all of them), you will find instead an indepth super specific detailed question that you won't be prepared for. Like for segmentation, we had to calculate pointer addresses + physical addresses or smth crazy. For the rare topic he went in depth for like scheduling, he would put a very calculation heavy time consuming problem where a tiny addition mistake early on could cascade and get you a 0 on the problem.
The final was this but on steroids. While there wasn't so much of a time crunch, several questions went way into depth into stuff like journaling, something the professor half assed during the last half of the last lecture. He made us straight up implement a monitor(which i swear to god I still have no clue what it even is, let alone how to fucking implement it). All in all, it just isn't fair.
Grading is wack, I think there is no curve during me writing this review. Partial credit is nonexistent even though they try so hard to claim that the grading is fair.
Resources: professor before midterm provided us with a practice midterm, and a file with a bunch on page table questions on it. He then claimed the actual midterm would be like the practice on in terms of difficulty. He was lying. The practice midterm was a lot easier, and the page table practice was so out of scope it made no sense to even bother wondering how those answers worked...
for the final, he provided us with a bunch of practice questions, all of which were incredibly beyond scope of the class(one of them asked to run something through computer software even idk). Very irrelevant to what was gonna be on exams.
All in all, i feel like the professor tried to take 1 step forward but took 2 steps backwards. He made labs easier by just using another profs easier labs, but got super lazy in every other aspect.