views:

165

answers:

5

My experience as a developer is that many projects or tickets are a mix of a short and focused very interesting task (e.g., designing some API or a platform to solve something) and a lot of repetitive and mundane tasks that cannot be automated (such as certain refactorings to use the API or platform, implementation of certain tests, some GUI handling, etc). I believe that this is the nature of our profession, unless we are high-level architects or managements and can delegate this work.

The only item in my personal arsenal when dealing with these tasks is to devote some of my attention to radio or audiobooks (preferably not in English as I find it hard to concentrate on two "streams" of English at the same time). I maintain sufficient attention to carry the task and don't lose concentration as fast.

I'm wondering how others cope with these and maintain concentration.

+1  A: 

"a lot of repetitive and mundane tasks that cannot be automated"

I find it very smoothing and comforting, which is why I love programming so much.

"a short and focused very interesting tasks"

Which is why I LOVE PROGRAMMING so much!.

Therefore, it is easy to concentrate on the details. It is just a game, puzzle if you will, that I love to play.

AMissico
+3  A: 

Compiling is mundane, so I deal with it like this:

alt text

But actually, I listen to music when I am doing something repetitive. It helps me get in the zone. Something else that I also do is taking short breaks. Either to clear my head and walk around, or to focus on something different for a while - like read a bit of a programming book (currently I'm reading Effective Java 2nd ed, and Clean Code), or maybe check out a programming blog, or even check out youtube or something silly for a while. It ensures that I don't get too bored and annoyed and clears my head enough to get back to the mundane task and knock it out.

Also, if it's automate-able, I'll write a script for it :).

Vivin Paliath
A: 

Anything that I have to do more than once, I automate.

Thus, my mundane/repetitive tasks turn into automation tasks, and I never have to do anything more than once.

Seth
The problem is that not everything can be automated. There are certain tasks that are slighly beyond the monkey level but still demand human intervention. For example, refactoring where you have to reason about the code to figure out what to invoke as a replacement.
Uri
Yeah, sometimes automating is more fun than the work you're supposed to be doing anyway :D
Adam Neal
I know. But as engineers are goal is to solve engineering problems in a timely manner, not to necessarily have fun :)
Uri
Software engineering is merely a sophisticated form of procrastination.
Seth
+2  A: 

As has been said already, "Anything that I have to do more than once, I automate."

However, there are mundane or boring tasks that aren't 'automatable' (or would take too much effort, or whatever). Most of the time while I am programming, I have several windows up. If I'm working on my own linux boxes I'll have up at least one terminal, several emacs windows, and firefox. At work I'll have firefox, thunderbird, visual studio, and sql server manager.
The common thread here is firefox - I have several tabs within the browser that I keep open, and on the long boring repetitive tasks not only will I have music playing, but every few minutes I will flick to my gReader, personal e-mail, or a forum. It may not sound like it does much for concentration, but the way my mind jumps around when I'm dealing with a mundane task it's already pretty much a subroutine; doing relatively thoughtless things such as forum-going, deleting unwanted emails, or reading my latest nerdy rss entry keeps me from becoming so bored I just stop, and also lets my mind chug away on the details of the task at hand.

Zind
A: 

As an almost aside, you may have adult ADHD. Thought about getting tested? It's not really a stigma anymore and there are many ways to deal with it. ADHD is an evolutionary trait, not a biological defect, that sometimes leaves those with it at a disadvantage in some areas, and many advantages in others. Repetitive work is one of the former.

-Oisin

x0n
"ADHD is an evolutionary trait, not a biological defect." I agree with this completely.
AMissico
I don't think you need to have ADHD to get bored or lose concentration when you have to repeat a task 500 times and cannot automate it... You just have to be human :)
Uri
but if you cannot help yourself findingt something else to do at the expense of potential job security, you might have ADHD ;-)
x0n