The programming “zone”. Fiction or myth?
The programming craft
Programming is a creative process. Despite the technical nature of programming codes, the process of coding is involves a lot of creative thinking and problem solving. Paul Graham talks of “Hacker and Painters” and compares the work of us code ninjas to the creative process of painting. And like all other creative task you require a certain amount of “flow” to get going with it. Many programmer talks about “getting in the zone” where once they get their flow going, productivity soars and work that has taken a few days to figure out suddenly seems easy and is done in a matter hours.
Getting in the zone
What do you do But how true is “the zone”? Is this a guise in which we programmers procrastinate under? Do we truly belief that “just one more turn” of civilization, or that “one more level” deeper in nethack is really going to make us have a clearer head to code with?
I myself is a believer in the zone. I code my best late at night blasting Metallica through my headphones. And when I was stuck, an hour or two at gaming would be the answers. It worked well enough when I was doing it. But now I that I got a family, staying up late is no longer an option, my wife have to wake up early to go to work and the computer is in the bedroom. My new job also means that I can’t keep the hours that I used to. So now I have a small window of time after dinner and before bedtime that I have to code. I HAD to do it then because I would never have the time to do it at any other time. But still the code flow and work gets done. There maybe a few times when I have “coders block” and can’t think of a solution. I would then wrap up the day’s work and continue tomorrow. But then again even in the old days of midnight coding sessions I would also come across some speedbumps every now and then.
Another example is when dateline is near. Even if you never had a change of lifestyle that requires you to suddenly change your coding schedule, almost everyone have at one point or another be on a tight dateline. And no matter if you are in the zone or not. If the dateline is tomorrow, you still get stuff done at crunch time. So why does suddenly the zone doesn’t matter. Is it an illusion that we put up to justify our laid back approach and procrastination?
Fiction, myth or excuse?
Of course a quite environment that allows you to work without interruptions are essential for doing out work. So is a good tool for your job, for example a big, quality monitor for a designer to work on or a good IDE for the coders. But how do we justify arcade cabinets or networked starcraft sessions during the day or a trip to The Dark Knight Showing during work time.
Do you belive in getting in the zone? Do you have to do anything special to get in the zone? Do you think that it is about time that we own up to our procrastination and stop using the excuse of trying to get into the zone to avoid work.
Pictures from davestfu
Updates
7th Aug: I’ve a a few reddit traffic, courtesy of this,that saying that I am “claiming false dichotomy”. I’m not claiming any dichotomy at all. In fact the opposite, I’m saying that may be we could own up to our own lack of motivation instead of hiding behind the excuse of not in the zone. I still believe you have to be in a good environment to be able to code and a quite place to work with no distraction is a must and that will contribute a lot to being able to be in the zone. But sometimes work is work and it is tedious or boring and we just have to do it and if you set up conditions that are conducive to working then the flow will come.
Sorry for not being able to convey that message clearly.
| 3.4 (2 people) |







Absolutely. I don’t think of the zone as a mystical thing. However, it is easy to understand the benefit of a continued concentration, rather than one broken by interruptions. Programmer productivity can be demolished for an entire day by a series of tiny interruptions at twenty minute intervals.
6 August 2008 at 11:00 am