Sabotage Due To Pain. Developers, Take Ergonomics Seriously!

0 comments suggest edit

At the end of an average eight-hour workday, the fingers have walked 16 miles over the keys and have expended energy equal to the lifting of 1 1/4 tons. - DataHand

Diagram And that’s just for a piddly eight hour workday! What about developers who go home and write more code for fun?

Around three years ago I wrote a post titled The Real Pain of Software Development Part 1 in which I talked about my experience with Repetitive Stress Injury (RSI). Because of the pain of typing at that time, I never really got around to writing part 2 until now.

So why am I bringing up this subject after all these years? Yesterday, I was reminded again about just how important developers need to take ergonomics in their daily work life.

As I wrote in that post, years ago, I suffered from a lot of pain when writing code. I started going to Physical and Occupational therapy which helped immensely.

During that time I went out and bought the best chair I could find, despite the high cost. (Note that the best chair for me might not be the best chair for you due to differences in body types. Jeff Atwood mentions theSteel Case Leapas his favorite in a post that highlights the importance of a good chair to a developer’s productivity.)

Along with the chair, I bought a good keyboard, a keyboard tray with an articulating arm, and a trackball and made sure it was configured in a way that was comfortable for me and ergonomically sound.

And over time, I got better. In fact, I got much better.

At that point I vowed to never to skimp on the tools I needed as a developer. As Jeff points out in his Programmer’s Bill of Rights,

It’s unbelievable to me that a company would pay a developer $60-$100k in salary, yet cripple him or her with terrible working conditions and crusty hand-me-down hardware. This makes no business sense whatsoever. And yet I see it all the time. It’s shocking how many companies still don’t provide software developers with the essential things they need to succeed.

I realized that not every company will follow through on this reasonable advice, so I took it upon myself to make sure I have what I need personally.

In the past several years, I’ve worked alot more from home due to my open source contributions. In the past two years, I worked full time from home. I made sure that I had the best quality setup for me possible. Better than any other employer ever provided. To the items I mentioned before, I added two very bright and sharp LCD monitors which reduce eye strain. This setup is finely tuned for me and the way I work.

Which brings me back to yesterday. It was my first day of work at my new company and naturally, the workstation has not had the opportunity to be configured by me, through no fault of my employer. My requests for a new keyboard, trackball, and keyboard tray were all approved. I plan to bring in my own chair because I have two Neutral Posture chairs at home. I don’t screw around with my equipment any more.

Unfortunately, after just one day I am having trouble sleeping due to pain in my hand and back.Shoot, I need to get up in three hours!

Yeah, I know what you are thinking. What a freaking wuss!

But no amount of macho posturing changes the fact that some people, for better or worse, are more prone to these type of injuries than others.

I wish I could remember his name, but there’s a very famous software developer world renowned who cannot type for himself. He has others type for him. I’m sure someone will remind me.

What my Occupational therapist taught me is that my recovery is based on a delicate balance. Upsetting that balance can bring back a lot of pain. In my case, I will never fully be free from pain while working. But through therapy, I learned techniques to reduce the pain as well as deal with it better.

As fortune would have it, this was around the time I received a private office, so it was less of a spectacle when I would get on the floor with a foam roller and do my stretches every couple of hours.

The pain had gotten so bad, there were days I could barely type a line of code, instead finding ways to be productive without coding. I started to wonder about my future, or lack thereof, as a software developer.

My recovery allowed me to not only work through a normal day productively, but actually start putting in extra coding effort in the evenings as I started to contribute to RSS Bandit and eventually start the Subtext Project.

I became even more productive than before, working day and night at the computer. A stark contrast to when I could barely type a single method of code. I could never have started Subtext if it weren’t for the therapy. For that, I am eternally grateful to the occupational/physical therapists at UCLA medical center.

So if you experience a lot of pain while developing, don’t be a hero. Be smart about it and seek information and help. The pain could be the thing holding you back from your potential.

Found a typo or error? Suggest an edit! If accepted, your contribution is listed automatically here.



