Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

People always need concentration during work tasks, but i feel programming requires even a higher level. In general my biggest problem is getting distracted by my articles feeds, but i also give it a lot importance to keeping up to date.

  1. What are recommended habits or tips to avoid distraction during long programming sessions?

  2. How to keep up to date with technologies without investing a big amount of time reading and browsing?

Thanks in advanced.

share|improve this question
1  
This will be better suited for programmers.stackexchange.com –  SWeko Jan 19 '11 at 9:06
add comment

migrated from stackoverflow.com Jan 19 '11 at 9:07

This question came from our site for professional and enthusiast programmers.

closed as off topic by Mark Trapp Dec 6 '11 at 0:39

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

5 Answers

up vote 25 down vote accepted

Biggest distraction for me is that e-mail think that pops up in the corner.

So I read e-mail three times a day.

  • In the morning.
  • Just after lunch.
  • At around 4:45 I turn it back on until I go home.

There is no e-mail that is so important that it can't wait half a day. If there is a crises they can come and knock on my door (its usually open).

In addition I try not to read Stackoverflow more than once a day at work.

Meeting are a big distraction. So I block off large chunks in my calendar for work so that people can't arrange lots of scattered meeting that involve me. Instead of scattered meeting randomly through the day try and get them all grouped at the same time. But I try and reject all meetings on Wednesday (no meeting Wednesday).

I let important people see the blocks as work blocks so that they can schedule a meeting knowing I can make it if required.

To try and organize myself for the next day. The last thing I do before I go home is write down what I managed to accomplish that day; and also make a list of things I would like to accomplish the next day (based on what happened today and how open tomorrow is).

I have not found an easy way to keep with technology without reading.

The best I can say is that I try and learn a new language every 18 months. I am always puttering around building a little app or tool so that I can apply the last thing I read about. I find that without kicking an idea around with real code that I quickly forget the idea.

share|improve this answer
8  
+1, e-mail is the major distraction, yet few people seem to grasp it. –  Jas Jan 19 '11 at 9:22
    
+1 I use a Kanban board to help focus me, e.g. I have a specific check email task 3 times a day. –  Martijn Verburg Jan 19 '11 at 10:50
add comment

Browsing the Internet was (and still is) a particularly time-consuming distraction for me. Here's why. To deal with it, I found a particularly useful Firefox plugin - Read It Later. To use it, you need to set up a couple of rules for yourself:

  1. Whenever you come across something interesting, but not directly related to your work (directly being the key word here, where I personally fail the most), you click a neat arrow icon to store that link for later.

  2. Regularly (from once a day to once a week) spend a little time check your reading list: read away some of the articles and delete those that no longer grab your fancy. When you you do so, don't read articles you added today - tomorrow you may lose interest and save yourself some time.

share|improve this answer
add comment

A technique I found useful in fighting disractions (mostly browsing the internet) is called (10 + 2) * 5.

Basically you work without any pause (any!) for 10 minutes. Then you give yourself 2 minutes for whatever you want. Repeat it 5 times and you get 50 minutes of work within an hour. Now you can take a bit longer break to stand up and move a little. Then repeat the process.

There are even small apps that will do the timekeeping for you and nag you if your breaks are too long ;)

See: http://appsapps.info/instantboss.php for example.

share|improve this answer
add comment

I use a few tricks.

I work in a crowded room, so I always put up my headphones for canceling out all the distracting noises.

besides that, I use the pomodoro technique wich basicly blocks your time in 25 minutes of fully concentrated work and 5 minutes of break in between. It worked wonders for me.

share|improve this answer
    
I don't necessarily do 25/5, but I do the same thing... I focus on a problem (or a couple in a row) then I take a "break" by checking SE/SO, news sites, etc. –  WernerCD Jan 19 '11 at 14:07
add comment

I make it a habit to set time frames like of 2 hours . if i feel like distracting and i see the time isn't up then i force my self to work. This really work for me. That may also lead to 3 to 4 hours of work automatically.

i am really interested in what new in the market ,trends ,what has google launched so and so on so i visit here really often , it give me quick insight.

http://techcrunch.com/

You can find anything like that.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.