I was a CS major but I didn't _really_ learn how to write code until I got a job at a dot com startup in the mid 90's. I think school seemed too easy, and I didn't work that hard to get decent grades, although now I regret not taking advantage of the time I had. If an assignment is due friday, who cares. If it's due RIGHT FREAKING NOW, because your company is ON FIRE then you work hard. I mostly played MUD's at school. I worked my ass off once I got a job. Turn off the distractions and light a fire. I guess the fear of failure is what motivated me. Maybe try and do something risky and difficult.