Nothing is better than being truly motivated by an exciting project. But if you're stuck, here are some things to try out that can give a temporary boost. The common theme among these is switching your perspective from thinking about your project as a huge endeavor and instead concentrating on the next practical step.
How to maintain your motivation
"Just one change"
You should really be working on your project, but it just seems too daunting today to get into it. Open one file in your project and try to improve just one line. Just make one tiny change. That change often leads to another and can get you going.
This can turn a mundane task into an interesting challenge. Should you need to gather some receipts or other documents to submit to your bookkeeper each month, turn the boring task into a challenge by keeping a high score list of how long it takes you each time. Last month you did it in 4 hours. Can you do it in less time? Try to beat your record.
Sometimes you are not in the mood for speed challenges and even a bit of progress today would be a victory. Maybe in reality you have the whole evening to work, but pretend it is not so. Try allocating just an hour. If you could choose, what would be the best thing to work on today between 10 - 11am. If you could clone yourself for an hour and make the clone do that task, what would you have it do? When the hour comes, you might actually find yourself doing the task you allocated, because after all you yourself decided that to be the most important thing you could be working on at that point in time.
Make a list of goals
Make a list of current goals or revisit an existing one. That, and the realization that your time on this planet is limited, might scare you into action.
Help one person
If you have received some feedback related to your project, go read some. Could you help this person, or better yet improve your project in some small way to make it less likely for the same trouble to happen in the future?
If nothing helps you get started in your current task, is there another task which seems more appealing? Thinking about all the things you need to do, can you find the motivation to do one of them? If none of these help to get you started, maybe your mind / body is trying to tell you something. It could be time to take a break.
How to maintain your motivation
You managed to get started, now how to keep going?
Jerry Seinfeld once described his method for making better jokes: work on it every day. His system is to have a wall calendar and mark an X on it for every day that he put effort into writing his jokes. After getting a chain of X marks in the calendar, you are motivated by not wanting to break the chain. GitHub also has this feature, every day you contribute to a repo, they mark that day in green.
If you already have some audience, try to get them to interact with you. If you start getting emails or tweets about your task, it becomes natural to put more effort into working on it. For example if you have a blog, at the end you could invite users to vote on new topics for you to write about. If you have a web app, you could add a live chat or feedback widget or prominently mention your email address to make it easy for people to reach out to you. If you receive a problem report this way, it feels wrong NOT to get to work immediately.
This is an app you can install on your computer that monitors which apps you are using. You can mark activities as productive or not productive. You can tell RescueTime that being in a text editor is productive, but being on Facebook is not. Based on this it knows how many productive hours you had and can send you a congratulation email when you reach your daily productivity goal and make you have an extra feel-good association with staying productive. To learn more, here's one in-depth review of RescueTime.
Make a dollar
If you have a side project that you are currently doing for free, try asking for payment. Not because you are greedy, but because getting paid is a strong signal from others that they find value in what you are doing and want you to work on that thing. You might find that having even one person paying for your stuff will greatly increase how motivated you get in trying to improve it. If you feel like "I can't do that, I could let them down". Well, that's exactly the point, you'll get a boost of motivation from it. And if you really do feel that you let them down, there are always refunds.
Write a ridiculously detailed battle plan for tomorrow
Before going to bed, think about what the perfect day would look like. Maybe you would get up, get your inbox to zero, write some code, do some copywriting or have a nice session of exercise or study. If you can picture the perfect day, you could try writing it down in detail, down to the hour (remember to leave plenty of room for rest and breaks, too). Now tomorrow it will be clear what constitutes a success for that day.
Leave a small task undone
To jump start your productivity the next day, leave a task open from today. Before calling it a night, leave just one line of code unfinished so you can jump in and finish that as the first natural task for getting into a productive mood tomorrow.
Thanks to micrypt, chacken and brucem on #startups and logn on HN for contributing ideas to this post.
If you like candy, surprises in the mail and have an interest in Japan, please check out Candy Japan.