Muneeb Alvi
For exams, make flashcards off of all of his lecture slides and do the practice problems in the book. If you do this you should get an A. As for the weekly assignments/projects YOU HAVE TO PAY ATTENTION TO DETAIL he will take points off for anything. I highly recommend going to the CS tutoring lab or to his office hours for help.