30 responses

  1. Avatar for Sean Chambers
    Sean Chambers May 14th, 2007

    Its funny you should post this today.
    Over the last two weeks, I have started to notice a burning pain in my index fingers around my knuckle and first joint (mainly my left index finger). After going to the doctor I was told that it is the start of arthritis.
    This really stinks as I am only 26 years old!
    I attribute this mainly to the fact that I type with my index finger more than I should instead of using the proper fingers for the proper keys.

  2. Avatar for rush
    rush May 14th, 2007

    I wasn't able to finish reading the post due to the huge dildo pic you posted. Everyone is thinking it... im just saying it.

  3. Avatar for matt
    matt May 14th, 2007

    the further I got down this page... the more I sat up straight and moved my monitor closer bit by bit.
    every now and then I realise I am slumped over my desk like the prehistoric ape... doesn't take long to find yourself back in this position either.
    oh well... nice post.

  4. Avatar for The Other Steve
    The Other Steve May 14th, 2007

    Second on all of this.
    Back in '99 I bought a Herman Miller Equa 2 chair. Mainly because I wanted something comfortable, and the $200 officemax specials would break after 1-2 years and i was tired of that. The Equa has been a very comfortable chair, but the bottom seat pad is now showing wear.
    The local herman miller dealer will reupolster it for $100. So I'm going to do that, and set it up as my girlfriends chair. This then allows me to buy something new for myself. I've been looking at the Aerons. I also looked at the Humanscale Freedom.
    I'm going to have to go look at the Steelcase Leap though.
    One of my main things... I like to lean back. Chairs which tilt from the center are bad, I prefer the tilt from the front of the chair like the Equa or Aeron. I also find a higher backed chair is more comfortable.

  5. Avatar for Scott
    Scott May 14th, 2007

    It took me until I was 35 years old to start to have any pain in my arm. It's in my right, but I place the blame solely on the crappy desks and chairs my employer provides. Usually after about 2 hours of work, the pain is annoying enough that I stop. I take the laptop out to either the cafeteria or the foyer where the nice chairs are and remote into my workstation. Sometimes I'll just change my chair position and use the laptop in my office.

  6. Avatar for Haacked
    Haacked May 14th, 2007

    @rush - ROFL! Thanks for burnishing that image in my mind the next time I'm rolling on the floor with the roller.
    @The Other Steve - Yeah a good seat pan is key. Mine is Tempurpedic. :)
    @Scott - Make them buy you something better man! It will save *them* money in the long run.
    A lot of employers mistakenly think that developers who complain of pain are trying to get out of work. That's just not true. We want to be as productive as possible.

  7. Avatar for The Other Steve
    The Other Steve May 14th, 2007

    One more thing. I don't usually have pain in my arms, hands or anything. But I did for a while about a year ago. That is, until I realized all the pain was caused by the Microsoft Notebook mouse I was using.
    It's amazing how long it took me to realize it. I'd use my desktop with a Logitech G5 and have no problem. I'd sit down with my laptop and after an hour my arm would hurt. This went on for like six months before I realized what was going on.(dum dum) So I finally bought a G5 to use with my notebook.
    I'm also a fan of the keytronic keyboards, namely the lifetime series.
    And one more thing, I find most desks are too high... at 29". It's better if they are down around 27-28". I can't use keyboard trays, as then I'm whacking my knees on them.
    Also it's better to have your monitor up at eye height, so you don't have to crunch over. I wrote up more at my blog a few months back.

  8. Avatar for Don Patterson
    Don Patterson May 14th, 2007

    I do not understand--why do you quote the DataHand web site and provide a link; yet, you do not talk about using a DH keyboard??? The chair is only a small fraction of the issue. I can have the best chair in the world, and I still cannot work more than a half day on any other keyboard. I have been using a DH keyboard for close to two decades and could not function without it.

  9. Avatar for Ogre
    Ogre May 14th, 2007

    I don't get it. I'm like 34 and I've been programming since I was like 10 and I still haven't had anything like this happen to me. I slouch. I use a crufty old Dell QuietKey keyboard (the white ones with the REAL springs under the keys, not those new junk black ones). I sit in a 60's era Men In Black style chair. My desk is a drafting table so my screen is waaaaay farther away than it should be.
    Am I a mutant? Did I start coding so long ago by body adapted before it was finished developing? Or maybe I'm just able to relax better durning downtime?
    I refuse to believe any of my questions so there must be something I'm doing that you guys could do that would allow you to go back to programmer posture (slouching) and not have to use those evil ergo-keyboards.
    Off topic, but I've decided one of the best ways to keep people from using your computer is to replace your normal keyboard with one of those finger-tanglers/ergo-keyboards. How can anyone type on those things? I have to switch to two finger typing...

  10. Avatar for Jeff Atwood
    Jeff Atwood May 14th, 2007

    Just so you guys know: a good chair runs $700++. And you'd be crazy NOT to buy one.

  11. Avatar for Haacked
    Haacked May 15th, 2007

    @Don - Because I don't use the DataHand. I have nothing against it, I just like the GoldTouch keyboard. It works for me. However their research is quite good and quoteworthy, don't you think? :)
    @Ogre - I did briefly cover this, but should have said more:

    But no amount of macho posturing changes the fact that some people, for better or worse, are more prone to these type of injuries than others.

    The converse is true. I've known developers who were positively Neanderthal in their posture, jabbed at the keys like a Jackhammer, and held the mouse with a kung-fu grip, yet had no problems.
    While I know of other devs who do everything right, and still have pain.
    It's not necessarily that you're doing something right, or that those with pain are doing something wrong. Some people are just more prone to it.
    For example, I can run miles and miles with blisters on my feet without much complaint. Whereas I know others who run 10 yards and collapse from the intense pain of a tiny blister.
    Just luck of the draw I guess.

  12. Avatar for Scott
    Scott May 15th, 2007

    "Am I a mutant? Did I start coding so long ago by body adapted before it was finished developing? Or maybe I'm just able to relax better durning downtime?"
    Well, I'm about 6'4" in a world made for 5'9" men. Most of my pain comes from having to use the mouse at an odd upward angle with my wrist resting against the edge of the desk. By the time I get my chair and monitors jacked up so I can put my feet on the floor without bending my knees, my knees hit the edge of the desk and I have to sit back from the desk and lean in to type. It's a mess so I usually just remote desktop in from my laptop, kick back, and put my feet up on my desk.

  13. Avatar for Rick Strahl
    Rick Strahl May 15th, 2007

    Phil one other thing to consider is external activity. Not taking away from those inclined to have these symptoms, but moving hands, arms and getting blood flow through them on a regular basis probably has something to do with this as well.
    I often code for 12 hours straight with no issues, but it's not always been this way. A number of years back I remember very frequently having wrist and hand pain at the end of a day but at the time I was somewhat less active.
    One thing that has helped me immensely ( I think - can't really be sure, but ever since I started the symptoms are gone completely ) is Yoga which includes various poses that deal with blood flow to the lower arms. Nothing extensive, but I think just hte general practice of getting blood moving through the body and especially into the extremities can help tremendously to avoid repetitive motion injuries.
    Just a thought.

  14. Avatar for Dan Monego
    Dan Monego May 15th, 2007

    The famous developer that types by proxy is Richard Stallman, but I think he's better now.

  15. Avatar for Haacked
    Haacked May 15th, 2007

    @Rick - Definitely getting blood flow moving is important. That's probably part of my stretching routine.
    But also consider that I was having these problems when I was playing basketball 3 times a week and soccer twice a week. So lack of activity was not my issue.
    The body is interconnected in many ways. For example, my head would kind of jut forward which caused my shoulders to tense, putting pressure on the nerve that runs through the elbow to my wrists. So a lot of my wrist pain originated from my back and shoulders.

  16. Avatar for The Other Steve
    The Other Steve May 15th, 2007

    I went to look at the Steelcase Leap chair tonight. I'm sold. I'm going back to buy one tomorrow.
    This was at Target Commercial Interiors in Bloomington, Minnesota. $625, out the door in black. Other colors had to order, but the same price.
    That's nearly $200 less than I found at any online stores. It's interesting to see a mass merchandiser like Target get into office furniture.

  17. Avatar for Willie Tilton
    Willie Tilton May 15th, 2007

    I have just this year started having problems. Mainly my right hand, and my right shoulder. It got to so bad that it felt like sandpaper was grating in my shoulder every time I would move the mouse. I've started using a trackball at work, made my work buy me an OK chair, and have a keyboard tray that goes up and down. Since then, nothing has gotten worse, but nothing has really gotten better. I notice that at home where I have none of this setup it makes everything worse really quick. 600 bucks for a chair...I'll probably have to sell my two kids.
    I have been thinking about upgrading the home office though. Hopefully soon. It has actually made me not want to get on the computer at home, the only time I do my "hobby" coding. Good tips though on both blog posts. I'll have to give some of those a try and see if that helps me out.

  18. Avatar for mark
    mark May 15th, 2007

    I wish I could remember his name, but there’s a very famous software developer world renowned who cannot type for himself. He has others type for him. I’m sure someone will remind me.

    You're thinking of rms.

  19. Avatar for Remmus
    Remmus May 15th, 2007

    I bet the stress all be it non perceived of starting a new job can't have helped you be relaxed at the keyboard.
    I'm hope things settle down when you get sorted and everything how you like it.

  20. Avatar for Nathan
    Nathan May 15th, 2007

    You might be thinking of Ben Wing.

  21. Avatar for mackstann
    mackstann May 16th, 2007

    I think a lot can be done without buying expensive products. My setup at work is very uncomfortable because the desk is so high. At home I work on a desk made out of a door, and my "chair" is an unused home audio subwoofer sitting on top of an old computer -- but it's very comfortable because the angles are all right.

  22. Avatar for Jeff Atwood
    Jeff Atwood May 16th, 2007
    Q. Do you have carpal tunnel syndrome?
    A. I never had carpal tunnel syndrome. I had hand problems.
    Q. Are you able to code now?
    A. Yes. Because it turns out my problem is not carpal tunnel syndrome, and the things that help it are not things that help carpal tunnel syndrome. It turns out for me a keyboard with a light touch is what I need, and I have keyboards with a light touch so I can now do my own typing. But I couldn't for a number of years. When I found suitable keyboards, and they're not funny shaped keyboards or anything, they're ordinary shaped keyboards, they just have keys you don't have to push very hard.

  23. Avatar for The Other Steve
    The Other Steve May 16th, 2007

    "It turns out for me a keyboard with a light touch is what I need, and I have keyboards with a light touch so I can now do my own typing."
    He was probably using an old DEC LK201 keyboard. Those things were horrible.

  24. Avatar for Euan
    Euan May 16th, 2007

    Jamie Zawinski wrote about his wrist problems here.

  25. Avatar for Jerry Kindall
    Jerry Kindall May 16th, 2007

    At the age of about 25 I started having twinges in my wrists after a long typing session. Not much later, I switched to Dvorak and the pain went away within a week. Contoured keyboard + Dvorak = crazy delicious.

  26. Avatar for Scott Kowalczyk
    Scott Kowalczyk May 16th, 2007

    Thanks for the post. I developed RSI after a death-march project 5 years ago and have been fighting it ever since. Most of my pain comes from using my mouse, and I even learned to mouse left-handed (insert Princess Bride reference here). Posture, a good chair, ice, therapy and 5 different pointing devices still haven't made cured me.
    My advice from my doctor was straight out of a Marx Brothers movie:
    Patient: "Doctor, it hurts when I do that!"
    Doctor: "Then don't do that!"
    So I basically quit tying to do anything about it, and just sucked it up. Then, I recently got a massage, and she was astounded in how little circulation I had in my arm. Now I'm worried about arthritis and am renewing my quest for a pain-free coding existence.
    I may end up with SmartNAV's hands-free mouse. It ain't cheap, but the plus-side is I'll probably end up looking like a Borg.
    Oh yeah, thanks for all your work on Subsonic, too. Less work, less typing, all good.

  27. Avatar for //engtech - internet duct tape
    //engtech - internet duct tape May 20th, 2007

    Tags: api, blog, blogging, business, career, community, firefox, humor, money, music, privacy, socialsoftware, software, startup, tips

  28. Avatar for protected virtual void jaysonB
    protected virtual void jaysonB August 26th, 2007

    I've been a longtime user and fan of Microsoft input devices (keyboard/mouse)...pretty much ever

  29. Avatar for dave^2=-1
    dave^2=-1 January 31st, 2008

    Sometimes when I'm working on something I'll get totally absorbed, lose track of time, and end up with

  30. Avatar for Devilish
    Devilish February 3rd, 2009

    Hi Frds,
    I have recently developed a severe pain in my right hand due to extensive use of numlocks keys. I really dont know what should I do to get this cured.Please can any one suggest something.