- Home
- Search
- Michael Tsiang
- All Reviews

Michael Tsiang
AD
Based on 256 Users
My experience is during the covid period. I think the past reviews don't do this class justice. Mike is a great lecturer and everything is clear. I have a very bad coding background but I have taken coding classes before so my experience could have been a lot worse. This class is difficult but yes, you do learn a lot of information. There is a very nice curve at the end so just focus on learning and not on your grade.
Alright, well this review is going to be slightly different from the others.
I’ll start off by saying I struggle a lot with any programming, math, or stats related courses.
But I actually really really liked Michael and the head TA, Jake. Jake is hands down the smartest TA I have ever met at UCLA. He also dedicated so much time to the students in the class. In addition to his regular office hours, sometimes
he would hold 6-8 hour office hours or additional office hours 2-3 times a week. I never felt like a bother when I asked him a question and he really helped me to understand the material. The truth of the matter is that there are a lot more people posting negative reviews than there were that showed up to office hours. The beginning of the quarter had a large turn out, but towards the last few weeks there was hardly anyone there. Sometimes it was just me and one other person.
Here’s the truth: if you want to be good at programming you’re gonna have to struggle, at least at the beginning. Yes, I freaking died this quarter. I got stuck a lot. I struggled to keep up with assignments and I had to ask for help often. But I have never learned so much from a class at UCLA as this one. By the end of the quarter I really noticed a change in the way I approached problems and how I thought about them.
I know there are a lot of BS classes out there that are hard for no reason and we often find ourselves as students asking, “When the hell am I ever gonna use this?”. But this is NOT one of those classes. R is one of the most desired skills in the job market right now. This class has the potential to provide more internship opportunities, job opportunities, and higher salaries. That might sound dramatic, but proficiency in R and data analysis really is so high in demand for all industries right now. And the better you get at approaching difficult problems the better you will do in stats/ programming interviews. Classes like this one is what makes our tuition money worth it.
Also, this class isn’t a weader. It became more difficult because they wanted to better prepare students for upper division statistics courses and teach them more.
If you’re taking this class, don’t be afraid, especially of Jake. Go to office hours and don’t be intimidated by Michael or Jake after the first office hour session. Yes you’ll have to dedicate a lot of time to this class, but you will learn a lot. If I could finish this class, then anyone at UCLA can. I am really happy I took this class.
Tsiang is an excellent lecturer and his emphasis on learning makes the class worthwhile. If you are a stats major, this class is IMPORTANT. The amount of material that is covered to prepare you for the 101 and 102 series is insane. I wish I tried a bit harder to understand the concepts because honestly I got my ass kicked in 102A. So put in the time now! I went from scoring 30s and 70s on the homework (graded on completion) and then I got my shit together and started getting 100s. PUT IN THE TIME! Tsiang pays attention to your progress, so don't focus too much on your midterm/final/homework scores. As long as he sees you are trying to understand the concepts, you will be alright!
I know there are a lot of grading schemes/grading breakdowns for Tsiang but here's summer 2021:
20% Homework (HW 4 had an extra credit opportunity but had no idea if it was actually given)
30% Midterm
35% Final exam
10% Final project
3% Discussion Attendance
2% Campuswire Participation (Opportunity to get 1% extra credit through lots of contribution)
Later on the quarter, Tsiang canceled the Final Project and made the grading scheme
35% max(Midterm, Final Exam)
30% min(Midterm, Final Exam)
Grading Distributions for exams were
Midterm 1: Q1: 74.75, Median: 84.50, Q3: 92
Final: Q1: 67.50, Median: 78.33, Q3: 84.50
If you have coding experience, this class should be relatively easy (especially the first half). I would highly suggest taking at least PIC 10A before taking this course. Without any sort of coding experience, unless you are very on top of it, this class will leave you confused. I think Tsiang is honestly a great Professor. I didn't attend discussion nor lecture so I cannot comment on his teaching style, but he is very timely with his responses to questions, gives ample studying materials, and is looking out for the wellbeing of his students (I know that other reviews contradict that last statement - maybe he changed but at least in my eyes he was very good about this). His typed up notes are amazing and if every prof released something like that, we would have nice things. The TA seems nice and probably is good but someone else's review could better justify that. ALSO THERE IS A MASSIVE CURVE. I don't know the exact one but so long as you score about Q3-Median, you can probably get an A-. I scored 91 and 85 respectively for the exams and got an A. Also, don't stress about Homework. Definitely try because it is good practice for the exams but they are free 100s (even if you can't do it 100%). The exams were very fair and doable. The timing wasn't bad at all and I also had about 20-30 minutes afterwards to check stuff. Overall, I'd take another class with Tsiang
Took this class over session C and to be honest was a little hesitant after reading reviews / hearing opinions of past students. I’m so happy I didn’t drop it and took the course with Dr. Mike. I should mention that R was my first programming language, and prior to this course I had only worked with R in a very superficial manner in another course. I think the class was split between students who had more programming experience and those that didn’t, so (as someone who compares themselves to others) it felt like I was behind the curve at times. I brought this up once or twice with Dr. Mike during office hours with other students and he always reminded us that we were doing fine and to specifically stop comparing ourselves to others. He also would remind us that it was normal to master some of the concepts in the course, as attempting to learn a programming language in 6 weeks is an especially difficult task. Dr. Mike always made himself available for questions on the course, however what I appreciated the most was that he would also be willing to talk about things outside of the course material: grad school, upper div stats courses, life, really anything.
HW’s assignments are graded upon completion, but there has to be an effort to solve the problems. The questions can be pretty difficult if you’re new programming BUT if you’re actually trying to learn the material they genuinely did help drive the concepts home (at least for me personally).
The midterm and final were definitely hard, however there was a strong curve in the class based upon the grade distributions and other factors. I got a 75% on the midterm however that translated to an A/A- after the curve.
All in all the course was difficult but rewarding. Dr. Mike was extremely passionate and empathetic toward his students and I would 100% take another course with him again. I would definitely recommend going to office hours each week to discuss HW’s and Exams as it gave me the opportunity to get out of my comfort zone and ask questions. I never felt like my questions were “stupid” or anything, which is a big fear of mine.
Super easy!! The TAs are really helpful and the professor is super sweet and not intimidating at all. They all clearly care about students. The material is also very simple at first and then gets more interesting as you go, but never more than manageable. Highly recommend this class, it was a perfect summer class
Overall I think Mike is a great professor. His class isn't as absurdly hard as some of the reviews make it seem. The homeworks definitely take awhile but if you put the time and effort into doing the homework then it definitely helps you with the tests. I definitely recommend taking the class with Mike because he's one of the few professors that I've had who seems to truly care about his students and their learning. Definitely worth it
The course difficulty has been toned down. HWs are difficult to complete and require you to think outside the box, but graded on completion so you will be fine if you put in a solid effort. Attendance at lectures is not mandatory (they are posted online), but discussion sections are. The tests are difficult, but partial credit is given and they are also curved. Mike is by far the most responsive and approachable professor I've taken a class with; he wants you to succeed.
For background, I had absolutely zero experience with any coding language, besides the 3 days I spent on codeacademy to try and prepare for this class.
I must say that for one of my first in person class and intro to code, Prof Mike made it very enjoyable and not as intimidating as I thought it would be.
For one, he is a very understanding professor, dropping a hw grade (that was based on effort to begin with), changing the grade scheme to help with grade anxiety, etc. I was even able to change final dates as a result of a test conflict!
Prof Mike is also very approachable (despite me hardly approaching him but that's because I had to commute).
The hard part about this class is probably just the homework for me. I wanted to really try my best and sometimes that wasn't enough to get through the intermediate problems. The LAs are helpful, as I went once to an office hour and got through a problem. Eddie was my TA and he was also very helpful in discussions. The midterms, while heavily dependent on the free response, were difficult but not impossible for me, so long as you study code! It's important to know what you expect to come out of a command and that method of studying was very helpful once I finally figured out how to study for this kind of class (Midterm 2 made me feel bad but I didn't do horrifically).
Overall, I do suggest that you at least watch the lectures if he continues to BruinCast, as that is what I did after I was tired of driving to school everyday for 3 weeks. Being there actively really helped me succeed as I did WAY better than I thought in terms of my coding knowledge. Definitely would live to take Mike as a professor again in the future!
Disclaimer—I took this class over the summer and online, which made the scheduling very wonky so my experiences as described below may not be indicative of a typical in-person session of this class.
Overall, this was a very good introductory programming class. No prior programming knowledge is assumed, and Dr. Mike (don't call him Professor Tsiang!) designs it such that prior knowledge of R won't even help you very much. In particular you are prohibited from using functions or structures that he hasn't yet talked about in lecture, which to me has some teaching benefits but also some drawbacks, as at times I and other students were unsure or had trouble remembering what we were and weren't allowed to use. Dr. Mike lectures in a way such that you won't just memorize a bunch of names but actively understand the theory and reasoning behind functions and structures, and his exams reflect this as they contain theoretical questions in addition to the traditional writing and debugging of code.
There were no live lectures save the introductory one on the first day. This also had major benefits and drawbacks. It was nice to be able to rewind and pause when needed, but a major downside was that it was impossible to space out all the lectures so each scheduled day would have 110 minutes' worth of content. This resulted in some days having insanely short lectures while others would far surpass two hours. Likewise, the length of the weekly homeworks tended to vary significantly, and the busiest week overall (in my opinion) was the week of the midterm. However, I wouldn't blame this on poor scheduling by Dr. Mike, I think it was merely an unfortunate consequence of the weird summer schedule.
Your grade consists of one midterm (two hours), the final (three hours), a final project, weekly homework (graded on satisfactory completion), and participation on Campuswire. Dr. Mike actually canceled the final project for us since the last two weeks were somewhat crammed, especially with the Labor Day holiday. Don't be afraid to ask him for extra accommodation if you need it, he is a very understanding professor and will try to work out a solution for you.
My experience is during the covid period. I think the past reviews don't do this class justice. Mike is a great lecturer and everything is clear. I have a very bad coding background but I have taken coding classes before so my experience could have been a lot worse. This class is difficult but yes, you do learn a lot of information. There is a very nice curve at the end so just focus on learning and not on your grade.
Alright, well this review is going to be slightly different from the others.
I’ll start off by saying I struggle a lot with any programming, math, or stats related courses.
But I actually really really liked Michael and the head TA, Jake. Jake is hands down the smartest TA I have ever met at UCLA. He also dedicated so much time to the students in the class. In addition to his regular office hours, sometimes
he would hold 6-8 hour office hours or additional office hours 2-3 times a week. I never felt like a bother when I asked him a question and he really helped me to understand the material. The truth of the matter is that there are a lot more people posting negative reviews than there were that showed up to office hours. The beginning of the quarter had a large turn out, but towards the last few weeks there was hardly anyone there. Sometimes it was just me and one other person.
Here’s the truth: if you want to be good at programming you’re gonna have to struggle, at least at the beginning. Yes, I freaking died this quarter. I got stuck a lot. I struggled to keep up with assignments and I had to ask for help often. But I have never learned so much from a class at UCLA as this one. By the end of the quarter I really noticed a change in the way I approached problems and how I thought about them.
I know there are a lot of BS classes out there that are hard for no reason and we often find ourselves as students asking, “When the hell am I ever gonna use this?”. But this is NOT one of those classes. R is one of the most desired skills in the job market right now. This class has the potential to provide more internship opportunities, job opportunities, and higher salaries. That might sound dramatic, but proficiency in R and data analysis really is so high in demand for all industries right now. And the better you get at approaching difficult problems the better you will do in stats/ programming interviews. Classes like this one is what makes our tuition money worth it.
Also, this class isn’t a weader. It became more difficult because they wanted to better prepare students for upper division statistics courses and teach them more.
If you’re taking this class, don’t be afraid, especially of Jake. Go to office hours and don’t be intimidated by Michael or Jake after the first office hour session. Yes you’ll have to dedicate a lot of time to this class, but you will learn a lot. If I could finish this class, then anyone at UCLA can. I am really happy I took this class.
Tsiang is an excellent lecturer and his emphasis on learning makes the class worthwhile. If you are a stats major, this class is IMPORTANT. The amount of material that is covered to prepare you for the 101 and 102 series is insane. I wish I tried a bit harder to understand the concepts because honestly I got my ass kicked in 102A. So put in the time now! I went from scoring 30s and 70s on the homework (graded on completion) and then I got my shit together and started getting 100s. PUT IN THE TIME! Tsiang pays attention to your progress, so don't focus too much on your midterm/final/homework scores. As long as he sees you are trying to understand the concepts, you will be alright!
I know there are a lot of grading schemes/grading breakdowns for Tsiang but here's summer 2021:
20% Homework (HW 4 had an extra credit opportunity but had no idea if it was actually given)
30% Midterm
35% Final exam
10% Final project
3% Discussion Attendance
2% Campuswire Participation (Opportunity to get 1% extra credit through lots of contribution)
Later on the quarter, Tsiang canceled the Final Project and made the grading scheme
35% max(Midterm, Final Exam)
30% min(Midterm, Final Exam)
Grading Distributions for exams were
Midterm 1: Q1: 74.75, Median: 84.50, Q3: 92
Final: Q1: 67.50, Median: 78.33, Q3: 84.50
If you have coding experience, this class should be relatively easy (especially the first half). I would highly suggest taking at least PIC 10A before taking this course. Without any sort of coding experience, unless you are very on top of it, this class will leave you confused. I think Tsiang is honestly a great Professor. I didn't attend discussion nor lecture so I cannot comment on his teaching style, but he is very timely with his responses to questions, gives ample studying materials, and is looking out for the wellbeing of his students (I know that other reviews contradict that last statement - maybe he changed but at least in my eyes he was very good about this). His typed up notes are amazing and if every prof released something like that, we would have nice things. The TA seems nice and probably is good but someone else's review could better justify that. ALSO THERE IS A MASSIVE CURVE. I don't know the exact one but so long as you score about Q3-Median, you can probably get an A-. I scored 91 and 85 respectively for the exams and got an A. Also, don't stress about Homework. Definitely try because it is good practice for the exams but they are free 100s (even if you can't do it 100%). The exams were very fair and doable. The timing wasn't bad at all and I also had about 20-30 minutes afterwards to check stuff. Overall, I'd take another class with Tsiang
Took this class over session C and to be honest was a little hesitant after reading reviews / hearing opinions of past students. I’m so happy I didn’t drop it and took the course with Dr. Mike. I should mention that R was my first programming language, and prior to this course I had only worked with R in a very superficial manner in another course. I think the class was split between students who had more programming experience and those that didn’t, so (as someone who compares themselves to others) it felt like I was behind the curve at times. I brought this up once or twice with Dr. Mike during office hours with other students and he always reminded us that we were doing fine and to specifically stop comparing ourselves to others. He also would remind us that it was normal to master some of the concepts in the course, as attempting to learn a programming language in 6 weeks is an especially difficult task. Dr. Mike always made himself available for questions on the course, however what I appreciated the most was that he would also be willing to talk about things outside of the course material: grad school, upper div stats courses, life, really anything.
HW’s assignments are graded upon completion, but there has to be an effort to solve the problems. The questions can be pretty difficult if you’re new programming BUT if you’re actually trying to learn the material they genuinely did help drive the concepts home (at least for me personally).
The midterm and final were definitely hard, however there was a strong curve in the class based upon the grade distributions and other factors. I got a 75% on the midterm however that translated to an A/A- after the curve.
All in all the course was difficult but rewarding. Dr. Mike was extremely passionate and empathetic toward his students and I would 100% take another course with him again. I would definitely recommend going to office hours each week to discuss HW’s and Exams as it gave me the opportunity to get out of my comfort zone and ask questions. I never felt like my questions were “stupid” or anything, which is a big fear of mine.
Super easy!! The TAs are really helpful and the professor is super sweet and not intimidating at all. They all clearly care about students. The material is also very simple at first and then gets more interesting as you go, but never more than manageable. Highly recommend this class, it was a perfect summer class
Overall I think Mike is a great professor. His class isn't as absurdly hard as some of the reviews make it seem. The homeworks definitely take awhile but if you put the time and effort into doing the homework then it definitely helps you with the tests. I definitely recommend taking the class with Mike because he's one of the few professors that I've had who seems to truly care about his students and their learning. Definitely worth it
The course difficulty has been toned down. HWs are difficult to complete and require you to think outside the box, but graded on completion so you will be fine if you put in a solid effort. Attendance at lectures is not mandatory (they are posted online), but discussion sections are. The tests are difficult, but partial credit is given and they are also curved. Mike is by far the most responsive and approachable professor I've taken a class with; he wants you to succeed.
For background, I had absolutely zero experience with any coding language, besides the 3 days I spent on codeacademy to try and prepare for this class.
I must say that for one of my first in person class and intro to code, Prof Mike made it very enjoyable and not as intimidating as I thought it would be.
For one, he is a very understanding professor, dropping a hw grade (that was based on effort to begin with), changing the grade scheme to help with grade anxiety, etc. I was even able to change final dates as a result of a test conflict!
Prof Mike is also very approachable (despite me hardly approaching him but that's because I had to commute).
The hard part about this class is probably just the homework for me. I wanted to really try my best and sometimes that wasn't enough to get through the intermediate problems. The LAs are helpful, as I went once to an office hour and got through a problem. Eddie was my TA and he was also very helpful in discussions. The midterms, while heavily dependent on the free response, were difficult but not impossible for me, so long as you study code! It's important to know what you expect to come out of a command and that method of studying was very helpful once I finally figured out how to study for this kind of class (Midterm 2 made me feel bad but I didn't do horrifically).
Overall, I do suggest that you at least watch the lectures if he continues to BruinCast, as that is what I did after I was tired of driving to school everyday for 3 weeks. Being there actively really helped me succeed as I did WAY better than I thought in terms of my coding knowledge. Definitely would live to take Mike as a professor again in the future!
Disclaimer—I took this class over the summer and online, which made the scheduling very wonky so my experiences as described below may not be indicative of a typical in-person session of this class.
Overall, this was a very good introductory programming class. No prior programming knowledge is assumed, and Dr. Mike (don't call him Professor Tsiang!) designs it such that prior knowledge of R won't even help you very much. In particular you are prohibited from using functions or structures that he hasn't yet talked about in lecture, which to me has some teaching benefits but also some drawbacks, as at times I and other students were unsure or had trouble remembering what we were and weren't allowed to use. Dr. Mike lectures in a way such that you won't just memorize a bunch of names but actively understand the theory and reasoning behind functions and structures, and his exams reflect this as they contain theoretical questions in addition to the traditional writing and debugging of code.
There were no live lectures save the introductory one on the first day. This also had major benefits and drawbacks. It was nice to be able to rewind and pause when needed, but a major downside was that it was impossible to space out all the lectures so each scheduled day would have 110 minutes' worth of content. This resulted in some days having insanely short lectures while others would far surpass two hours. Likewise, the length of the weekly homeworks tended to vary significantly, and the busiest week overall (in my opinion) was the week of the midterm. However, I wouldn't blame this on poor scheduling by Dr. Mike, I think it was merely an unfortunate consequence of the weird summer schedule.
Your grade consists of one midterm (two hours), the final (three hours), a final project, weekly homework (graded on satisfactory completion), and participation on Campuswire. Dr. Mike actually canceled the final project for us since the last two weeks were somewhat crammed, especially with the Labor Day holiday. Don't be afraid to ask him for extra accommodation if you need it, he is a very understanding professor and will try to work out a solution for you.