David A Smallberg
Department of Computer Science
AD
4.1
Overall Rating
Based on 196 Users
Easiness 3.2 / 5 How easy the class is, 1 being extremely difficult and 5 being easy peasy.
Clarity 4.3 / 5 How clear the class is, 1 being extremely unclear and 5 being very clear.
Workload 3.0 / 5 How much workload the class is, 1 being extremely heavy and 5 being extremely light.
Helpfulness 4.0 / 5 How helpful the class is, 1 being not helpful at all and 5 being extremely helpful.

TOP TAGS

  • Would Take Again
GRADE DISTRIBUTIONS
30.4%
25.4%
20.3%
15.2%
10.1%
5.1%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

39.2%
32.7%
26.1%
19.6%
13.1%
6.5%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

31.3%
26.1%
20.9%
15.6%
10.4%
5.2%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

56.7%
47.2%
37.8%
28.3%
18.9%
9.4%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

71.0%
59.2%
47.3%
35.5%
23.7%
11.8%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

56.2%
46.8%
37.4%
28.1%
18.7%
9.4%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

36.2%
30.2%
24.1%
18.1%
12.1%
6.0%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

25.9%
21.6%
17.3%
13.0%
8.6%
4.3%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

44.7%
37.2%
29.8%
22.3%
14.9%
7.4%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

47.3%
39.4%
31.5%
23.7%
15.8%
7.9%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

27.0%
22.5%
18.0%
13.5%
9.0%
4.5%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

35.6%
29.7%
23.7%
17.8%
11.9%
5.9%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

22.9%
19.1%
15.3%
11.5%
7.6%
3.8%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

36.9%
30.8%
24.6%
18.5%
12.3%
6.2%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

27.7%
23.1%
18.5%
13.9%
9.2%
4.6%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

36.1%
30.1%
24.1%
18.0%
12.0%
6.0%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

24.1%
20.1%
16.1%
12.1%
8.0%
4.0%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

30.0%
25.0%
20.0%
15.0%
10.0%
5.0%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

20.7%
17.2%
13.8%
10.3%
6.9%
3.4%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

24.1%
20.1%
16.1%
12.1%
8.0%
4.0%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

26.8%
22.3%
17.8%
13.4%
8.9%
4.5%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

22.3%
18.6%
14.8%
11.1%
7.4%
3.7%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

23.5%
19.6%
15.6%
11.7%
7.8%
3.9%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

17.4%
14.5%
11.6%
8.7%
5.8%
2.9%
0.0%
A+
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F

Grade distributions are collected using data from the UCLA Registrar’s Office.

ENROLLMENT DISTRIBUTIONS
Clear marks

Sorry, no enrollment data is available.

AD

Reviews (136)

14 of 14
14 of 14
Add your review...
Quarter: N/A
Grade: N/A
Jan. 24, 2009

First of all, he looks and sounds like he could be Adam Goldberg's (the actor) dad. Anyway, Smallberg is really nice and funny(so nerdy)... He knows everything there is to know about C++ (if you go to his office, there are books stacked up everything on programming). He explains the concepts really well--the only problem I had was that his examples were much too simplistic compared to his projects, but that's really the only way you can teach it without getting too specific into a particular project (and then you would only know how to solve that one problem). He is really approachable, and if you go to his office/email him once he'll remember you (I went/emailed him multiple times).

As for grades, I had a very strong work ethic the entire time, starting projects ASAP. Unfortunately, I am really bad at it, so I would often waste 30 hours of my life a week for subpar grades (my average was maybe around 70%, but this was due to a couple very easy projects in the beginning). I failed the midterm (51%) and was looking at a C (as long as my grade on the final at least matched up with my midterm). For some reason, I understood the second half of the class better, though, because I earned some decent grades on the last few projects and scored an 82% on the final (top 25% of the class). So I ended up with a B-, which was about ten times better than I thought I would get! Then at the beginning of the next quarter I went to Smallberg's office to see the miracle that was my final, and after I returned it to him he noticed how much I had improved from my midterm (he remembered me) and told me that I had the most improvement from the midterm to the final in the class, so he would change my grade from a B- to a B!

Overall, Smallberg is a great professor and a really interesting and nice person.

Helpful?

0 0 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 20, 2008

