What motivates you to code?

Learning programming stuff in a college class isn't that easy because it's boring, sometimes the professor is bad at explaining things, and you feel forced to do it. And you're less concerned with learning and more concerned with deadlines and grades.

By contrast, personal projects seem so easy -- and they're amazing learning experiences -- because you actually want to do it.

Obviously doing it as a job is a big motivator, but when you haven't quite made it that far, you need to look elsewhere for reasons to do it.