I have had horrible procrastination habits since gradeschool, and now that I'm in college, I still am having a hard time beating this bad habit. I find myself easily distracted from doing real "work" and find myself wandering off doing something else that I enjoy more.
Tell me how you personally beat procrastination; or share your struggles.
Break your large tasks down into smaller tasks.
The following three small items are mentally easier to get started on than Organise Birthday Party:
If you sit down for five minutes and think about what your tasks boil down to it's easier to get them done. Make sure you write a list of things that can be done, not that involve more thinking. For example, you're more likely to procrastinate over Buy Cake, than "Visit Billy's Cakes and choose a cake", or "Check out cake shops on the internet".
You should definitely check out Getting Things Done by David Allen, I used to procrastinate constantly, and while it still rears its ugly head, I'm much better at cracking on these days.
Block *.stackoverflow.com with your favourite Web Content Blocking software?
Procrastination is often a symptom of a fear of failure. As long as you're not finished, you haven't done a bad job.
You mention you're a student... stop by your student counseling center, they are sure to have some resources that can help you.
I find what works best for me is to pick the smallest task from my list of things to do, complete that, then move to the next smallest and so on until I've got enough momentum to pick up something more complex.
If 'real' work isn't interesting find more interesting 'real' work. Not appropriate for everyone but the only way I can survive in this messed up world.
PS. Sense of Humour failure on Stack Overflow? Why was this answer modded down?  It was both truthful and funny while it shouldn't float to the top of the pile to hide more appropriate answers unless we want this community to turn into a bunch of robots giving boring dry answers to boring dry technical questions stop down modding people with a personality. http://stackoverflow.com/questions/1933/#1937
I try to work with a partner, or tell someone else about my task so that they can ask me later if I got it done. The first method keeps me engaged and working on things because my partner expects me to get things done. The second method provides guilt as punishment for procrastination.
I ask my self why am I putting this off, it is usually is a question. Then address that reason. It requires discipline, but it is one of the few proven ways to fight procrastination.
The symptoms tend to be bored, tired, want to do something else, etc. We do plenty of things that we don't want to when we are bored, tired, hungry, etc when it suits us. Pay attention to what is making you procrastinate.
Try to find something you like in the work you do, and focus on that. I don't think I would be able to study Computer Science if I didn't love it (or at least parts of it :) )
Having a close friend, who knows you and knows when they should take you out for a drink or two and when they should give you a kick in the butt and remind you that you have that deadline coming up, helps a lot.
Also, don't worry about failing. Everyone fails at something, and you shouldn't be discouraged if you don't get a pass. Just pull up your socks and plough on.
Forgot to mention - make yourself little aims instead of bigger and more global ones, the feeling that you keep achieving something often, should keep you more productive.
Hope this helps.
I switch off the internet.
I haven't been in school for quite some time, so the only procrastination type experience i have right now has to do with real-world job-like procrastination, and I've found defeating it pretty easy in my current environment.
i) Make a list of all the items you need to complete. Typically, at the start of an iteration, I have about 20 of these tasks.
ii) Calculate how many days you have between now and your deadline.
iii) calculate how much work you have to do everyday to complete all your items in time to meet the deadline.
I know it sounds trivial, but man, there aren't a whole lotta things that keep me more motivated than seeing that I have to put in an ever-increasing amount of effort on a daily basis if I continue to beat the dog in order to make my deadline. It's simple, and it scares the piss outta me.
I'll get round to posting it later.
Okay, in all seriousness I find that some exercise combined with going to bed early and getting up early over going to bed late and getting up late works.
Don't read anything that has GTD in the title - ironically reading about getting things done means that you are not doing the things. I'm yet to meet a GTD fanatic who's actually capable of geeing tees deed.
Also, I hope you realize that you are procrastinating right now.
I just recently listened to the audio version of The Now Habit  by Dr. Neil Fiore . I haven't put its recommendations to work yet, but I am convinced that there are some really good ideas in there for changing your attitude toward work and play. http://rads.stackoverflow.com/amzn/click/0874775043
Getting Things Done is fantastic overall, but for getting started I'd recommend a very short book called Eat That Frog! by Brian Tracy (also available as an audiobook on audible.com).
You should definitely check out Getting Things Done by David Allen, I used to procrastinate constantly, and while it still rears its ugly head, I'm much better at cracking on these days.
You can listen to David Allen himself talk about procrastination in this 43 folders podcast . http://www.43folders.com/2006/10/10/productive-talk-procrastination
This is how i stay in line.
I learned this from a Ben Franklin biography. He had a book with Ivory pages so he could wipe them clean and reuse them. It is important to get a nice pad and not just a notebook because it will encourage you to stick with it.
You say you've had this problem since grade school - it sounds like you know that this is about you, not about the work. So I disagree with those who think the problem is that you've got boring classes.
Getting Things Done and The Now Habit are both excellent approaches, but very different. GTD is about tactics - how to set up your to-do list properly, what kind of routines to establish to trick yourself into being efficient. The Now Habit is about discovering what makes you procrastinate.
Do you dread doing things you think you should? Try The Now Habit.
Are you disorganized? Try GTD.
You could take a look at lifehacker. They use quite some time on Getting Things Done and the like. See this for example: http://lifehacker.com/search/procrastination/
Here's a second vote for The Now Habit . It gets to the root of your issues - as opposed to just giving "tricks and tips" advice.
I found temporary procrastination relief after reading it - but the fact that I'm here answering your question shows that I'm due for a re-read! http://rads.stackoverflow.com/amzn/click/0874775043
Thanks to a previous answer, I just read Procrastination: Ten Things To Know  and found it valuable. I particularly liked this part:
There's more than one flavor of procrastination. People procrastinate for different reasons. Dr. Ferrari identifies three basic types of procrastinators:
- arousal types, or thrill-seekers, who wait to the last minute for the euphoric rush.
- avoiders, who may be avoiding fear of failure or even fear of success, but in either case are very concerned with what others think of them; they would rather have others think they lack effort than ability.
- decisional procrastinators, who cannot make a decision. Not making a decision absolves procrastinators of responsibility for the outcome of events.
Last semester I took some blank pages, markers, and made a giant to-do list which I attached to my wall so I could take the pages off once I finished one of the points. It looked horrible, and my OCD made me want to take them off as soon as possible.
The DIFN  strategy works wonders for me. http://seoblackhat.com/2007/01/29/do-it-fucking-now/
I don't beat it. It is my always present companion and master.
But seriously, my variety of procrastination always stems from a lack of energy, caused by a massive lack of sleep. I have always had a problem with the amount of sleep I get, and every time I make it up I always get vastly more done. Getting more sleep and consuming unhealthy amounts of caffeine always help.
See this previous question: http://stackoverflow.com/questions/25397/efficient-workday
As the asker of that question, I bought Getting Things Done , which I'm getting through at the moment. So far, while it is a decent read, it is not geared toward people writing software and I get the impression that he anticipates his audience as high ranking business people (there is the odd "Get your assistant to file things away for you" piece of advice). But there looks to be enough in it to apply it to generally improving productivity, albeit with a bit of adaptation to the tech industry.
In general though, as a part time procrastinator, I find that the more planning I do, the more efficiently I tend to get the actual work done. Before I do anything, I try to spend time figuring out exactly what is required and split up any large tasks into small chunks. http://rads.stackoverflow.com/amzn/click/0142000280
This may sound like heresy to some of you but try this as an experiment. It worked for me.
Go without any caffeine and get a rock solid 8 hours of sleep each night for 2-3 days and then gauge how well you can focus. Report back! I used to consume 3-5 large (32-oz) sweet teas a day. Not only is that a ton of caffeine, it's a metric ton of sugar. I've cut down to 16-32 oz of tea at most per day and I never drink caffeine after 4pm. I make decaf tea at home and cut the sugar half with splenda. I'm sleeping more deeply and I'm getting more done at work.
Try using a new time management system called AutoFocus.
It's free and works like nothing I've ever tried before...and I've pretty much tried them all up to now.
Two very worthwhile resources:
Procrastination  by Stefan Molyneux
The Little Guide to Beating Procrastination, Perfection and Blocks  by Hillary Rettig http://www.youtube.com/watch?v=h1WC6hNTONg
The single best advice for beating procrastination I've ever seen (Thank you Joel!): Fire and Motion. 
On a more personal and less professional note: when I procrastinate, it's because I don't want to do something. Teasing at the "why" of why you don't want to do it might not help you get it done, but will teach you about yourself and your desires. http://www.joelonsoftware.com/articles/fog0000000339.html
I second John Lubotsky's answer .
In addition, procrastination can be a powerful productivity tool. There's no nice way to say this, but many tasks assigned by managers are a waste of time. Maybe a more positive way to say this is that often a manager asks for what they think they want rather than what they actually need. Procrastination can sometimes clarify the difference.
Another situation is when you are confronted with a huge, difficult, nearly-impossible task. The temptation is to buckle down and get it done. Anything less is viewed as procrastination. But surprisingly often, if you take a few days to think about the root problem, you can find a workaround or alternate path that reduces the size of the task. Often getting down to work makes it impossible to see the shortcut.
Occasionally, tasks become overtaken by events without any harm being done. Maybe a feature needs to be added to solve a user's problem, but another feature will also solve the problem. If you do the second feature first, you avoid implementing the first feature.
Most of us live and work in task-oriented societies that value getting things done. Getting labeled a "procrastinator" can be fatal to your career if you aren't careful. But most of us realize deep down that getting things done isn't always the most important thing. Procrastination in some ways is just a negative synonym for prioritization. http://stackoverflow.com/questions/1933/how-do-you-beat-procrastination#77058
Watch the lecture given by Randy Pausch about time management on YouTube:
Professor Pausch gave this lecture before dying of cancer a few months ago when he knew he was sick and had few time left.
If you are to hear someone talk about using your time wisely, I think this is one of the most inspirational talks you can find.
As much as I hate spoilers, if you don't want to watch the whole video, the main point he makes is:
I think we all procrastinate in things that are not so important to us, because they are not interesting, or not fun, or not critical. You just have to realize that you are the one that has to decide if those things are really not that important. If it is not important to you, then make your mind, fix your life, and don't waste time thinking about having to do it at all. http://video.google.com/videoplay?docid=-5784740380335567758
If you manage to get motivated the procrastination shouldn't be a problem anymore. There are some motivational short video clips out there which could help (works for me), i.e. No Excuses  I really like that one. Good luck. http://www.youtube.com/watch?v=obdd31Q9PqA
Most answers here suggest that you break your goals into smaller goals and tackle each one individually, this is called the baby-step approach. The baby-step approach has the effect of making the goals more tangible and thus gives you more confidence. So does the Pomodoro and the Hourglass technique - but that is time management: it helps procrastinations but doesn't solve the problem.
Procrastination is a psychological condition, we procrastinate because we believe (or not) in something or have specific feelings that make us delay doing something. If an algorithm could procrastinate that would be considered a bug, what would you do to fix that bug and make it run smoothly again? You would have to debug it. Analyse its flow and discover why it does what it does so you could fix it. Unfortunately when we are debugging our minds we just go for the easy solution and say to ourselves: "I need to do this" but we never ask the right question: "why am I not doing this?".
The first thing you should do is debug yourself. Why do you procrastinate?
Once you know the reason behind your procrastination you can start to write the mental code to fix it, refute all your stupid convictions and eradicate all your bad emotions. This can be hard and take a some time, but it will worth every single second you invest into it.
Emotions really are the window to our soul, if you feel a bad feeling, stop. Why do you feel it? Fight it!
It seems to me that procrastination is more common in scientific professions, I believe the reason behind this is that we have little or no faith, a good definition of faith being:
Reinforce yourself with positive feelings, imagine how you'll feel once you finish what you've done.
Procrastination is like a drug, the more you do it the worse you'll feel which will in turn give you more reasons to take the next dose. Luckily the opposite also holds true.
I was going to ask a question almost exactly like this one. I know it's an important one for me, because I had a horrible feeling in my stomach when writing the subject line and I had to force myself. So, the answers to this question so far have been great for me, and thanks for asking it.
The funny thing is, that I really love it when I am productive. Nevertheless, it seems to be a fear of failure that causes me to dance away from getting started.
Today, in contrast to others, I've had an extremely productive day. Here's what I did:
Yesterday afternoon, I wrote in my daily journal what to do as soon as I arrived at work. I wrote these imperative commands to myself, plus some telling questions:
. Avoid procrastination . Can my project be installed onsite today? . Work on project 'b' if you're stuck, it's meaty *and* interesting . what can you think of to do, to improve the company's projects and income? . what projects can progress? . what new qualifications can I attain over the Christmas period? . Who could I speak to that I've been neglecting? . Don't do any web browsing at all, except for work questions and google talks, until at least 4:30 . don't question yourself . be proud of yourself, there's a lot of good there . you may not be perfect in all areas, but you're working it through
So, when I came in this morning, I got stuck into it. The directives above stopped me from diverting off onto web browsing when I was beginning to get stuck.
I redefined the architecture for a current project, and broke it down into small tasks, and prototyped experiments to make each little bit work. Then I wrote out in a text file how to bring all the experimental prototypes together into a neat combination of code.
I think the secret is to start the day well, and then the flow starts early. In order to start the day well, I find it useful to pre-frame my tasks and attitudes the afternoon before.
I am an expert procrastinator and I've been looking at the pomodoro technique  recently.
Basically its splitting your tie up into 25min intervals and lost of 5mins in between to do whatever else. http://blog.staffannoteberg.com/2008/02/22/pomodoro-technique-in-5-minutes/
One thing that works for me is to schedule it.
For instanced, I don't procastinate on exercise because I'm taking a class and it has specific hours. I show up for class, exercise and it's done.
If I have a particular task that's important, it will get done if I put it on the calendar, then devote the time to it when it comes up.
And when the time is up, I can get back to procrastinating.
I find a small bug to fix that is very simple. Before I know it I am fixing other bugs since I have the code open. I also like to tell someone in my team what I am working on that way I have an obligation to finish it.
Well, seeing as you are in college... you aren't really doing real "work". You are doing schoolwork. The best way to prevent procrastination in your case would be to:
For people in the real world, it's usually quite simple. Do your work on time or get fired.
Stopped reading tech news sites (techcrunch, slashdot, etc). If something really big comes out, don't worry, you'll know about it anyway.
Got rid of all the feeds in my RSS reader of which I wouldn't even read half of the entries. That divided the information load I was getting from there daily by about 20-fold.
Used TimeRescue to track my own progress through the procrastination battle.
Read "the 4 hour workweek".
Constantly kept an empty inbox in gmail.
Created dozens of rules in gmail to delete all these newsletters that are impossible to unsubscribe from, making the mail notifier in my tray meaningful. These days I get about 2 emails a day in my inbox (sometimes even none and that feels pretty good) so it's OK to pause what I'm doing to reply immediately (which I don't do for the personal emails anyway). Before the big cleanup I used to get 12-15 a day.
Overall if you do all of that you end up freeing a lot of your time. With a lot more free time than you can handle and no dependency on your old procrastination toys anymore, you'll get bored and you'll end up doing whatever you've been putting off for so long. but that's just the way I am, these hints are to be adapted to your own personality and habits.
Here's a trick that served me quite well: when you come to work, open the code first. Yes, you may check your e-mail, read a couple of Q&A sites and a dozen of news sites, go make yourself a cup of coffee and whatever else you usually do instead of working, you still may do it all after you open the code.
When I discovered this little trick I was working with Visual Studio, so for me it was opening the C++ project I was working on. I tried going one step further - not just opening the IDE, but assigning myself a tiny task to complete before I do anything else. But I found that to be inessential, because more often than not just opening an IDE was enough to cross the chasm.
That answer  is somewhat similar to this. http://stackoverflow.com/questions/1933/how-do-you-beat-procrastination/67636#67636