Smallberg is a good prof., he explains stuff very well. lectures can be kind of boring, if you have prior programming experience, but even still you will most likely learn something new in every lecture. first few projects were really easy, but then it suddenly jumped to a mediocre/hard project that really threw off alot of people...

Helpful?

0 0 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 19, 2008

His lectures were pretty boring (as in uninteresting to me, not too easy). He's pretty good at explaining the concepts, but he explains simple things and then when you get to the projects you somehow have to put it all together and they are very complicated and time consuming. I didn't do well on the midterm or the final but somehow ended up with a decent grade.

I found the class very difficult due to having no prior programming experience whereas it seemed like most of the class did...I would not recommend taking this class without trying to learn some C++ first because otherwise you will find it HARD. After taking this class I no longer want to be a CS major. If you like programming then you'll probably be fine as long as you understand it and are willing to put the time into it, but I have discovered that I do not like programming at all and I am not good at it.

Helpful?

0 1 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 12, 2008

Having no prior programming knowledge, I was worried I would fall behind in this class. However, Smallberg is very good at explaining things (if slightly boring at times), and I was able to quickly pick it up. Smallberg is also very approachable and concerned about student learning (he once jumped up and down while telling us not to forget something in our code just to make sure we would remember).

Overall, the difficulty of the class really depends on your interest and natural skill. I thought it was fun and fairly easy, but I know many people who felt the opposite. The class is a mixture of time-consuming projects (40% of the grade), a midterm (25%), and the final (35%), with two-hour lectures Mondays and Wednesdays, and a two-hour discussion on Fridays.

There were 7 projects that were due throughout the quarter, usually with one to two weeks to do them. The projects start off quick and simple (at least when I look back on them) and get more difficult and time-consuming as the quarter goes on. Listen to Smallberg when he says to start these early (especially if you don't have much prior experience and don't know how long a program can take), and test your programs thoroughly (because he certainly will, and one missed character can mess up a program). Most projects also included a report. Don't blow them off; you can do the project perfectly, but if you screw up the report you won't get an A on it.

Both the midterm and the final were paper and pencil, but he allows 2 full sheets of paper with any writing you want on them. The midterm took place in class on Wednesday of Week 6. It was a mixture of "Write a program that does this", "Why won't this program do what it's supposed to", and "What will this program do?" What makes the midterm a bit hard is the fact that you're using pen and paper instead of a computer, so you can't test your programs as easily. So pay attention to the little things, and mentally test the programs step by step. The cumulative final was like the midterm, but more of it and a bit harder (obviously).

All in all, this isn't an easy A, but if you take it seriously (even if you had prior experience) and devote enough time to it, you can still get an A.

Helpful?

0 0 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 12, 2008

I've only had Smallberg for one (my first) quarter here at UCLA,
but I feel that my experiences in his CS31 class have given me
a decent picture of his style of teaching.

I'm a CS major, and had extensive programming experience throughout
high school in the form of APCS AB and a lot of external work
I did on a large-scale mod for Doom 3. I came into CS31 extremely
confident of my understanding and abilities -- too confident,
it turns out. If you have prior programming experience and develop
the initial impression that Smallberg's CS31 class will be a blow-off,
you're in for a tough time. For someone with previous experience
his lectures move at a snail's pace, but he is extremely thorough
and overall a very good teacher. If you have any misconceptions about
the material, you'll likely come out of lecture with a very solid
understanding.

That said, I was extremely overconfident. I didn't spend nearly
enough time on the first three or four projects and received crap
scores due to minor errors in my code combined with huge point
deductions due to me not taking the project reports seriously.
The midterm was equally bad -- I was surprised by the level of
difficulty of a few of the problems and ended up with a grade
only slightly above the mean. Once I got serious about the
projects, I received nearly perfect scores on them.
I did acceptably on the final, but not as well as I could have.
I ended up with a B in the class.

