A couple of months ago my boss and I were talking about bug fixing and how there are some developers who seem to be able to get things done everyday without exception while others seem to get stuck on a single issue for days and then finally get through it and then continue to get work done. I told him about how I try to stay productive and keep myself motivated. It all comes down to going for the quick win as soon as I get into the office.
Even when i'm working on a difficult problem, writing a long document, or working on a multi-day code change I make sure to start my day off with something that I can accomplish quickly. This is the quick win. Success breeds success. Small victories will prepare you and motivate you to go after the big victories with even more zeal.
The days where i'm able to get a quick win during the first 30 minutes or hour of my day are typically my best days. I'm motivated by success and progress and that builds enthusiasm to get more done and to help other get things done.
Give it a try the next time you're bogged down with a tough defect or long-term problem to solve. Go for a quick win, have some success, and you'll find that you are even more motivated to tackle the more challenging things sitting in front of you. Do you have any tricks of your own for staying productive?