To enhance your productivity, you need to look into yourself and study yourself and see what sometimes keeps you from doing productive work.
In my particular case, I noticed that there are times my mind produces a lot of ideas but I couldn't really do anything useful with my mind in this state (apart from having ideas obviously). They are good for having ideas but not so much for working towards them.
I also noted that many ideas I have at these times are easily forgotten after this. I started writing the ideas down so I would not forget them.
What really happened is that (apart from the obvious benefit of storing ideas and not losing them) there were other times when I was calmer and with less creative energy on me and didn't want to do a lot of thinking, a lot of creating.
By having the ideas I had had previously lying around me (in the form of little pieces of paper I use to take note of the ideas I have), one day I just took one of them and started acting on it. Now that can be starting to write code, buy a domain, start a project or whatever.
My mind has both creative and executive modes, but they are hardly ever at work at the same time.
This has helped me understand that my mind has both creative and executive modes, but that they never (as far as I can remember) are at work at the same time.
The kind of music I listen to, the time of the day, what I'm having to drink, the experiences I've had during the day - all of that affect the mode I get myself into.
Now while that's very relevant as far as kicking off a project is concerned, it is also useful for just working too. (Paul Graham had a word for it: it was yiddish-sounding - something like schmoozling or schmezzle - something like that). This is the mode you will work on (execute) the ideas.
That can be coding or thinking out a design strategy or a solution to a problem - just something you know you have to do and without which your project won't move forward. Those things that you keep postponing all the time.
Again drawing from the ideas example, what has worked for me is: when you are in a creative mode, write down on pieces of paper what you need to do (small pieces of paper and thick pens are good because they keep you from writing too much).
Also think about how you will do it. Take advantage of your creative mode. Just write down little actions you need to get done. Nothing too complex - and think out how you will do it too. Just leave the actual doing for later.
Then, when you find yourself on an executive mode, just get the pieces of paper, put them in front of you, settle yourself into your present moment, and start doing it. Don't think - you've already done that earlier.
Just do what you've set out to. Only think about the present moment, tune into a nice radio channel and feel a small victory every time you throw away a piece of paper when you've done what was written on it - it's so much easier when you've set your mind to just doing as ordered (as you've ordered yourself) and not having thinking about it - it just works.
Goals should be short, objective and easily quantifiable (easy to tell success from failure)
So, much current workflow is: once you've found out something that needs to be done, write it down - don't start doing it right away. Write it all down, on separate pieces of paper, so you won't forget about it. They should be objective and quantifiable (binary(success/no success)). These could be:
- correct a small UI bug on a website;
- add XYZ to page foo/bar/quux.php;
- read about new XYZ.js framework;
- update the structure on a project to a new standard.
Then, once you find yourself on an executive mode, you'll have lots of little things that need to be done and, had you not written them down, would probably never get done as other things come up on your mind and replace the previous ones.
It's best if you keep the pieces of paper representing undone tasks on a clearly visible area, like on top of your desk. So they keep "looking at you" and nudging you very smoothly towards transitioning into executive mode. Don't force yourself though. Let it happen.