+1 Peter Norvig's class. His approach is totally fascinating and the way he effortlessly translates common-thinking and logic into a program is pure magic to me. Highly recommend it and also checkout his notebooks, unparalleled beauty: https://github.com/norvig/pytudes