Christopher Fritz
Great professor who gives lectures that not only help you understand the material, but also that you understand the history behind it. Labs and class exercises are designed to make you learn while doing it. Exams are easy if you can do the labs yourself and one cheat sheet is allowed. You MUST understand C before you take this course. 