I read a really interesting article this morning on flow state, that magical state of mind for developers where you’re insanely productive and whip out tonnes of code. The author refers to it as nirvana, and he’s right.
However, he also states that isolation is necessary for flow state – that interruptions are poison to it. I disagree.
I work in an open seating plan with intermittent interruptions and talkative coworkers. Yet I’m able to consistently achieve flow state.
How?
By choosing to.
I make a mental choice to get into that headspace, and then I apply that choice to my work. It’s not easy, but it’s necessary. The author of the article points out that the isolation of flow state is contradictory to making awesome products because of the isolation it requires from clients and coworkers. I’ve managed to get the best of both worlds: interaction with the client and other team members, and insanely productive coding sessions.
As software developers, we’re paid to think. That being the case, we ought to get good at thinking and getting into the right headspace. It’s time to confront needing hours of uninterrupted time alone to be productive – you can be productive in team environments. You just have to try.