- Home
- Search
- David A Smallberg
- COM SCI 31
AD
Based on 222 Users
TOP TAGS
There are no relevant tags for this professor yet.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Grade distributions are collected using data from the UCLA Registrar’s Office.
Sorry, no enrollment data is available.
AD
Projects 1 and 2 are very simple and straightforward. Project 3 is a huge jump and was the hardest project for me. Project 4 is tricky, 5 is straight forward, 6 is basically a homework problem set, and 7 just takes a little more time than 5 and 6. It's easy to get perfect scores if you spend time testing your project and fixing every error. Midterms are easy-- just don't make simple mistakes. The final was slightly harder, but if you know what you're doing it's fairly straightforward. Overall, the class should be a breeze if you put your time into projects and study for tests. It's a straightforward class. If you struggle in CS31, you should reconsider your major!
I had APCS experience prior to taking the class which made it a breeze. Only new concept introduced for C++ for me was pointers which is covered in the last 2 weeks or so. Start early on projects because sometimes it looks easy but takes forever to debug and account for every test case. Make sure to carefully read and reread through the project specs because all the requirements are outlined but some can be easily missed, costing correctness points for random edge cases like n=0 that you didn't incorporate.
Midterm is easy in that you just write and read through code. Be sure to double check the multiple choice questions though because mistracing even a single line of code can cost you a huge percentage on the midterm.
Final was much more difficult for me as it included more specific knowledge about very specific errors and variable types. For example, knowing whether accessing a null pointer creates a runtime error or doesn't compile. Just knowing how to trace through correct code isn't enough because often the code doesn't make sense but you have to know what the compiler does in that scenario.
All in all, great class, Smallberg's lectures cover the material well so you are in good hands.
Smallberg is a good professor, but if you don't have APCS experience, or minimal to no experience with CS in a classroom environment, with projects and such, I recommend taking CS97 because the CS31 projects and tests were rather difficult and I got a C in the class while most of my peers were getting As on the tests and projects. I regret not taking CS97 because my GPA is kind of tanked because of this, and even if CS97 is too easy for you, worst case, you'll get an A, or you can always switch out. In retrospect, I should have done more practice problems or prepared more over the summer, but CS97 was probably the better choice.
I came in with about a year of prior coding experience and some minor C++ experience. The work was very manageable for my prior experience. If you're coming into the class with just experience from APCS, you should be more than fine. If you're coming in with less experience than that, you should still be fine if you put the work in. Smallberg is a good professor. His teaching style is a little hit or miss for people. For many of the classes, you'll be following along with him as he writes a program. He'll go through the thought process behind each step start to finish and it can be very helpful. Other times it can feel slow and repetitive. Overall, he was a great cs professor.
Lectures are helpful and appropriately paced, and the professor is very helpful. However, I recommend that beginners to programming take CS97 instead. I'm a business economics major and took this class because I was interested in programming. However, I'm now looking at a C or D in this class as the projects were very time-consuming and my classmates did extremely well (the median is usually 95 or above).
As in any solid computer science class, this class definitely has a homework load, but it really isn’t bad, considering. It’s also not easy, but nothing worthwhile is ever a piece of cake. Professor Smallberg is fun, chatty, helpful, and he definitely has a sense of humor. I would definitely recommend this class (but if you’re a CS/E major, you’ve got to take it regardless!).
CS31 with Smallberg is just a fantastic class. He puts a lot of effort into all the material and projects to keep it engaging. The projects do take a lot of times (I think I spent ~10 hours on some of the hardest ones) but as long as you keep looking back at the specifications to make sure you're getting all the details right, they're not too difficult. Just don't start late, so many people who drop or do poorly start the projects too late the day of and don't finish in time. Overall this is one of my favorite classes I've had here. You learn so much!
Projects 1 and 2 are very simple and straightforward. Project 3 is a huge jump and was the hardest project for me. Project 4 is tricky, 5 is straight forward, 6 is basically a homework problem set, and 7 just takes a little more time than 5 and 6. It's easy to get perfect scores if you spend time testing your project and fixing every error. Midterms are easy-- just don't make simple mistakes. The final was slightly harder, but if you know what you're doing it's fairly straightforward. Overall, the class should be a breeze if you put your time into projects and study for tests. It's a straightforward class. If you struggle in CS31, you should reconsider your major!
I had APCS experience prior to taking the class which made it a breeze. Only new concept introduced for C++ for me was pointers which is covered in the last 2 weeks or so. Start early on projects because sometimes it looks easy but takes forever to debug and account for every test case. Make sure to carefully read and reread through the project specs because all the requirements are outlined but some can be easily missed, costing correctness points for random edge cases like n=0 that you didn't incorporate.
Midterm is easy in that you just write and read through code. Be sure to double check the multiple choice questions though because mistracing even a single line of code can cost you a huge percentage on the midterm.
Final was much more difficult for me as it included more specific knowledge about very specific errors and variable types. For example, knowing whether accessing a null pointer creates a runtime error or doesn't compile. Just knowing how to trace through correct code isn't enough because often the code doesn't make sense but you have to know what the compiler does in that scenario.
All in all, great class, Smallberg's lectures cover the material well so you are in good hands.
Smallberg is a good professor, but if you don't have APCS experience, or minimal to no experience with CS in a classroom environment, with projects and such, I recommend taking CS97 because the CS31 projects and tests were rather difficult and I got a C in the class while most of my peers were getting As on the tests and projects. I regret not taking CS97 because my GPA is kind of tanked because of this, and even if CS97 is too easy for you, worst case, you'll get an A, or you can always switch out. In retrospect, I should have done more practice problems or prepared more over the summer, but CS97 was probably the better choice.
I came in with about a year of prior coding experience and some minor C++ experience. The work was very manageable for my prior experience. If you're coming into the class with just experience from APCS, you should be more than fine. If you're coming in with less experience than that, you should still be fine if you put the work in. Smallberg is a good professor. His teaching style is a little hit or miss for people. For many of the classes, you'll be following along with him as he writes a program. He'll go through the thought process behind each step start to finish and it can be very helpful. Other times it can feel slow and repetitive. Overall, he was a great cs professor.
Lectures are helpful and appropriately paced, and the professor is very helpful. However, I recommend that beginners to programming take CS97 instead. I'm a business economics major and took this class because I was interested in programming. However, I'm now looking at a C or D in this class as the projects were very time-consuming and my classmates did extremely well (the median is usually 95 or above).
As in any solid computer science class, this class definitely has a homework load, but it really isn’t bad, considering. It’s also not easy, but nothing worthwhile is ever a piece of cake. Professor Smallberg is fun, chatty, helpful, and he definitely has a sense of humor. I would definitely recommend this class (but if you’re a CS/E major, you’ve got to take it regardless!).
CS31 with Smallberg is just a fantastic class. He puts a lot of effort into all the material and projects to keep it engaging. The projects do take a lot of times (I think I spent ~10 hours on some of the hardest ones) but as long as you keep looking back at the specifications to make sure you're getting all the details right, they're not too difficult. Just don't start late, so many people who drop or do poorly start the projects too late the day of and don't finish in time. Overall this is one of my favorite classes I've had here. You learn so much!
Based on 222 Users
TOP TAGS
There are no relevant tags for this professor yet.