Coding Horror

programming and human factors

Programming Your Hands

Software developers, like pianists, rely on their hands to practice their craft. I've used a keyboard and mouse obsessively since my early teens. Fortunately, I have never had any problems with hand or wrist pain – nor have I experienced any Repetitive Stress Injury, which includes carpal tunnel syndrome. But others aren't so fortunate.

So what can you do to keep your hands and wrists strong under the duress of extreme computing?*

Get some exercise

Real exercise. Surprisingly, this stuff is good for you, or so I'm told:

Want to be a little smarter? Have a better memory? Stay mentally sharp? Improve higher brain function? Run. Those who exercise have a mental advantage over those who don't.

"…exercisers showed significant improvements in the higher mental processes of memory and in "executive functions" that involve planning, organization, and the ability to mentally juggle different intellectual tasks at the same time. What we found so fascinating was that exercise had its beneficial effect in specific areas of cognitive function that are rooted in the frontal and prefrontal regions of the brain."

The brain-boosting (and prevention of brain decline) effects of physical exercise have been studied nearly to death. The confusing part is why so many humans do not exercise.

I once took a class in college taught by a clinical psychiatrist. He believed so strongly in the connection between physical health and mental health that he forced all of his patients to undertake an exercise regimen. And his classes, too. Part of our grade was determined by a weekly exercise journal. In the journal, we recorded what exercise we chose, and how we felt before and after. And I'll be damned if I didn't feel better after exercising – every single time!

Of course, talking about the many benefits of exercise is easy. The real difficulty is getting over the inertia and actually doing it regularly. We geeks have a certain way of approaching exercise that's … unique.

Vary your working position

It's called repetitive stress injury for a reason. Try changing things up on a regular basis:

If nothing else, just take a break to stretch every hour or so. Some of the carpal tunnel prevention stretches are pretty quick and easy to integrate into your day.

Some carpal tunnel prevention stretches

And it might be a good idea to use a different mouse and keyboard at home than you use at work, for variety's sake. It's not just fun to experiment with different mice and keyboards, it's healthier, too.

Exercise your hands

Now we get to the fun stuff.

Crazy Aaron's Thinking Putty is my all time favorite desk tchotchke. They have some new super illusion colors that are amazing.

Crazy Aaron's Thinking Putty

Putty is a fascinating, endlessly malleable toy; it's also a legitimate form of hand exercise. And there are lots of cool experiments and tricks you can perform with it, too.



The Powerball is another hit at the office. It's a major gyroscopic hand workout.

Powerball in Neon Blue

Be sure to get the model with the RPM readout, because you'll have a lot of fun challenging co-workers to see how fast they can get it to spin. Once they try a few times, they'll have no doubt that this little gyroscopic toy is a serious hand, wrist, and forearm workout! The only downside of the powerball is that it's a little noisy.


The Gripmaster is another popular hand exercise device. It was originally popularized by climbers who used this tool to strengthen their holds. But it's also useful for anyone who works with their hands. It comes in several spring strengths.

Toys, particularly those with therapeutic value, are fun. But if you're experiencing pain in your hands or wrists while programming, you should take it very seriously – it's one of the few things that can put you out of commission as a programmer.

* I am not a doctor. I'm just some random guy on the internet. So take this advice with a grain, nay, a warehouse full of salt.

Written by Jeff Atwood

Indoor enthusiast. Co-founder of Stack Overflow and Discourse. Disclaimer: I have no idea what I'm talking about. Find me here: