Philip Heise
I've heard good things about his in-person classes, but his online class was mediocre at best. The tests are taken from the quizzes, but the questions you get on the quizzes are randomly generated-- meaning that you could take the quizzes 20 times and still not see all of the questions. The textbook is free online, but it's a disorganized mess.