

Ask HN: How do you stay motivated when the project gets stale? - quizbiz

I have two clients with nearly finished websites ready to do but pesky issues and small annoying bugs are preventing the site from going live. I am to the point where I want to find someone I can pay to finish the job just so I don't have to look at the projects anymore. This problem is reflective of my habit of always moving on, many times too early. I love new ideas and peruse them until the fun of the early creation and exploration is over. Then it gets stale and when I do keep working on it, it is passionless work.<p>Any advice?
======
exline
ToDo lists. I find that when I get bogged down for any reason, if I create a
todo list of items that have to get done I'm more likely to do the items on
the list. I tend to pick up momentum as I cross items off the list. Make the
list a manageable size, finish it off and create a new one.

For product related tasks, getting actual users and feedback from them is a
huge motivator as well.

~~~
warwick
I don't think I'd get any work done without my todo lists. Here's what works
for me:

\- Make the list a manageable size. I find more than 30 or so items
overwhelming.

\- Never let the list run out. I add new items constantly. The last ten or so
items all read 'Expand this item: (some high level feature that can be broken
down)'

\- Mix easy and hard items. Striking an item off the list is satisfying, so
make sure that after a particularly hard item, you can breeze through two or
three more.

\- If you're encountering a lot of hard items, spend some time expanding then
into separate line items.

\- At the end of the day, don't give into that temptation to polish off the
easy item at the top of the list. Otherwise you'll work your way through a
couple more easy items and end up having to start the day at a hard one.

\- Have a visible backlog of your completed items. It's satisfying when you
feel like you aren't making progress.

\- Always attack the list in order. If you find yourself needing to move items
around to satisfy dependencies, go right ahead, but if you skip and item
because you just don't feel like working on it, at the end of the project
you'll have a whole list of items you don't feel like working on.

------
syko
Not leaving the polish for the last. I've noticed that it's bugfixes and the
final polishing that are the most tedious (everything's done and most of it
works).

I now polish, test and debug every bit of the project as I go along. It's very
tempting to pinch all the fun parts out of the project right away (the core
functionality) and leave the little stuff to the end, but this is gonna leave
you with heck of a lot of little things to do after the project's ready.

But once you're already trapped in the little things, it's the todo lists:
dividing it all up into as little pieces as possible and going at them one by
one. This also forces you to measure how much of it is still to be done -
otherwise you feel like every one of those last bits is going to be the last
one. And when it isn't, it's going to feel like puke. .. and fixing bugs like
this is also prone to create other bugs.

~~~
damoncali
I've tried that but found that it's best to polish at the end. Nothing wastes
more time than throwing away polished code. I don't fine tune anything until
I'm sure I'm going to use that code in production.

------
alandjackson
You need to internalize a desire to use the finished product. In otherwords,
you have to want the finished product.

This is probably a horrible misquote, but I remember a long time ago John
Caramack saying that what drove him to fix all those little stupid bugs at the
end of a product was the desire to play the finished game.

Others who just wanted to ship it were having a tough time sticking with it
since they just liked developing cool tech and wanted to move on to the
exploratory phase of the next project.

Now, if it's a clients website you have absolutely no interest in and can't
figure out a way to have an interest in (coding for it's own sake), you've got
bigger problems :)

------
doki_pen
For me, interacting with actual users motivates me to "polish" a project. I
can imagine it is very tough if you can't go live. Not launching until things
are perfect seems like a problem in and of itself.

------
gte910h
When I have issues of this ilk, I look for the next, absolutely concrete,
thing I can do that will result in a payment.

------
sunkencity
My take on this is that finishing up the last 10 percent is what separates the
seasoned pro from a newbie developer. Correctly judging, assessing, assembling
a view of exactly what is lacking from a project to make a tight release is
and making a big list and iteratively finish it off is immensely satisfying
for me. here's where actual software for other humans are created, design
decisions evaluated and put to the test. Will it hold or require too much glue
code, making a big refactoration à future must?

i force myself to like this stage and i like it more and more as i am less
motivated by designing systems from ground up since that has become easier
over the years, and I am mostly building web apps.

------
zephyrfalcon
I would like the answer to that question as well... Although I have this
problem with my personal projects (that are supposed to be "fun"), not so much
professionally.

The problem is that when I get bored with (which might happen very soon, as
in, after a few days), it stops being fun... so then your choices are to go on
anyway, in which case you're doing drudge work instead of something enjoyable,
or move on to a different project, which will likely meet the same fate.

I haven't found a solution for this yet, although I suspect that it might help
to have a few other people working on the project as well.

------
nudge
There is no easy fix for this. You need to be disciplined enough to keep
working when you've done all the fun parts.

The good news is that if you can get better at being disciplined just by
practising it, and the rewards are very high, because you become a finisher,
and people like and value finishers.

Also, the act of finishing is immensely enjoyable, and is therefore its own
reward. With practice your mind will begin to be motivated by that reward,
once the little rewards of the early parts of projects have gone.

~~~
kaitnieks
The act of finishing should be enjoyable but what if it's not? Are there any
tricks to make yourself be happy about the finish?

~~~
photon_off
Yes. Sit down and imagine how you're going to feel when you are finished.
Really try to make yourself believe that you're done. If these are features,
imagine using the product with those features in place, and how much it adds
to it. If it's design, think about how much better it's going to look when
your through with it. If it's performance, think of how your product is now
more capable of handling more requests or is faster and lighter-weight
feeling. Whatever it is on the todo list, I'm sure there's a good reason it's
there.

Now that you've imagined how much these things on your todo list are going to
improve whatever it is you're working on, and how awesome it's going to be
when those things are in place, why not get to work?

------
locopati
The work is not only the flash of the new shiny. Those pesky issues and small
annoying bugs are part of the work. Try to raise your perspective from 'what's
new' to 'what's great' and 'what's great' requires focusing on what the client
needs rather than on your excitement. Delivering what someone needs will, in
the long run, give you more enjoyment than the fun of exploring the unknown.

------
damoncali
Deadlines. Find an excuse to set a hard deadline with real consequences up
front and stick to it. The results are dramatic.

------
dasil003
What I do—and this is definitely easier in a startup where you have a greater
ownership stake—is to take pride in efficiency. The number of bugs fixed. The
number of tweaks produced.

Having a nice low-friction issue tracking system can help with this. I like
Pivotal Tracker.

~~~
mkramlich
> The number of bugs fixed. The number of tweaks produced.

possibly even better: the number of bugs not produced

~~~
eberfreitas
Well, that is probably something you can't keep track of.

------
mkramlich
money

