Summer 2022 - 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!