|
You have to remove ALL distractions. Set yourself a time to do email, twitter, HN, return client phone calls, then put then phone to answer phone, and turn everything else off. Especially that growl thing. Close all windows that arn't for your immediate bit of work. An exception to this might be if you work to music. Personally I find a low volume, vocaless music, helps you not get distracted by minor noises like doors slamming in other offices or traffic passing by. You have to have at least an outline plan of what you want to produce beforehand - not the HOW, but having done some research before your high productivity time definitely helps. Basically, get stuff queued up. I think it helps to know that your concentrated period will end. For some this would be a 25 minute timer, but I think something more like 2 hours is best. Maybe 11 til 1. Then go for lunch for an hour, then do another 2-4 session. I think knowing you'll stop and being doing something else during a break, concentrates your mind on the job in hand, and it knows you don't have to worry about lifes other things at the same time, as you can do them later. I think I like the idea of pairing up with someone else who has also removed distractions. Helping each other to keep momentum up, and every time something unknown happens, doing the api lookup before the main coder needs it would be awesome. Then switch the role over regularly. hth. Just random thoughts really. In reality most of the time I'm distracted by traffic noise, other people chatting about other projects I've worked on when I'm trying to work on another, people going off on tangents - probably because there's no allocated time in the week for actual research & training. And the bloomin phone. Support is essential, but completely takes me out of the zone. |