ACM Ubiquity - Interfaces for Staying in the Flow "Hiking in the woods, writing, programming, rock-climbing. What do these activities have in common? They are all things that people regularly describe as being activities likely to result in "being in the flow". When we are fully engaged and in control of an activity, we sometimes sense that time passes more quickly and we feel immersed in that activity to the exclusion of all else. Furthermore, people regularly describe these experiences as some of the best of their lives.
Yet, all too often, computer users have distinctly different experiences — where they are frustrated, lack control, are distracted and interrupted, and feel anything but in the flow.
Is there anything that can be done to create user interfaces that are more likely to help computer users have these highly positive experiences? To try and answer this question, this paper summarizes some of the literature about "flow", and interprets it with the goal of providing a language, and specific design approaches to create better computer user experiences."