Programmers should love programming. That's an axiom of mine. I have no sympathy or patience for people who are programmers because they heard they could make good money, or who think of themselves as "Java programmers" first and "programmers" second. I'm sorry if that seems overly harsh. Programmers should love programming, and they should love learning. That's part of what it means to be a programmer.