After seeing how productive I am during those windows of pure, blissful coder-escapism, getting back to the emails and little issues on GitHub and helping my coworkers... it absolutely shatters my productivity. Not because I don't like doing the little things (they give a zen-like satisfaction all their own, like a well-used checklist). It's the constant context-switching. When I do need to code, it's so tough to get into flow, knowing that I'm likely to be interrupted again at any moment by someone needing help with a bug, or some server or client that's on fire.
...
I was also tempted to request an "All of the above", as all of the issues (yes, all — I was tempted to check every item on the list) play into this, for me. Anything and everything can, and does, cause me to get out of flow — unless I isolate myself completely, and truly know that I am isolated. Then I can flow.
monday: app programming tuesday: web programming and management wednesday: app design thursday: app programming friday, saturday: anything, as long as its productive. not necessarily related to this project
i find that having a day to just play around is really helpful in keeping things fresh. if it weren't for that i would go bananas. great learning opportunities as well.