The single most important thing I do to “boost creativity and/or productivity” is to work in such a way that I don’t need to “boost creativity and/or productivity” to get my work done. This has to be done the night before.
I always quit all online work at least 2 hours before bedtime and print whatever I’m working on.
Then I go into any other room with program listings, blank paper, and pens (especially red!) and plan out all of tomorrow’s work.
All analysis, design, and refactoring must be done at this time. I do not allow myself to sleep until the next day’s work is laid out. I also do not allow myself to get back onto the computer. The idea is to have a clear “vision” of what I am going to accomplish the next day. The clearer the better.
This does 2 things. First, I think about it all night (maybe even dream about it). Second, I can’t wait to get started the next day.
I always wake up and start programming immediately. Once I get going, it’s easy to keep going. Any difficulties are probably because I didn’t plan well enough the night before.
With proper planning, “getting into the zone” becomes a much smaller problem.