I enrolled in this course with a specific intent of learning object oriented coding in C++. I wanted a course with a steep learning course and lots of homeworks/exercises. Prior to starting the course, went through Walter Savitch's introductory ""Problem solving with C++"" book. So I had a fair introduction to the C++ syntax. I was still using C++ as C (i.e., in a procedural manner). However, this course, took my understanding to the next level. Starting from module 3, we were introduced to classes, polymorphism, virtual functions, and templates. The coverage was not in depth, which, admittedly, it is not possible for a 16 week course. The biggest strength of this course is that it makes you aware of ""what you need to learn to become a C++ programmer"", but doesn't (and cannot in such a short time) teach you that. You have to learn that yourself over the next few years.
To derive maximum benefit from the course, my advice would be to complete at least one round of C++ using your favorite book before commencing the course.
Avi Palley was my TA for the course and working with has been a great experience. He is thoroughly professional and obviously has deep knowledge of C++. He ranks very high on the lists of reasons of why I enjoyed this course as much as I did.