So, if you have prior programming experience and think that
CS31 is going to be a blow-off class (especially since
Smallberg's lectures move so slowly), you should learn from
my mistakes and get serious immediately.

Another thing: GO TO DISCUSSION. You'll get a good idea
of what will be emphasized on the exams this way. And the
TA's often drop little hints about the projects which
can come in handy in deciphering various details of the
somewhat ambiguous project specifications.

Helpful?

0 0 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 3, 2008

I was okay with computer science before, when I did java in high school. I didn't love it, but it was fine, as I always liked subjects that required analysis and deep thought regarding the situation.

But this class was horrible. It is EXTREMELY time consuming, and all I did the quarter was computer science. I only took 2 other classes, and it's a relief that I did. All I would do during the week was work on my program, and would have to walk 40 min back and forth from the TA office hours whenever I needed help. I don't think I am as stupid as this course made me out to be, but even with all this work, I got an average of 50% on the projects.

To boot, I got a TA that did not help me much. Whenever I would ask a question, he would act like I was supposed to already know this stuff, and give me very confusing answers that would lead me nowhere.

I think Smallberg is a pretty nice guy, not aiming to give his students a hard time or anything, but his lectures are somewhat confusing and very boring, maybe either possibly leading to the other.

Helpful?

0 0 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Jan. 24, 2009

First of all, he looks and sounds like he could be Adam Goldberg's (the actor) dad. Anyway, Smallberg is really nice and funny(so nerdy)... He knows everything there is to know about C++ (if you go to his office, there are books stacked up everything on programming). He explains the concepts really well--the only problem I had was that his examples were much too simplistic compared to his projects, but that's really the only way you can teach it without getting too specific into a particular project (and then you would only know how to solve that one problem). He is really approachable, and if you go to his office/email him once he'll remember you (I went/emailed him multiple times).

As for grades, I had a very strong work ethic the entire time, starting projects ASAP. Unfortunately, I am really bad at it, so I would often waste 30 hours of my life a week for subpar grades (my average was maybe around 70%, but this was due to a couple very easy projects in the beginning). I failed the midterm (51%) and was looking at a C (as long as my grade on the final at least matched up with my midterm). For some reason, I understood the second half of the class better, though, because I earned some decent grades on the last few projects and scored an 82% on the final (top 25% of the class). So I ended up with a B-, which was about ten times better than I thought I would get! Then at the beginning of the next quarter I went to Smallberg's office to see the miracle that was my final, and after I returned it to him he noticed how much I had improved from my midterm (he remembered me) and told me that I had the most improvement from the midterm to the final in the class, so he would change my grade from a B- to a B!

Overall, Smallberg is a great professor and a really interesting and nice person.

Helpful?

0 0 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 20, 2008

Smallberg is a good prof., he explains stuff very well. lectures can be kind of boring, if you have prior programming experience, but even still you will most likely learn something new in every lecture. first few projects were really easy, but then it suddenly jumped to a mediocre/hard project that really threw off alot of people...

Helpful?

0 0 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 19, 2008

His lectures were pretty boring (as in uninteresting to me, not too easy). He's pretty good at explaining the concepts, but he explains simple things and then when you get to the projects you somehow have to put it all together and they are very complicated and time consuming. I didn't do well on the midterm or the final but somehow ended up with a decent grade.

I found the class very difficult due to having no prior programming experience whereas it seemed like most of the class did...I would not recommend taking this class without trying to learn some C++ first because otherwise you will find it HARD. After taking this class I no longer want to be a CS major. If you like programming then you'll probably be fine as long as you understand it and are willing to put the time into it, but I have discovered that I do not like programming at all and I am not good at it.

Helpful?

0 1 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 12, 2008

Having no prior programming knowledge, I was worried I would fall behind in this class. However, Smallberg is very good at explaining things (if slightly boring at times), and I was able to quickly pick it up. Smallberg is also very approachable and concerned about student learning (he once jumped up and down while telling us not to forget something in our code just to make sure we would remember).

Overall, the difficulty of the class really depends on your interest and natural skill. I thought it was fun and fairly easy, but I know many people who felt the opposite. The class is a mixture of time-consuming projects (40% of the grade), a midterm (25%), and the final (35%), with two-hour lectures Mondays and Wednesdays, and a two-hour discussion on Fridays.

There were 7 projects that were due throughout the quarter, usually with one to two weeks to do them. The projects start off quick and simple (at least when I look back on them) and get more difficult and time-consuming as the quarter goes on. Listen to Smallberg when he says to start these early (especially if you don't have much prior experience and don't know how long a program can take), and test your programs thoroughly (because he certainly will, and one missed character can mess up a program). Most projects also included a report. Don't blow them off; you can do the project perfectly, but if you screw up the report you won't get an A on it.

Both the midterm and the final were paper and pencil, but he allows 2 full sheets of paper with any writing you want on them. The midterm took place in class on Wednesday of Week 6. It was a mixture of "Write a program that does this", "Why won't this program do what it's supposed to", and "What will this program do?" What makes the midterm a bit hard is the fact that you're using pen and paper instead of a computer, so you can't test your programs as easily. So pay attention to the little things, and mentally test the programs step by step. The cumulative final was like the midterm, but more of it and a bit harder (obviously).

All in all, this isn't an easy A, but if you take it seriously (even if you had prior experience) and devote enough time to it, you can still get an A.

Helpful?

0 0 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 12, 2008

I've only had Smallberg for one (my first) quarter here at UCLA,
but I feel that my experiences in his CS31 class have given me
a decent picture of his style of teaching.

I'm a CS major, and had extensive programming experience throughout
high school in the form of APCS AB and a lot of external work
I did on a large-scale mod for Doom 3. I came into CS31 extremely
confident of my understanding and abilities -- too confident,
it turns out. If you have prior programming experience and develop
the initial impression that Smallberg's CS31 class will be a blow-off,
you're in for a tough time. For someone with previous experience
his lectures move at a snail's pace, but he is extremely thorough
and overall a very good teacher. If you have any misconceptions about
the material, you'll likely come out of lecture with a very solid
understanding.

That said, I was extremely overconfident. I didn't spend nearly
enough time on the first three or four projects and received crap
scores due to minor errors in my code combined with huge point
deductions due to me not taking the project reports seriously.
The midterm was equally bad -- I was surprised by the level of
difficulty of a few of the problems and ended up with a grade
only slightly above the mean. Once I got serious about the
projects, I received nearly perfect scores on them.
I did acceptably on the final, but not as well as I could have.
I ended up with a B in the class.

So, if you have prior programming experience and think that
CS31 is going to be a blow-off class (especially since
Smallberg's lectures move so slowly), you should learn from
my mistakes and get serious immediately.

Another thing: GO TO DISCUSSION. You'll get a good idea
of what will be emphasized on the exams this way. And the
TA's often drop little hints about the projects which
can come in handy in deciphering various details of the
somewhat ambiguous project specifications.

Helpful?

0 0 Please log in to provide feedback.
Quarter: N/A
Grade: N/A
Dec. 3, 2008

I was okay with computer science before, when I did java in high school. I didn't love it, but it was fine, as I always liked subjects that required analysis and deep thought regarding the situation.

But this class was horrible. It is EXTREMELY time consuming, and all I did the quarter was computer science. I only took 2 other classes, and it's a relief that I did. All I would do during the week was work on my program, and would have to walk 40 min back and forth from the TA office hours whenever I needed help. I don't think I am as stupid as this course made me out to be, but even with all this work, I got an average of 50% on the projects.

To boot, I got a TA that did not help me much. Whenever I would ask a question, he would act like I was supposed to already know this stuff, and give me very confusing answers that would lead me nowhere.

I think Smallberg is a pretty nice guy, not aiming to give his students a hard time or anything, but his lectures are somewhat confusing and very boring, maybe either possibly leading to the other.

Helpful?

0 0 Please log in to provide feedback.
14 of 14
4.1
Overall Rating
Based on 196 Users
Easiness 3.2 / 5 How easy the class is, 1 being extremely difficult and 5 being easy peasy.
Clarity 4.3 / 5 How clear the class is, 1 being extremely unclear and 5 being very clear.
Workload 3.0 / 5 How much workload the class is, 1 being extremely heavy and 5 being extremely light.
Helpfulness 4.0 / 5 How helpful the class is, 1 being not helpful at all and 5 being extremely helpful.

TOP TAGS

  • Would Take Again
    (77)
ADS

Adblock Detected

Bruinwalk is an entirely Daily Bruin-run service brought to you for free. We hate annoying ads just as much as you do, but they help keep our lights on. We promise to keep our ads as relevant for you as possible, so please consider disabling your ad-blocking software while using this site.

Thank you for supporting us!