Last week, I couldn't type
Last week I couldn’t type. It hurt. Washing dishes hurt. Using a tablet hurt. I avoided talking to friends and family. I stopped coding. That is anything but coding fast.
Thankfully I saw a good physical therapist and am back at the keyboard, and although there’s still some pain there’s a clear road to recovery.
Let’s talk about RSI (Repetitive Stress Injury):
Disclaimer: I am not a medical doctor and lack medical training. This is for informational purposes only and should be discussed with a doctor.
If it hurts, find a physical therapist
If your arms hurt from coding, immediately talk to your dr about a physical therapist, especially one who knows about RSI or a sports physical therapist as athletes get similar issues. Don’t wait it out. Don’t settle for ibuprofen. Ask for a physical therapist. A good physical therapist will walk you through ergonomics, stretches, exercises, and treatment.
Shockwave treatment
RSI takes many forms. Mine is forearm pain due to soft tissue damage. Carpal tunnel, for example, is pinching of a nerve. For soft tissue damage, My therapist gave me shockwave treatment. It worked instantly for me, although not completely. There are also clinical studies showing it is safe and effective.
Arm stress budget
The best way to think about RSI is to create a “stress budget” for your arms. Blowing your budget means pain but more importantly a reduced future budget. Continuously blowing your budget means your arms will stop functioning. The exact calculus is complicated and non linear (typing 2 hour straight is worse than 1 hour twice with a break). The important thing is to think “do I want to spend my budget on this activity.”
Typing for work with good posture, yes it’s worth it.
Arguing with strangers on the internet with bad posture, no, it’s not.
Go nerdy on your setup
One visit to my physical therapist costs me $200 and 2 hours, not to mention the lost productivity of being in pain. And, I have to go back for more. Good equipment pays for itself, so buy the best you can afford.
Ergonomic equipment has one purpose: minimize stress on your arms while using a computer. It does this by making it easier to keep your body in an optimal position.
Ergonomic Position
This is what I’ve heard:
Back straight (easy with a supporting chair)
Head level (easy with a supporting chair)
Eyes meet monitor 2/3rd of the way up
Elbows at right angle to keyboard
Wrists straight
Legs straight and resting lightly
Equipment
Here’s some suggestions based on what I’ve used.
Chair
ErgoHuman. The chair should hold you up straight when you lean back into it. Personally, I like ones with a flat seat, full back support, and neck support and not all of them cost $700 like ErgoHuman.
Keyboard
Kinesis Advantage 2. This is the only keyboard I recommend now. I no longer recommend the Microsoft Natural 4000 except in a pinch. I’ve been developing hand pains from Tab+Ctrl(+Shift) to switch tabs in Firefox (my kinesis is on its way). I never had such problems with the kinesis.
Mouse
Kensington Trackball. Trackballs are easy on the hands and this one’s extra easy because its so large. Using a mouse should be rare anyways.
Footrest
Safco Adjustable Footrest. Adjustable height is a must.
Monitor arms
Amazon Basic Monitor Arms. These arms are a bit on the high end, but low end ones work well too. Monitor arms free up desk space and are perfectly adjustable. When sitting back in your ergonomic chair, your eyes should line up with the top 1/3rd of your screen. If you only have a laptop, buy external monitors and arms. Otherwise, prop up the laptop as a monitor so your eyes line up with the top 1/3rd of your screen
Desk
Honestly, I’ve never bought a desk and it’s never been an issue. Since your monitor arms/books can raise your monitor to the right height, your footrest and chair can raise you to any height, the desk just needs space for your keyboard and mouse, at whatever height. The one thing I recommend is square edges to make it easy to attach monitor arms.
Arm/hand warmers
Typing with cold arms is more stressful than typing with warm arms, so do whatever works for you to keep your arms and hands warm while typing. I personally set my thermostat to 80F when typing (and 65 when sleeping) and wear a sweater when typing.
Ergonomic phone setup
Phones, tablets, and laptops are great on the go, but they’re not ergonomic and can be a major drain on your stress budget.
If you have to use your phone consistently at home, make an ergonomic phone setup alongside your home setup.
If you have to use it on the go, make a portable ergonomic phone setup
Keyboard: Any ergonomic bluetooth keyboard will do here as unfortunately the kinesis advantage only comes in wired.
Mouse: If you need it, get a bluetooth ergonomic trackball.
Mount: Gooseneck mounts are both versatile and tall so you can mount your phone at eye level no matter where you are. At home, you may be able to mount the mount to your computer monitor and then place the phone alongside your home monitor.
Break
Configure your computer to tell you when take breaks. Breaks help you stay in your stress budget by preventing super stressful long sessions.
Personally, I’m using BreakTimer. It’s simple and free. It lacks exercise recommendations unlike other software, but I don’t mind that so much.
Pliers
A lot of daily life also contributes to arm stress. Washing dishes, untying knots, etc. More pressure on the fingers and hand contortions means more stress. A pair of pliers works wonders. They provide superior grip and leverage. Grip means you don’t have to squeeze hard. Leverage means you don’t have to press hard. Much less stressful on the arms.
Conclusion
RSI is a serious problem for serious programmers. If you have a problem, see a doctor and work with a physical therapist. Bolster his recommendations and reduce stress by getting ergonomic computer and phone setups. Install a program to force you to take breaks. Lastly, use tools like a pair of pliers so you can spend your arm budget on coding, not opening cans of tuna.
If you don’t want to miss out on more ways to code faster, just hit “Subscribe now” below.