
Ask HN: How to stay motivated through a long term project - bhavink
I want to know what are some methods you guys use to stay motivated and disciplined through a long term (&gt;2-3 months) solo programming project. I know the most obvious method would be to break down project in small tasks and target those but in my case that does not help. After a while the feeling of it going nowhere starts sinking and also the feeling of the enormous amount of work still left starts bringing the morale down. Thanks for your tips in advance
======
matfil
I'm also in the "breaking things down doesn't really help" camp, so while I
recognise that it works for some people, I do think it's possible that "just
break things down even further" isn't necessarily the right approach for
everyone. A possible explanation for this is that when tasks are truly bite-
sized, the regret of "I could have finished X this morning" just gets more
intense. And actually, having some slack time and some time spent standing
back and reflecting turns out to be really important to me in itself.

The thing I find most helpful is to make sure that there are always _several_
parts of the system that I'm actually working on. This means I've got a choice
of what to work on today (autonomy!) and can somewhat context-switch my way
around the awkward bits (which sometimes get less awkward after a few days on
the back burner). Don't get carried away with this (spending all your mental
cycles deciding what to do next won't help, either), but it's worth a try.
It's one of the things that makes me love largish solo projects.

------
jason_zig
During the end of the project (almost always a slog) I'll set deadlines for
myself each week with a set list of features I need to accomplish for that
week. Hopefully it's obvious what's left to be done and you can make lists at
this point. But when I've accomplished those goals for the week I'll take a
break and do something fun.

I don't know how you work but usually the first couple months are a frenzy of
work non stop but if I pace out the end a little better it becomes a lot more
palatable. Also it's not the end of the world to take a couple days off if you
come back with a clear mind ready to work, in fact it's usually more
effective.

One more thing that really helps with overcoming the blues at the "almost
finish line" is to get it in front of a few people and let them pick it apart.
It gets me motivated before showing it to him/her/them to polish up any loose
ends, and then after I have a new list of stuff that I feel motivated to
resolve. Hope that helps! Goodluck w/ the project!

~~~
bhavink
Thank you, I can relate to this so much. It is the end which seems difficult.
Showing the project to a few people before it is "finished" sounds very
helpful and now that I think of it, I have done that in the past as well. Will
keep that in mind for future work. Thanks again.

------
kleer001
Sounds like you may not have chopped up the larger goal into smaller
achievable goals.

Like the old saying goes... "How do you eat a whale? One bite at a time."

Make sure you have sub goals nested at least __three levels deep __from your
main end goal. Keep track of that stuff, gamify it for yourself. Keep a
schedule, but keep it flexible and be understanding with yourself.

Discipline is a very difficult thing (the personality aspect of
conscientiousness, look into it). The very definition of non-trivial and has
plagued humans since time immemorial.

------
patatino
Exactly this part of the project gives it it‘s value! The fun part everbody
does in the beginning is over.

Knowing this gives me the motivation to push through.

------
throes_death
If anything greater than 2-3 months is long term and challenging your
motivation and discipline then programming might not be the right path for
you.

------
smartis2812
Achievements and Rewards: I try to setup some sub-goals over 2-3 weeks, which
i'll try to achieve. If I'm successfully, I reward myself with something nice.

