Based on 11 Users
Grade distributions are collected using data from the UCLA Registrar’s Office.
Firstly, I definitely learned so much in this class. Professor Ambrosio is truly an amazing professor and person, always open to helping students no matter what the question is, extremely patient, and very knowledgable about CS and the industry. He had a Piazza on top of office hours and contacting him through email, all of which he would reply within 24 hours, and majority of the time just a few hours after you asked the question. He even answered questions on the weekends and treated the weekends like normal school days. Projects, Assignments, and Tests are returned to you in a week, and a lot of the time he starts grading them the day you turned them in. (Although this will probably change since he has a kid on the way!) CS 32 is an insanely tough class, and I feel that the Professor definitely knows that and wants to see everyone, no matter what level you are at with CS, succeed.
I'm sure it would be very different story and the class would definitely be manageable for someone who is familiar with coding big programs and these concepts. However, this class was so time consuming and extremely hard for someone like me who was learning concepts like recursion, inheritance, polymorphism, classes for the first time. Because the class moved so fast, starting around a third of the way into the class, it constantly felt like there was a big test or big project due in a few days. Because of this, I felt like I could barely understand the concepts fully before I had to work on the "next big thing". Towards the end of the session, right about when you finish taking Midterm 2, you really need to be cautious of how you divide your time, since the Final, Assignment 4, and Project 4(which is the 50 page spec Project 3 during the school year) are due the same week. We were literally learning a new concept in class on Monday and the final was that week Wednesday which should give you a picture of how tight on time everything feels in this class.
If you're someone like me who doesn't have much coding experience or familiarity, just make sure you have a lot of time this Summer and no additional big commitments to soley focus on this class and practice the new concepts. I was able to get an A- in the class, despite getting low C's on the first 2 midterms (and feeling extremely defeated), but working hard on the projects, which I got full scores on each. He replaces your lowest score with the average of your Midterm 1, Midterm 2, and Final scores, and I felt that the Final was actually the easiest exam of the three, with much less coding questions and a lot more conceptual questions. This class was also very mentally taxing for me, but just keep going, don't give up, and you will be okay.
There was the tiniest curve for my session (a 0.5% grade boost), since he curves the class so the average is a B-, and our class average was 79.5%. Midterm 1, Midterm 2, and Final class averages were all around a low 70%, C- range.
I'd say this class is the most challenging class I've had so far at UCLA, but it's not impossible to do well in it. The projects are not impossible, but just require a lot of time, while the exams are not insanely difficult, but just require practice and solid understandings of the concepts. Basically, the Professor and class environment never feels like it is "trying to get you" or waiting to weed out half the class since they are beginners at CS and don't have years of coding experience or whatever. Always always clarify any questions you have or ask for help/support from the TAs and the Professor. You can do it! I believe in you!
This class was pretty easy, except for project 4. Project 4 was horrible. I had a solid A before project 4 and then I BARELY finished with an A- after. Start project 4 as soon as you get the spec.
Ambrosio is a good CS 32 professor! he teaches the material well, and he's a pretty cool guy overall. he does often answer questions in a really confusing way on piazza/emails, but when you talk to him verbally he's a lot clearer. the tests weren't super hard imo--there's three in total, two midterms and a final, and I actually thought the first was the hardest one. the homeworks aren't bad either, though projects can be tougher. I needed a lot of help for projects 3 and 4, and even then I didn't really score super high, because after a certain point I just lost motivation to sincerely work on it lol. he gives 10 points of EC max, and substitutes your lowest exam grade with the average of all of them. the thing to remember about this class is that you have to be careful about submissions!!! he is not lenient at all with late submissions, even if they're one second late / submissions via email in case CCLE isn't working, even if you submit it on time / accidentally submitting the wrong file, etc. it's just a flat 0 if you don't get the correct submission in before the deadline, which happened to me oops. but yeah as long as you don't get 0s on anything I do think this class is pretty doable if you're just looking to pass.
Professor Ambrosio is truly one of the nicest and most helpful professors I've had during my time at UCLA. He is incredibly patient and will answer any question you ask, whether it is in Office Hours, lecture, or over email. The tests were somewhat difficult to complete within the given time but were not incredibly easy or difficult. The projects took a huge amount of time, in particular Project 4. Project 4 had quite a lot of requirements, and I wasn't able to finish. The fact that Project 4 was due the same week as the final and has Homework 4 made it even harder to finish, and I would say there were a good amount of people who weren't able to complete it. The rest of the projects took a fair amount of time, but not as long as Project 4. Overall, I found the material of the class to be a lot more interesting than CS 31, and I think I gained a lot of valuable skills in this class.
I didn't enjoy this class as much as I expected, but Ambrosio is a decent lecturer and answered questions quickly on Piazza for the most part. He also graded everything quickly and went through every single one of our submissions, which I imagine would take a ton of time. Given that, he deserves a lot of credit for the time he spent teaching this class.
The material wasn't very interesting to me, and projects were a huge time sink, although that's just CS 32 in general. Project 3 and 4 were placed at inconvenient times during the quarter, and both were challenging and/or took an insane amount of time. Project 3 was difficult because everything had to be done with recursion, and Project 4 wasn't impossible but legitimately took up most of my time the last two weeks of class. Exams had a mix of relatively easy and difficult questions, but a lot of times the wording was just not clear. I spent a lot of time trying to figure out what exactly he meant on some of these questions.
I took this class with Professor Ambrosio during a quarter with COVID 19, so lecture was all online. That being said, I don't really think that CS classes are all that different online or not.
Anyways, on to the review
I really enjoyed CS32 with Professor Ambrosio. He's very nice and funny and the two hour lectures didn't feel as long with him. He always makes corny jokes and has random asides to help with the monotony of the class. I always found myself actively listening to his lectures even in an online format where it can be a bit difficult to pay attention.
The lectures are going to be typical CS32 content. This class will cover Dynamic Arrays, Linked Lists, Recursion, STL, etc. Basically a typical course of CS32.
Professor Ambrosio uses Professor Nachenberg's slides to teach so you could honestly just look at those in place of lecture. But Professor Ambrosio knows the slides himself inside and out and is able to explain every part of it with ease. It definitely does NOT feel like Professor Ambrosio simply reads off the slides, he goes over every detail and is thorough with his explanations.
Projects and HW:
Each Project was definitely pretty intense, each one taking 8+ hours on it. If you're taking another class during Summer Session like I did, it's going to be a bit rough, but definitely not as rough as a full courseload during a regular quarter.
That being said, I highly suggest keeping CS32 as either your only class or one of two during Summer Quarter. This is because the finals week for a regular 6 week summer class ends up as the same week as Project 3, and the next week after that you'll have the CS32 midterm 2. At least that's what happened for me.
Projects and HW, it is what it is honestly, depending on how good you are at coding and your time management will determine your success on the Projects and Homework.
Project 4 was especially notable, as we received a 50 page spec and had to make a game using the given skeleton. I think this project is actually impossible to complete unless you really know what you're doing and/or you spend hours and days on it. I spent a ton of time on it, and I don't even think I got that far.
A great thing about Professor Ambrosio is that he has a relatively lenient Project and HW acceptance. If you include something you shouldn't have, say you leave a typedef as an int instead of string, most and I mean MOST other CS professors will just give you a 0, but Professor Ambrosio will rename the code for you with a 20% penalty. This is actually extremely nice of the Professor.
One issue I did have with the Projects and HW were that some specs were noticeably ambiguous and/or wrong, which resulted in some minor alterations to code or descriptions after they're assigned. But honestly not that big a deal, Professor Ambrosio notices them quickly and changes them quickly.
The exams in this class I found to be a bit on the hard side. They were pretty long and I found myself working until the very last second for many of them. The midterms and finals were not cumulative, so its easier to study for each.
The Professor offered two extra credit opportunities. Points wise, it should account for a ~1% boost to your overall grade.
The class was curved, with a C- being a 64%
I really enjoyed Professor Ambrosio's CS32. The 9 weeks really didn't feel all that different from a 10 week course and the Professor was engaging and fun to listen to. He also opened up a question forum where you can ask him anything, and I managed to get a lot of information about the industry and the tech field.
If you need to take the class during Summer, I feel that Professor Ambrosio is a terrific choice. He's funny, knows the material very well, lectures well, and is a truly nice guy.
Each project required a lot of time, prepare to spend 12+ hour for each project. Project 4 was a killer (and also the fact that it is due in the same week as the final), I would venture to guess that most of the class didn't complete the project. So start early and complete as much as possible for project 4.
I would recommend looking over the slide for review since most of what he said is in the slide. The slide is detailed enough that you probably don't need to read the book. I would recommend review those for your exam. Also, you can only bring 1 two-sided cheat sheet to the exam.
You should really,really really go to his office hour as much as possible as he is extremely helpful during office hour and he is willing to go over any question you have and also giving you some hint if you happen to get stuck in your project/homework. I can't stress enough how going to his office hour is going to be helpful for you.
You should also go to the discussion section because sometime when he doesn't finished the required material, he will defer those to the discussion TAs (though he will still talk briefly about it in the next lecture).