Health and Safety
RSI on The Changelog podcast
I’m catching up on podcast listening and finished Changelog Episode 423 with Josh Comeau where he talks about how Repetitive Strain Injury (RSI) basically left him unable to write code using his hands.
Josh was (is still) not in the lucky position that it just went away after a few weeks of reducing keyboard time, so he came up with a system that leverages eye tracking and voice recognition to replace the need for his hands as much as possible.
I have crossed paths with RSI, too. As well as with other pains coders are prone to suffer from. Below’s my take on what now do to prevent injuries and what helped me to recover.
RSI - a coder’s nightmare
So what is RSI exactly? Well, there is not “the one” RSI. The term rather describes a whole set of injuries that can occur when muscels and sinews are doing the same movement over and over again over a long period of time. The chance of catching one also increases if the respective parts do not get much other “workout”.
Probably the medical condition in this area known to most people is Carpal Tunnel Syndrome (CTS).
It comes down to
[…] numbness, tingling, or burning sensations in the thumb and fingers, in particular the index and middle fingers and radial half of the ring finger, because these receive their sensory and motor function (muscle control) from the median nerve. Ache and discomfort can possibly be felt more proximally in the forearm or even the upper arm.
Source: http://en.wikipedia.org/wiki/Carpal_tunnel_syndrome
If you have these symptoms you should act immediately and see a doctor. Untreated the condition can worsen to a point where it can only be treated with surgery or it can even become cronical.
My experience with RSI
Non-coding related
I don’t think there’s a coder who hasn’t experienced some form of RSI when only they have been working in the field long enough.
Same goes for me. However the first injuries did not stem from working on the keyboard. I played basketball in my younger years but had to quit doing so due to a ganglion cyst in one of my wrists. Which, according to the doc, was most likely the remainder of a small wrist injury that went unnoticed.
The result was that just dribbling for a few minutes made my hand hurt like hell - especially on the following days.
Keyboard work
A few semesters into university I had the first problems with RSI related to coding. I was using the cheapest keyboard money could buy and also the university labs were not made with ergonomic design in mind - at least not hand ergonomics.
So at some point I felt my hand started to ache after longer coding sessions and the pain came back earlier the next time and lasted longer.
I reduced the my time at the keyboard and things got better. Still this was not a long term option. So I started searching the web for this problem and stumbled over ergonomic keyboards.
I finally bought one from Microsoft via ebay and this solved the issue - until I started my first job.
Also there no one saw the need for ergonomics and I was left with a standard Cherry keyboard to hack away during the working hours. Surely the pain returned.
Also here after getting an ergonomic keyboard things turned back to painfree again.
Mechanical is hip
A few years ago mechanical keyboards had their comeback in the gaming world and more and more people also recommended them for coding, praising the advantages of less strain on the hands for touch typers.
Mechanical but non-ergonomic
Ever happy to try something new I bought a Corsair K70 with MX Brown switches (I also tested MX Blue, but was stressed by the noise level after only a few minutes).
Things went so smooth with this new typing device that I bought another one to replace also my work keyboard.
It took a few years and a new job for the pain to come back, but return it did.
Mechanical and ergonomic
I didn’t want to go back to rubber dome keys, but ergonomic mechanical keyboards were few and expensive as hell.
So the first option I tried was staying with a non-ergonomic keyboard but use a ten-key-less version, to remove the moving strain an better position my arm and hand when using the mouse.
This did give me some relieve but turned out not to be enough.
So at work I managed to persuade my employer to buy a Kinesis Advantage 2 as part of a raise.
This changed my whole typing experience. It took a good three weeks to get used to the layout and configuration changes I made but I was able to type the whole day without the pain ever coming back.
However, I wasn’t really willing to shell out this money myself for only a few hours per week of typing at home.
So I started looking around for cheaper alternatives and finally found X-Bows. I remember seeing it on a tweet and asking for some details on it and not taking long on the decision to buy one.
I’m absolutely happy with the investment I made there. It’s a solid keyboard with only one negative point and that is, that the keys are not translucent and the backlight is basically there for nothing. Still the typing experience is great and it combines mechanical keys with an ergonomic layout at an unmatched price tag.
Since I have an ergonomic keyboard at each of the two desks I regularly work at I’ve never had RSI issues again.
Other pain points
Disclaimer
I’m writing the following lines fully aware of the fact that coders appear in all shapes and sizes. They also appear with all kinds of physical and health conditions that are often referred to as “disability” or “limitation”.
Please consider the following text to originate from a person who is not forced to use special equipment due to a temporary or permanent medical codition.
Eyes
Having graduated from a University of Applied Sciences with a center for students with impaired vision I learned - if only second hand - how difficult coding must be without being able to view structures and get a first hand impression of visual representations like UML diagrams.
So to everyone who considers themself having “normal” vision. Try to keep it this way. Position your monitors correctly and consider wearing screen glasses.
When I started experiencing strained and burning eyes at work my first impuls was to get some eye drops. I thought it was just the dry office air. Only after I spoke to my doc about it, she recommended looking into special glasses.
I ended up buying some from Gunnar and rarely spend time in front of a screen without wearing them - no eye drops needed.
Neck and shoulders
There is not much you can do here apart from correctly positioning chair-, desk- and screen hight. They need to match up correctly to keep your neck and shoulders in a relaxed position.
Check this simple explanation from the Mayo Clinic
Back
Do yourself a favour and buy a proper chair.
I say that from hard and painful experience. I suffered from an aching back already starting in my teen years and had a light form of disk herniation during my military service.
Only after investing a small fortune of about 350 EUR (I think) into a proper chair at my home desk and making sure my employers provided me with proper seating options at work has my back never made problems again.
I prolapsed disk is nothing funny and if that occured once it is likely to come back.
I addition to a proper chair I have now also upgraded my home office desk with a rack that is electrically adjustable in its height. So now I can - at least when working from home - spend part of my day in a standing position, giving my leg and back muscles some workout. These racks start at around 100 EUR and that is something every coder should consider to improve/keep their health in the long run.
Got feedback?
Anything you’re doing to keep your body in working condition that isn’t mentioned here. Let me know on Twitter :)