Essay
The Flow State
- 945 words
When you get down to the roots, development is all about problem solving. It doesn’t matter the language you’re using, the software you’re building, or who you are. When you’re developing, you’re doing so to solve a problem. It all boils down to how able you are to do complex reasoning and how you can put that to use.
I think one of the greatest feelings in the world is when you’re hacking on something and fall into the flow (zen) state. The state of mind where you know what you must achieve, and your only objective is to achieve it. You don’t necessarily know how you’ll do it, but you’re getting there.
You’re ideating. You’re trying things. You haven’t got a care in the world except that which is right in front of you. You know you’re here because your vision has tunnelled, adopted a slight vignette, and your peripheries are nothing but a blur. You’re solving every problem coming your way.
There are other ideas and concepts floating about in your mind, but you’re only plucking out the ones of value – the good ideas. You can gauge a bad idea at a glance, and should you attempt one, it seems almost humorous when it fails, as you already had an inkling it might.
Consciously, you’re aware of what is happening, but on another level, you are on a sort of autopilot. Your hands fly across the keyboard, both like they have a mind of their own and like they’re a direct extension of your thought.
This complete infatuation means all long-term considerations are pushed to the edges of your mind, and the short term is all that remains in focus. Getting the thing done. Getting a solution – any solution. Finding, perhaps making, a solution for the problem identified.
Often, this state is enhanced by a stimulant like modafinil, nicotine, or caffeine and a questionable amount of greasy food of little nutritional value but that provides convenience as not to detract from available cognition. 1
This isn’t sustainable, but neither is the flow state; it might last a few hours or days at most during something like a launch, user influx, hackathon, or game jam, but it is doomed to lead to the eventual decay of cognitive performance as a result of exhaustion that indicates one must break out of the flow to dodge the impending crash/burnout.
This sort of flow is a cognitive trance and hard to break. Distraction is a threat, but unless the distraction is overwhelming or unavoidable, there is very little more interesting to the mind once properly set on a problem.
Alternatively, you can hit an unavoidable roadblock. You’ll try at first to avoid it, to find another way around, but this is an issue that you cannot skirt, and that brings everything to an unfortunate halt. You must either wait on someone else or engage on a bigger side-quest that requires much more careful consideration.
This is unfortunate, and a disappointing snap back into reality, but does occur. The much more ideal ending to a flow state is the relief that all has been overcome and that the goal has been achieved, at which point one can let off the gas and recover.
Sure, there may be things that need handling later – loose ends that need tying up or cutting off – but the bulk has been completed. That which is left is trivial, or at the very least intellectually insubstantial, although potentially tedious.
This flow state isn’t exclusive to development; I can personally reach it when designing, when there are many people relying on me, such as during a live production, or very rarely when writing, but I’ve heard it mentioned by plenty of people in plenty of contexts and occupations.
It seems to manifest in times of high stress, 2 regardless of objective or activity. Namely, when one must MacGyver 3 a solution to an urgent or impending problem.
It is a temporary state, and one that is only triggered to its fullest in certain circumstances. A state where you are able to let your mind run free on a problem. To really sink your teeth into something properly difficult while under pressure and experience the overwhelming sense of accomplishment when you achieve your desired outcome is exhilarating. It truly is a wonderful, wonderful high – at least if you pull out of your exertion nosedive before the impending crash.
Footnotes
-
Music can also very much enhance the state. Personally, I find Japanese jazz fusion to be ideal thanks to its often instrumental nature, which minimises distraction, and its upbeat, quick pace, which maintains a sense of energy and ‘funk’. Masayoshi Takanaka and Casiopea are some of my favourite artists in this realm.
The soundtrack of the 1995 film Hackers, specifically Halcyon And On And On, perfectly captures the feeling. In fact, the trippy, fly-by visuals that mesh together into something cohesive while the characters drop line after line, putting together piece after piece, set to the pumping 90s tunes, really enforce the film as a whole as perhaps the best depiction of the flow state as I experience it. ↩
-
This stress can be external – such as that imposed by a job or deadline – or self-imposed – such as that imposed by an overwhelming want. ↩
-
For the uninitiated, MacGyver is a fictional character who consistently finds himself in dire situations without much hope. He reliably manages to escape by the skin of his teeth thanks to his spontaneous bodging together of a crazy yet ingenious solution, usually at the last minute. For such examples in the context of technology, see r/TechSupportMacGyver. ↩