I think it's easier if you have someone holding your feet to the fire. A good lesson can be learned from the making of XMen Destiny if you want to look up that story...though that would be procrastination.
Ha! Actually, Nate is right. A hard deadline is a great way to learn where you excel, where your weaknesses are, and just how hard you're willing to push yourself. I learned this one when I entered my first game making contest (no, I didn't win; didn't even qualify).
The worst thing to happen us procrastinators was the invention of the computer. It's so hard not get distracted and look up the age of your favorite JRPG character (like I did today when I wanted to know how old Kratos was in Tales of Symphonia) or when will Kingdom Hearts 3 will actually be released (probably never.)
I do a couple of things to counteract my procrastination like wake up early and go to sleep late. On my off days from work I usually work from 8:00 AM in the morning to about 3:00 PM at night. When I'm writing out my plot I do my research first so I don't have to return to the computer and risk getting distracted.
Another thing you can do is go to the library to cut down on the number of distractions and be forced to work. I also turn off my phone (or put it on do not disturb) so phone calls don't break my concentration.
I also create a list of things I want to get done that day and make sure before I get a certain amount done before taking any breaks and yes that includes restroom breaks.
To put it simply I plan my day out ahead of time, work until my brain shuts down, and only use my laptop when I need to.
I admit, i can be a bit of a procrastinator, and i'm bad at scheduling - also tend to forget a lot of things if I don't write it down. So when I have something unpleasant to take care of, I tend to just set a time aside to get it out the way and reward myself with fun time (on a timer, because I will say eff it and keep at it). I used to be able to devote 2-4 hours of gaming every day (research! woot!), but I can't anymore... (work! sob!) It's gotten to the point where I look forward to fun time - I can recharge, reset, and refresh so I can get in the zone for the next project. Sundays are my days off so I do chores in the morning and by noon, i'm playing rpg's until midnight. I also have a playlist depending on what i'm working on so I can get through the day.
Having some good bumping beats while I'm working helps a lot - especially if it's music I already know (if it's music i don't know, i'm busy analyzing music instead of working!) Programming is a monotonous job, but it has to get done. I can't afford to pay anyone else slave wages to do it for me XD
OK, I'm a huge procrastinator, but I've recently found something that REALLY helps me. It's called the pomodoro technique. Here's how it works. You set a timer for 25 minutes. This 25 minutes is for FOCUSSED work. Put your phone away, close all IMs, stay away from all forums and non-essential internet, and get to work. I also find it handy to keep a notepad close by. If a distracting thought comes up, maybe something you want to look up, write it down and then get back to work. Once your 25 minutes is finished you take a 5 minute break. Get up and walk around, check your IMs and messages, and take a look at whatever you wrote down on your distractions list. After your short break, you reset the alarm for 25 minutes and get back to work. Each 25 minute work session is called a pomodoro. After 4 pomodoros, you take a longer break, usually 15-30 minutes. The typical goal in one day is 8 pomodoros.
You don't have to stick to these exact rules, but the basics are all there. Set a time for intensive, FOCUSSED work. Set a time for your breaks. And set a goal for the number of pomodoros you want to achieve each day. For me, personally, I do 50 minute work sessions with 15 minute breaks, and a goal of 4 pomodoros a day. I find the longer sessions work well for me when it comes to music production. It also helps to have a goal going into a pomodoro, something specific you want to accomplish during that 25 minutes. Deadlines have a way of helping you focus and work faster, and this gives you that without having to wait for the actual deadline to loom even closer. And that's what we're trying to do, isn't it? Stop procrastination so that we're not always scrambling to the last minute.
Anyway, I've been using this technique for a little over a week now and it's completely transformed how I work. I can get so much more done each day now, and the frequent breaks means I'm not burned out at the end of every day.
If you want a good timer to use, try this: http://tomato-timer.com I do hope this can be helpful to anyone else that struggles with procrastination. It really is a struggle but this is one way to get a handle on it!