Professor

David Smallberg

AD
3.9
Overall Ratings
Based on 413 Users
Easiness 2.8 / 5 How easy the class is, 1 being extremely difficult and 5 being easy peasy.
Workload 2.6 / 5 How light the workload is, 1 being extremely heavy and 5 being extremely light.
Clarity 4.1 / 5 How clear the professor is, 1 being extremely unclear and 5 being very clear.
Helpfulness 3.8 / 5 How helpful the professor is, 1 being not helpful at all and 5 being extremely helpful.

Reviews (413)

4 of 30
4 of 30
Add your review...
COM SCI 32
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Oct. 25, 2020
Quarter: Spring 2020
Grade: A

---Lectures: Smallberg's lectures provided all the necessary information, but they were not always super clear. Lectures were often not super organized and not very engaging.
---Exams: I took this class during online classes so exams were different than there normally would be. Both midterms and the final were only a few questions long, but they usually weren't too hard.

---Projects: The project descriptions were not always easy to follow, but the professor and TAs will clarify everything. None were unreasonably hard, and all were graded reasonably. Some of the later projects do take a lot of time and are not something you can cram in a couple days.

---Tips: Google "Carey Nachenberg CS32". You'll find animated slides for CS32 that are extremely helpful. Go to office hours whenever you are working on a project: it will save you a ton of time and frustration.

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Jan. 3, 2021
Quarter: Fall 2020
Grade: A

tl;dr: yeah take this class

Doesn't smallberg already have like 69420 reviews lol. Smallberg is fine, he taught well enough that you don't really need to go to discussions. (Most ppl skip discussions).

Tbh if you already took ap cs (and remember it), this class is a breeze and mainly review. There are like 2 midterms and a final if im not mistaken, all of which ask you to write a small piece of code. Timing is decent, although if you havent taken apcs, you might run out of time. If you have, then you could probably finish the tests in like 1/2 of the time. Not really any hwk, just projects assigned every 1 or 2 weeks. Each project takes anywhere from 1 hr to 8 hrs to do, but you have a week to do it so its manageable.

If you're a cs major, youre probably required to take this class anyways so just take it w/ smallberg.
if you're not a cs major, you should still take it if you wanna learn an intro to programming. (although maybe consider cs30 if you have 0 prior experience)

my only concerns is that my TA graded all of our stuff, and lowkey he was kinda picky. But after the first few projects, you know what your TA is looking for so its fine after that.

If youre reading this and this helped you out, pls review ur profs!! itll help us all out uwu

Helpful?

1 0 Please log in to provide feedback.
June 19, 2022
Quarter: Spring 2022
Grade: A

Professor Smallberg is my god!!!!!

Helpful?

1 0 Please log in to provide feedback.
March 30, 2020
Quarter: Winter 2020
Grade: A

Smallberg was an absolutely phenomenal professor for this class. Rarely do you find a teacher who is so skilled at explaining complex concepts in a simple fashion using real life examples. While many people recommend attending Nachenberg's lecture, I actually really enjoyed Smallberg's lecture since he often explained the reasoning behind C++ design decisions and dove deeper into specific topics. While attending Smallberg's lectures, it is still good to look over Nachenberg's slides since they do a great job of boiling everything down into a visual picture of what is happening.

The projects in this class can take up a ton of time if you are new to programming, however if you have prior experience they're really not that difficult (although still time consuming due to size). Rarely in classes have I looked forward to doing projects, however the CS32 projects are so well designed that they really allow you to test your abilities while building something fun like a game. The best advice I can give for the projects is START EARLY (especially if you do not have much coding experience). This will allow you to take time to learn along the way and not stress yourself out. Getting a 50+ page spec for Project 3 can be daunting, but if you simply start early and take it one part at a time, you will do fine.

The exams for this class were all very fair. Doing the projects and reviewing Nach's slides were the best way to prep.

If you are doubting taking this class, it can be a lot of work, but it is 100% worth it and you will learn a ton from a professor who is very knowledgeable and really cares about his students.

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Dec. 19, 2020
Quarter: Fall 2020
Grade: A

Professor Smallberg is an excellent lecturer and did a fantastic job running this course online. This quarter, he used a sort of "flipped classroom" approach. Before each lecture session, we listened to a lecture video I believe he recorded last spring on a particular CS 31 topic. During the actual lecture, Professor Smallberg took questions from students regarding the lecture video, helping to clarify any misconceptions and providing additional insights on the lecture material. I really prefer this method, as it's much easier to come up with questions this way.

