Neal Arnold
I marked this as an online course, but it was actually a hybrid which made it much easier for me. I enjoyed his lectures. You have to study a bit if you aren't good with programming naturally. there is a lab portion that I didn't enjoy that much, but the rest was really good.