I think procrastination is getting a lot more common now-a-days then all of us are going to like to admit.
It is very difficult to sit down and concentrate daily on how to solve problems. If you combine school with programming, then you really have a lot to do brain wise. Regardless of how much I wished I was a robot that can just sit down and pump out code every second of the day without fail. I think that, being human, our bodies are trying to tell us that there is a little bit more to life than just sitting around all day long doing work.
The times that I am able to program for a long stretch of time is right after I've finished doing a lot of physical activities. But, the problem I've realized is that I burn a lot of that energy away by checking up on the various forums/blogs/social networks. So, by the time I actually get around to thinking about programming, I am already wondering about the next TV show/game/movie I want to see, and do that instead.
I know for me, JGO has been a double-edged sword when it comes to my motivation.
On one hand, it is very inspiring and I learn a lot of new programming concepts and techniques when browsing through the various threads in this site. There is soo much knowledge here that I get lost for hours reading and searching. However, the time I spend here just happens to be the exact same time I could have used actually coding something. So, I am learning a lot of new techniques but in no way am I applying them at all.
But, hey, it is no one's fault but my own. I can say this about any online activity that I involve myself in...
I guess what I'm trying to say here is,
prioritize. It is just like with anything, really. When you go to your computer, don't open the internet browser, just start programming instead. Yeah, it might start to feel like a job, or you might want to instantly gratify your needs with something else. Just because you feel like that, doesn't mean you don't like programming anymore. There are just other tasks that are taking up that time.
The funny part is procrastinating takes effort. In your mind, you know that you have to do a task, but you ignore that feeling by overriding it with another one. It is like a drug... you end up feeling guilty for it afterward. To stop feeling guilty, you do another task... and the snowball begins. It is a never-ending cycle.
Break the cycle. Prioritize. Now let me get back to reading all those "unread posts".