I struggled hard in this class, but with help of Office Hours and an amazing curve, I ended with an A. I cannot stress this enough, attend office hours. He's a great professor with a plethora of funny stories. His course requires you to study the textbook carefully and attend lectures to really understand the material (in my case at least).