Grading scheme this quarter:
66 % projects (7 in total)
7% zyBook homework assignments
2% short "responsibility assignments"
5 % midterm 1
8 % midterm 2
12 % final

The projects were a bit time consuming (especially Projects 3 and 5), but were not too difficult. Smallberg's project specs are extremely clear and left me with no lingering questions. I actually spent a lot more time testing my programs and coming up with test cases than the actual coding. Make sure to spend quality time testing your program, especially with the random edge cases (ex: negative or zero array size). This quarter's project averages were extremely high (many of them had a median score of above 95).

The exams this quarter were all open-compiler and consisted mainly of writing code. The midterms were very easy, and the final was a bit harder but not overly difficult. Professor Smallberg takes some time to grade exams (I still haven't received my midterm 2 and final scores yet). Hopefully they will come out soon. Note that the grade I entered for this review is the grade I predict I will get, as final grades haven't come out yet.

Overall, Smallberg's teaching is super clear and thorough and he makes this class very well organized. Definitely would recommend.

Helpful?

1 0 Please log in to provide feedback.
Dec. 28, 2023
Quarter: Fall 2023
Grade: A

Prof Smallberg does flipped learning, so you watch his recorded lectures as homework (probably on 2x because they're usually 70-90 minutes long), and then come to his live lecture to ask questions if you have any (also Zoomed and recorded). So, after the first week of class, the lecture hall is probably around 15% filled. I attended a little under half of the live Q&A sessions (had conflicts the other times because of personal reasons), but I either joined on Zoom or watched the recordings for the rest of them, which I'd say wasn't really necessary for someone who didn't have questions, but I figured might as well let it play in the background while working on a project. So while Q&As can be still considered optional, definitely watch the recorded lectures and make it a habit so you don't get more than maybe a week behind on it because it will drag on and on unless for some reason you think you're super comfortable with C++ already in which case you should still just watch them anyway. There's no slides or anything, so you just have to rely on your own notes when you go back to study before an exam. Flipped learning requires accountability on your part, but I think I preferred it this way because it made my schedule more flexible for other things.

Discussion section was alright for me. We had an ungraded worksheet to work on every week to review the concepts we covered, which was useful, but didn't make that much of a difference for me.

The main things you get graded on are the projects and the tests. I found the tests incredibly straightforward and based off the lectures, so as long as you understand what's covered there, you're set for the tests content-wise. The projects are probably what takes up most of your effort in the course, and have varying levels of difficulty, but I didn't find them particularly challenging (though for context, I had many years of programming experience before this class, just not in C++), though they can take a while so definitely start early. And also, make sure to read the write-ups thoroughly because as Smallberg likes to laud, the project specs and associated FAQs usually covered my misconceptions and bugs when I was working on any projects.

I think the biggest determinant of success in this course is attention to detail. Pay attention to everything and double and triple check everything especially on exams because small mistakes can cost a lot. Same for projects, but I'd assume that would be more built in and intuitive as to how doing the assignment works.

There's an $89 online textbook that you have to purchase called a zyBook, because it's linked to online assignments that count toward your grade. It didn't do much to supplement my learning, but I wouldn't have minded reading it and doing its assignments if the book hadn't been so expensive, dammit. Least favorite part.

Smallberg himself is hilarious. He really emphasizes the attention-to-detail part and will be pretty snarky when people ask him stuff he's already answered in the project spec or other write-up on the CS 31 website, but I find it funny and also fair. With that being said, don't be afraid to ask him stuff, whether about the content or about stuff that's affecting how you're doing in the course, because while you think you can mentally parrot off his response about being responsible and doing things on time or whatnot, it never hurts to ask, and he's a pretty reasonable professor. The CS 31 classes are mostly unified regardless of your professor, but overall, I enjoyed taking this class with Smallberg.

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
April 12, 2021
Quarter: Spring 2020
Grade: P

SMALLBERG. This class was easily the toughest I've taken thus far, and really made me miserable but was also the reason I completely switched my major and am on the path to become a software engineer. He will make you suffer, but in the way that makes you feel so proud of yourself in the end and one million time smarter. He makes CS something that anybody can learn, but also makes you your best version of yourself as a student. His sarcastic and slightly angry demeanor(raging about the many common mistakes of past students) is hilarious and enjoyable to watch. Thank you Smallberg, you are one hell of a teacher!

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
June 22, 2021
Quarter: Spring 2021
Grade: A

This professor is a mess. Grades were due, and we still did not receive midterm1, midterm2, or the final scores. A lot of students don't even know how they even got their grades since these scores were never given. In addition, professor returned our projects 4 weeks after the TA finished grading. I really don't know why he delays giving our assignments back, but he did it a lot ...

Helpful?

1 0 Please log in to provide feedback.
Dec. 25, 2019
Quarter: Fall 2019
Grade: A

Professor is extremely knowledgeable. He we’ll be able to answer nearly anything you throw at him.

Unfortunately the lectures do tend to be boring and it’s difficult to stay focused for 2 hours.

If you have prior programming experience, this is fine since you can kind of half pay attention to the lectures and soak up what you need for C++, and ask questions if you have any. Personally I had no C++ experience before (mainly prefer Python) but I still got what I needed from showing up to about 60-70% of the lectures and looking at online materials.

If you don’t have prior programming experience, I don’t recommend taking this course. You will either do poorly or have to spend way more time than you’d want to, or both.

Helpful?

1 0 Please log in to provide feedback.
June 25, 2023
Quarter: Spring 2023
Grade: NR

Honestly, I really don’t get it. He’s great at explaining concepts but the workload of the class is ridiculous. The grading is abysmally slow; you have no idea what your grade is in the class. If you are like me and just trying to get this pre req out of the way, this class will be a pain. I really don’t understand why the grading is slow because there is like 15 TA’s and to be honest there is automated grading involved for projects and most parts of hw. Furthermore, a lot of projects and hw are reused so I am not really sure why the turn around is ridiculous. I see the class size is rather large, but does it really take that long to the point you have only a third of the material graded by the time you take the final. How is somebody supposed to get real time feedback before testing to prepare. The answer in this class is that you don’t. In terms of communicating, Smallberg is hit or miss. He was pretty hard to communicate via email. I will iterate he does explain concepts well, but you are tested practically; for this reason, Nachenberg slides seem to be more beneficial because ultimately with the amount of time this class consumes its really just a hail mary in the last three weeks of how well you can try to get your head around the things you learn and can do with the time you have. I would say this was a hard class especially if you are introduced to data structures for the first time. You will definitely learn, but you will probably cry a couple times from this class.

Helpful?

1 0 Please log in to provide feedback.
COM SCI 32
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Spring 2020
Grade: A
Oct. 25, 2020

---Lectures: Smallberg's lectures provided all the necessary information, but they were not always super clear. Lectures were often not super organized and not very engaging.
---Exams: I took this class during online classes so exams were different than there normally would be. Both midterms and the final were only a few questions long, but they usually weren't too hard.

---Projects: The project descriptions were not always easy to follow, but the professor and TAs will clarify everything. None were unreasonably hard, and all were graded reasonably. Some of the later projects do take a lot of time and are not something you can cram in a couple days.

---Tips: Google "Carey Nachenberg CS32". You'll find animated slides for CS32 that are extremely helpful. Go to office hours whenever you are working on a project: it will save you a ton of time and frustration.

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Fall 2020
Grade: A
Jan. 3, 2021

tl;dr: yeah take this class

Doesn't smallberg already have like 69420 reviews lol. Smallberg is fine, he taught well enough that you don't really need to go to discussions. (Most ppl skip discussions).

Tbh if you already took ap cs (and remember it), this class is a breeze and mainly review. There are like 2 midterms and a final if im not mistaken, all of which ask you to write a small piece of code. Timing is decent, although if you havent taken apcs, you might run out of time. If you have, then you could probably finish the tests in like 1/2 of the time. Not really any hwk, just projects assigned every 1 or 2 weeks. Each project takes anywhere from 1 hr to 8 hrs to do, but you have a week to do it so its manageable.

If you're a cs major, youre probably required to take this class anyways so just take it w/ smallberg.
if you're not a cs major, you should still take it if you wanna learn an intro to programming. (although maybe consider cs30 if you have 0 prior experience)

my only concerns is that my TA graded all of our stuff, and lowkey he was kinda picky. But after the first few projects, you know what your TA is looking for so its fine after that.

If youre reading this and this helped you out, pls review ur profs!! itll help us all out uwu

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
Quarter: Spring 2022
Grade: A
June 19, 2022

Professor Smallberg is my god!!!!!

Helpful?

1 0 Please log in to provide feedback.
COM SCI 32
Quarter: Winter 2020
Grade: A
March 30, 2020

Smallberg was an absolutely phenomenal professor for this class. Rarely do you find a teacher who is so skilled at explaining complex concepts in a simple fashion using real life examples. While many people recommend attending Nachenberg's lecture, I actually really enjoyed Smallberg's lecture since he often explained the reasoning behind C++ design decisions and dove deeper into specific topics. While attending Smallberg's lectures, it is still good to look over Nachenberg's slides since they do a great job of boiling everything down into a visual picture of what is happening.

The projects in this class can take up a ton of time if you are new to programming, however if you have prior experience they're really not that difficult (although still time consuming due to size). Rarely in classes have I looked forward to doing projects, however the CS32 projects are so well designed that they really allow you to test your abilities while building something fun like a game. The best advice I can give for the projects is START EARLY (especially if you do not have much coding experience). This will allow you to take time to learn along the way and not stress yourself out. Getting a 50+ page spec for Project 3 can be daunting, but if you simply start early and take it one part at a time, you will do fine.

The exams for this class were all very fair. Doing the projects and reviewing Nach's slides were the best way to prep.

If you are doubting taking this class, it can be a lot of work, but it is 100% worth it and you will learn a ton from a professor who is very knowledgeable and really cares about his students.

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Fall 2020
Grade: A
Dec. 19, 2020

Professor Smallberg is an excellent lecturer and did a fantastic job running this course online. This quarter, he used a sort of "flipped classroom" approach. Before each lecture session, we listened to a lecture video I believe he recorded last spring on a particular CS 31 topic. During the actual lecture, Professor Smallberg took questions from students regarding the lecture video, helping to clarify any misconceptions and providing additional insights on the lecture material. I really prefer this method, as it's much easier to come up with questions this way.

Grading scheme this quarter:
66 % projects (7 in total)
7% zyBook homework assignments
2% short "responsibility assignments"
5 % midterm 1
8 % midterm 2
12 % final

The projects were a bit time consuming (especially Projects 3 and 5), but were not too difficult. Smallberg's project specs are extremely clear and left me with no lingering questions. I actually spent a lot more time testing my programs and coming up with test cases than the actual coding. Make sure to spend quality time testing your program, especially with the random edge cases (ex: negative or zero array size). This quarter's project averages were extremely high (many of them had a median score of above 95).

The exams this quarter were all open-compiler and consisted mainly of writing code. The midterms were very easy, and the final was a bit harder but not overly difficult. Professor Smallberg takes some time to grade exams (I still haven't received my midterm 2 and final scores yet). Hopefully they will come out soon. Note that the grade I entered for this review is the grade I predict I will get, as final grades haven't come out yet.

Overall, Smallberg's teaching is super clear and thorough and he makes this class very well organized. Definitely would recommend.

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
Quarter: Fall 2023
Grade: A
Dec. 28, 2023

Prof Smallberg does flipped learning, so you watch his recorded lectures as homework (probably on 2x because they're usually 70-90 minutes long), and then come to his live lecture to ask questions if you have any (also Zoomed and recorded). So, after the first week of class, the lecture hall is probably around 15% filled. I attended a little under half of the live Q&A sessions (had conflicts the other times because of personal reasons), but I either joined on Zoom or watched the recordings for the rest of them, which I'd say wasn't really necessary for someone who didn't have questions, but I figured might as well let it play in the background while working on a project. So while Q&As can be still considered optional, definitely watch the recorded lectures and make it a habit so you don't get more than maybe a week behind on it because it will drag on and on unless for some reason you think you're super comfortable with C++ already in which case you should still just watch them anyway. There's no slides or anything, so you just have to rely on your own notes when you go back to study before an exam. Flipped learning requires accountability on your part, but I think I preferred it this way because it made my schedule more flexible for other things.

Discussion section was alright for me. We had an ungraded worksheet to work on every week to review the concepts we covered, which was useful, but didn't make that much of a difference for me.

The main things you get graded on are the projects and the tests. I found the tests incredibly straightforward and based off the lectures, so as long as you understand what's covered there, you're set for the tests content-wise. The projects are probably what takes up most of your effort in the course, and have varying levels of difficulty, but I didn't find them particularly challenging (though for context, I had many years of programming experience before this class, just not in C++), though they can take a while so definitely start early. And also, make sure to read the write-ups thoroughly because as Smallberg likes to laud, the project specs and associated FAQs usually covered my misconceptions and bugs when I was working on any projects.

I think the biggest determinant of success in this course is attention to detail. Pay attention to everything and double and triple check everything especially on exams because small mistakes can cost a lot. Same for projects, but I'd assume that would be more built in and intuitive as to how doing the assignment works.

There's an $89 online textbook that you have to purchase called a zyBook, because it's linked to online assignments that count toward your grade. It didn't do much to supplement my learning, but I wouldn't have minded reading it and doing its assignments if the book hadn't been so expensive, dammit. Least favorite part.

Smallberg himself is hilarious. He really emphasizes the attention-to-detail part and will be pretty snarky when people ask him stuff he's already answered in the project spec or other write-up on the CS 31 website, but I find it funny and also fair. With that being said, don't be afraid to ask him stuff, whether about the content or about stuff that's affecting how you're doing in the course, because while you think you can mentally parrot off his response about being responsible and doing things on time or whatnot, it never hurts to ask, and he's a pretty reasonable professor. The CS 31 classes are mostly unified regardless of your professor, but overall, I enjoyed taking this class with Smallberg.

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Spring 2020
Grade: P
April 12, 2021

SMALLBERG. This class was easily the toughest I've taken thus far, and really made me miserable but was also the reason I completely switched my major and am on the path to become a software engineer. He will make you suffer, but in the way that makes you feel so proud of yourself in the end and one million time smarter. He makes CS something that anybody can learn, but also makes you your best version of yourself as a student. His sarcastic and slightly angry demeanor(raging about the many common mistakes of past students) is hilarious and enjoyable to watch. Thank you Smallberg, you are one hell of a teacher!

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Spring 2021
Grade: A
June 22, 2021

This professor is a mess. Grades were due, and we still did not receive midterm1, midterm2, or the final scores. A lot of students don't even know how they even got their grades since these scores were never given. In addition, professor returned our projects 4 weeks after the TA finished grading. I really don't know why he delays giving our assignments back, but he did it a lot ...

Helpful?

1 0 Please log in to provide feedback.
COM SCI 31
Quarter: Fall 2019
Grade: A
Dec. 25, 2019

Professor is extremely knowledgeable. He we’ll be able to answer nearly anything you throw at him.

Unfortunately the lectures do tend to be boring and it’s difficult to stay focused for 2 hours.

If you have prior programming experience, this is fine since you can kind of half pay attention to the lectures and soak up what you need for C++, and ask questions if you have any. Personally I had no C++ experience before (mainly prefer Python) but I still got what I needed from showing up to about 60-70% of the lectures and looking at online materials.

If you don’t have prior programming experience, I don’t recommend taking this course. You will either do poorly or have to spend way more time than you’d want to, or both.

Helpful?

1 0 Please log in to provide feedback.
COM SCI 32
Quarter: Spring 2023
Grade: NR
June 25, 2023

Honestly, I really don’t get it. He’s great at explaining concepts but the workload of the class is ridiculous. The grading is abysmally slow; you have no idea what your grade is in the class. If you are like me and just trying to get this pre req out of the way, this class will be a pain. I really don’t understand why the grading is slow because there is like 15 TA’s and to be honest there is automated grading involved for projects and most parts of hw. Furthermore, a lot of projects and hw are reused so I am not really sure why the turn around is ridiculous. I see the class size is rather large, but does it really take that long to the point you have only a third of the material graded by the time you take the final. How is somebody supposed to get real time feedback before testing to prepare. The answer in this class is that you don’t. In terms of communicating, Smallberg is hit or miss. He was pretty hard to communicate via email. I will iterate he does explain concepts well, but you are tested practically; for this reason, Nachenberg slides seem to be more beneficial because ultimately with the amount of time this class consumes its really just a hail mary in the last three weeks of how well you can try to get your head around the things you learn and can do with the time you have. I would say this was a hard class especially if you are introduced to data structures for the first time. You will definitely learn, but you will probably cry a couple times from this class.

Helpful?

1 0 Please log in to provide feedback.
4 of 30
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!