Renato Zanetti
Zanetti proved himself well in teaching it. The example problems he did in class were VERY helpful. Hw started out easy and then jumped difficulty level. In the beginning of the course, he always released the hw on time, but started delaying them as semester continued. Befriend the TA's, they are your savior. 