I know I'm not the only person who occasionally likes to get up and walk around as I chew through a problem in my head. Surely this doesn't constitute a break in "flow".
I know I'm not the only person who occasionally likes to get up and walk around as I chew through a problem in my head. Surely this doesn't constitute a break in "flow".
I'm afraid it most certainly does for myself and other programmers I know. My "walking around and contemplating" is a completely different mental state than flow for me, and flow produces an entirely different league of results above and beyond any other mode of working I've been in.
If I could discipline, harness, and achieve flow more quickly (like the people who teach themselves to dream lucidly) I would be a much better programmer.
As it is, I'm currently contemplating how to cope with the apparent health risks of sitting all day vs. achieving flow.
Going even a week without flow tends to depress me, I doubt I could make disrupting my work multiple times daily a regular part of my habits.
Edit: Point being, I've never been in a state of flow that lent me the presence of mind to be able to tell myself, "Time to get up and move around", and any attempts to do so would destroy it.
I could see how some problem domains wouldn't be amenable to this.
I'm into functional languages like you are, but my background is in Lisp and Scheme where the cultural norm is to do bottom-up design and refactor/redesign as you go.
If I feel trapped into my decisions, I've written poor code or made an uncommonly bad design.