views:

637

answers:

17

When starting a programming project, how do you jump start yourself to do a task that you just despise doing?

+7  A: 

We recently did a time management course, which was mostly a waste of our time :-) but one of the ideas they presented was to pair undesirable tasks with desirable ones.

That means, make the desirable task a reward for completing the undesirable one.

Of course, if undesirable tasks are all you have, you may want to think of something else, like changing jobs.

paxdiablo
+2  A: 

Pick the smallest, easiest piece and do that first.

Brian
I do that... and ultimately get nothing done... ;)
Jason
+7  A: 

I find if I break up the project into small manageable tasks and look at each of those individually, it makes the whole thing more palpable. Setting up a "TODO" list helps in this regard as well, because you can tick off each task as it is completed which makes you feel better about the whole project.

You can also look to Lifehacker on these kind of abstract thoughts and see how other people deal with them. Here's a good article on procrastination.

cowgod
+2  A: 

I tell myself that for at least 15 minutes I have to attack this problem, even if it seems irritating and/or hopeless.

Yes Fish...
+4  A: 

Sometimes what really helps me is to think of how much better I'll feel afterwords knowing that the task is complete and that I don't have to deal with it anymore. Other times I just tell myself to stop acting childish, man up, and get it done.

If the task is large though, thinking about how to break it down into smaller pieces almost always helps me get through it. For me, the key is to immerse myself in the task and try forget about how I feel about doing it.

Jeff Schumacher
+4  A: 

Pick the hardest piece and do that first. Everything after that is a breeze.

Eli
+4  A: 

Do it early, first thing in the morning, then you will do it better and you can be more relaxed for the rest of the day.

mm2010
A: 

Check if someone else despise it less than you do and trade tasks (if possible).

Mingus Rude
+1  A: 

My usual method is to set a timer on my PC.

I use WorkRave (Workrave.org) to help minimise RSI, I use the rest break timer on the program to force myself to work for 1 hour on the horrible parts, then reward myself with 5 minutes surfing, usually on StackOverFlow reading questions :)

A: 

I usually don't dedicate 100% of my time to it initially. At the start I'll dedicate a few hours of my day to it, and work on something more enjoyable for the remainder of the day. I'll slowly increase my dedication to the task until it becomes my primary focus.

Whytespot
A: 

trade todo lists with a coworker so you can nag each other

Jimmy
A: 

Set a timer for one hour. Force yourself to work just for that hour. I do this with and then my "one more turn"-itis from playing too much Civilisation kicks in - I just want to do a little more, and then a little more and then it's done.

A: 

When I have something I despise doing, I work on the things that I despise less until something I despise more comes about!

Jersey Dude
+1  A: 

My advice is not specific to programming tasks, but anything you tend to procrastinate over

The hardest part is starting. If you need to exercise, the hardest part is putting on the running shoes and getting out of the door. Once that is done, the rest takes care of itself - more or less ;)

A trick I often use is to give myself a deadline. Not a deadline for finishing (which would just worsen procrastination) but a deadline for starting whatever I don't want to do. I tell myself that if I have not started doing the task by a specific time, I shouldn't do it at all but just remove it from the TODO-list. This motivation works for me.

Oh, and my favorite article on procrastination is Structured Procrastination - very funny. See his other essays, too.

Bjarke Ebert
A: 

I remember that I need to man up and do the job like a decent human being instead of a slacking waste of space.

Paul Nathan
A: 

What is it that you despise so much? I can't think of any programming task that I despise so badly.

Mind you, I usually turn a mundane task into an exciting project of how to write a tool (or macro) to do it effortlessly, then I get my teeth stuck into that instead.

Even if I spend twice as long writing the tool, I'll reap it back later. Or in your case, you might have the tool completed before you would have eventually decided to start the despised task in the first place.

Of course, setting a realistic deadline with your manager or client is also a sure-fire way to get things done in a timely manner.

Also, incremental development is a good motivator, get a runnable system going as soon as possible, then gradually enhance it until it becomes the finished product. Or at least execute your code via tests if you're working on components.

Lee Kowalkowski
A: 

Focus on a long term goal, something you really want to accomplish, then convince youself that you can't reach that goal without doing the task you despise so much.

Mr. Brownstone