notes for learning how to program