Awesome prof! Great sense of humor, and very knowledgeable on the subject. Class is definitely mandatory to understand the material easier; the book isn't that great. Midterms and final are very fair if you take the time to understand the material. Do the HW and practice modules!! He keeps class interesting, and doesn't beat around the bush.