You got the programming fatigue?
I've recently started programming a new startup of mine full time and found that I am severely limited to how much work I can do because of physical fatigue - notably eye strain (pain) and wrist pain (carpel tunnel).
I have started wearing wrists braces on each hand to help with the wrist pain and that helps. And for my eyes I often wear polarized sunglasses and switch between staring at my laptop screen and hooking it up to my LCD TV.
I guess I'm kind of wondering if you guys have the same problems or if I'm sitting on the computer way to much. Also, what do you guys do to minimize, eliminate such physical problems like this?
37 comments
[ 5.6 ms ] story [ 75.7 ms ] threadAs for the wrists: invest in a good chair and use Vi :)
The best advice I've found is to just check, every 10 minutes or so, am I comfortable? How could I relax? Ask these questions of your fingers, wrists, arms, elbows, back, neck etc. Sit correctly (google for advice on that) but don't be tense.
I also found the Alexander Technique quite useful <http://en.wikipedia.org/wiki/Alexander_technique>.
Google 'RSI wrist stretches' (or exercises), etc. The book "It's not Carpal Tunnel Syndrome! RSI Theory & Therapy for Computer Professionals" is highly praised, but I haven't read it personally.
I've found that a trackball is much easier on my wrist when I'm forced to do any mousing. The Microsoft Natural Ergonomic Keyboard 4000 helped too, but I couldn't stand the space bar's noise and action -- it's worth looking into a more friendly keyboard anyway.
Edit: As for eye strain, try to focus on something in the distance while you're letting your wrists rest. Human eyes aren't particularly well suited for focusing close-up for long periods of time, so you should let them relax once in a while.
http://www.aboutcts.com/moreon_cts.html
Her main site is http://julstro.com which pertains to the whole body, but the aboutcts.com site deals specifically with carpal tunnel issues.
I had a lot more pain while coding at home because I would sit at the computer more often, but when working at an office, I have to get up and talk to people more often, and it really makes a difference.
As for eye strain, getting a dark color layout for your code editor of choice and keeping most of your GUI dark helps. Black text on a white background is like staring into a lightbulb.
http://slinky.imukuppi.org/zenburnpage/
I don't have any scientific proof of this but I try to do it when possible as well. Once or twice per day I try to go outside and focus on things as far away as possible and try to make out detail. It definitely makes me more relaxed when I sit back down to work again.
In my case, I eventually figured out that I need my desk at a specific height. Being even an inch off causes burning and tingling in my arms after a couple days. So every time I move offices, step 1 is adjusting the desk height.
On the eye strain, have you switched monitor brands or OSes with your new job? Small things like color temperature or type of LCD subpixel rendering can take a while to get used to. One configuration isn't inherently better than another; it's just novel and different, and your eyes might be doing a little extra work recognizing slightly different glyphs on the screen. If this is the cause, then the discomfort should go away soon.
It reminds you to take a break every 30 minutes.
1. Try using a desktop computer, if you can.
2. If you can't use a desktop, get a separate monitor, keyboard and mouse for your laptop. Use this setup when you're coding at home.
3. Learn and use Emacs or Vim. They're seriously better on the wrists. If you cannot invest time in one of these editors, learn whatever editor you're using right now properly. Make use of keyboard shortcuts whenever possible, and avoid the mouse/trackpad like the plague.
4. Use a dark color scheme in your editor and make it fullscreen. You won't believe how much cognitive strain it eliminates until you've tried it.
5. If you're using Windows, use the Windows Classic theme. On Linux, try using whatever monochrome theme you can find. The Mac already has a monochrome theme. Staring at wild colors and funky visual effects makes you feel tired. Eliminate these distractions.
Just this much for now :)
If there was anything Sun got right in its workstation design, it was where they put the damn control key: next to your pinky, where it belongs.
On a typical PC keyboard of today, the Caps Lock is the most difficult modifier key to press, and is pressed by the weakest finger pinky.</quote>
On keyboards I've encountered Caps Lock is right on the left of an A key on the home row - it is easy to type it (and certainly easier than the Left Ctrl).
It makes the left pinky do 2 pinkies's work.</quote>
You press Caps Lock instead of Left Ctrl - the same work.
It forces the left hand to strain into spider legs positions, or forces your right hand to flies about wildly if the letter key is near the middle of the keyboard (e.g. T, G, B).</quote>
The standard practice is to press the Right Ctrl (right hand) + t,g,b (left hand) - no flying.
It renders many Control-‹key› spots void, since now with only one pinky many otherwise good Ctrl-‹key› spots are hard to use.</quote>
The Right Ctrl stays therefore there is no need to use only one pinky. The most frequently used Ctrl-<key> combinations in Emacs is point movement commands. Caps Lock makes it easier to type some of them e.g., C-n/p.
The left hand now constantly shift from home position.</quote>
See my comment to the first quote.
Personally, I use command and option as meta. I don't like Aquamacs, they make it just different enough from standard Emacs to be annoying.
Don't: http://xahlee.org/emacs/swap_CapsLock_Ctrl.html
From personal experience:
1. Switching from laptop to desktop made a lot of difference. I now use a MS ergonomic keyboard.
2. Switched to using mouse with left hand. The problem is that the keyboard is too big on the right side due to the additional numberpad. So if you use a right handed mouse, you often end up holding it at a weird angle.
3. Started using vim.
4. Ensure that keyboard and mouse are at a proper height. If you have to bend your elbows, then something might be wrong.
5. Regularly check to see if you are gripping the mouse too tightly or if you are hitting the keys too hard. You may be unaware of the stress you are putting in the muscle.
A couple more suggestions:
- Try to get your screen at eye level. If you can avoid having to look down all the time, you'll put much less strain on your back.
- Your forearm and upper arm should be making an angle close to 90 degrees.
- A little footbench or something you can lean on with your feet, so you don't have your legs dangling or being folded up underneath your chair.
2. Dvorak (use a typing tutor (like ten thumbs if on OSX))
3. Kinesis (not needed after 1 and 2 are fluent)
Almost left computing because of the pain, but after heeding the above 3 points, I'm back at 100%. No pain, and to top it off, I type faster. Win-win situation :) Oh, and get up and stretch every hour or two. If back pain is an issue (compressed L4 here), then get a desk you can stand at, and a comfy architects stool.
Also, dark color scheme is best. I have harmless floaters in my eyes but they make bright white backgrounds look like a freaking protozoan dance party.
wrist pain: for me, coldness was a big factor, so I have fingerless gloves onhand, rub my hands warm when sore, and of course try to keep the room warm. Awkward posture and being tense were also factors. And, for the first time ever, I went to the trouble of automating my common tasks in vim (esp. mapping keys to macros).
Straining an injury can make it permanent. Having done it myself, I sincerely do not recommend it.
During intense job-related programming sessions, I'd have all sorts of hand and back aches. When programming just as intensely on a personal project, no aches at all.
Imagine you had a real labour intensive job, rather than our soft, easy, cushy 'jobs'...
Imagine digging fence post holes all day, trenches, laying bricks, anything else really!
Wow what a pathetic, meek, frail society we have become where people wing about how hard it is to sit on your ass all day long!
Edit: I guess I should add... sure I can understand mental fatigue; sometimes we work with mind numbing, brain twisting complexities. But that just means you should go make a coffee, go for a 15 min walk by the river, whatever. But physically, if you're saying 'computing' is hard... surly this is a joke/troll ... !?
Well, that's my two cents, and from my point of view, and I am sure others share it, when you said "But physically, if you're saying 'computing' is hard," I dare you to do something some of the greater "computers" (people who computer) have done. You know, like make an operating system from scratch without ever seeing code of one, you know, like Steve Jobs did, for example.
Ok. I hope that didn't come out as a rant, and if it did, I apologize, but think about it, computing can be hard.
However it’s actually a topic that my best mates and I talk about quite often! How lucky we are that we can sit in our air condition offices all day, drinking coffee straight from a coffee machine, with our nice 26” LCDs, a plant beside us and our high back chairs... While others we grew up with come home wire sore backs, sun burnt, trash hands that just constantly hurt. Heck quite a few have even lost fingers. Sure our computer jobs can be stressful but that’s why we do it, for the kick, we have the drive, we love the challenge.
Yea no shit nobody on here digs fence posts... they wouldn't be bloody winging about sitting in a chair all day if they did ahahah. Surely some of you have had ACTUAL REAL, physically hard jobs in the past? While putting yourselves through university or the like? I had some SHOCKING jobs going through uni from kitchen hand to digging bores/water holes on farm land in outback Australia. Maybe that’s where my appreciation of what a physically intensive job means, stems from?
My point is.. How lucky are we!?!
Anways, watch me get down voted to hell because this isn't what others want to hear about our 'precious lifestyle'. But I fail to understand how your body can get SORE from sitting in a cushy chair for 15 hours a day ... !? WTF!
Watch you get downvoted for being unhelpful, unsympathetic and trollish.
Maybe that’s where my appreciation of what a physically intensive job means, stems from?
Why are you talking on and on about physically intensive jobs when the OP is not saying "It's too much effort", he's saying "it's wrecking my wrists and it should not, what am I doing wrong?".
Yea no shit nobody on here digs fence posts... they wouldn't be bloody winging about sitting in a chair all day if they did ahahah
They would if their family survival depends on income from sitting typing and they can't type because of knackered wrists.
But I fail to understand ...
That's a failure in your understanding.
That helped me a little. I also bought a Kindle DX and use it to read PDFs and some web articles converted to PDF. Since the Kindle isn't backlit, it lets my eyes rest vs staring at the big monitors and laptop screen.
An eye exam will also rule out something like cataracts, which usually hit when you're a lot older, but may arrive early if you made a particularly unlucky draw from the gene pool.
Better chairs, desks, keyboards, and VERY IMPORTANT arm supports to keep your wrists straight while you type. Also, don't pound your keyboard. A gentle touch is always best. If a mouse is a problem, try a trackball (Kensington), or even a "foot mouse".
There are lots of sites on minimizing eye fatigue. Looking away from the screen every 10 to 15 minutes to refocus on something far away is helpful. Also, don't scrimp on your monitor. Use a large display that is crisp and has good contrast.
Being cheap on the hardware you are "bound" to make seem wise in the short-term, but the long-term consequences are disabling.
Please, don't compromise with pain or discomfort.. It only gets worse.
Big mistake. A day after the launch I could not type, mouse, anything with my right hand as my muscles would ache and lock up.
At work I had a desktop, at home a laptop. The laptop was on a desk that violated every law of ergonomics known to man. The chair was a cheap $79 chair I got in college from the local office supply store. More mistakes.
Fast forward a year, I'd begun to notice that my right arm/hand ached all the time and the area between my shoulder blade and spine constantly held a knot.
My PCP prescribed pills and sent me to physical therapy. That helped a little but the side effects from the pills made me feel drunk all the time. The PT used a technique called "traction" that I later found out was chiropractic in nature. That stretched my neck and seemed to help the symptoms. That an excercises and an occasional pill when I had a bad flare up seemed to help manage things.
Fast forward another year and after an ergonomic makeover (explained below) I was hurting again and figured I'd go see a Chiropractor which my family (all Chiro success stories) suggested I go to. Wow! I've just celebrated 1 year of Chiropractic care and feel amazing! It's not solved all of my issues and I still have to manage my time in front of the computer, but it forces me to use it wisely.
Here's a list of items that have helped me:
- Read everything you can about Ergonomics
- Buy an Elevator for your laptop - www.griffintechnology.com/products/elevator - By itself it isn't high enough for me so I have 2 thick text books under that as well to keep my eyes at a 90 degree angle from my screen
- Buy a good chair. I broke down and bought an Aeron chair from a used office supply store. One of the best moves I could have made.
- Take loads of breaks, stretch, excercise. Push ups, lateral pulls, "give yourself a hug" all relieve tension and strain. Find any and all stretches for your neck and upper back.
- Sleep. Really, look at the code you've written when you're fatigued and look at code you've written when rested. My CTO says that "every programmer has 4 good hours of code in them a day". That doesn't mean to work 4 hours, but that you need to listen to yourself when you're "spent". Accomplish the toughest tasks first thing, then once your "spent" do the menial tasks that take effort but little critical thinking.
- Go to a Chiropractor. I kick myself for suffering literally for 2 years! For the wrist pain, they can pop your wrists and relieve the pain.
Good luck and I hope my suggestions help someone.
It works, but after sitting for > 10 hours I have to take a fairly long break.
move my desk up (or down) 2 cm and I end up with very had shoulder pain. It took a lot of trying to get it right.
Chair is a fairly cheap office chair but it has lots of stuff I can change to force changes in position during the day.
I removed the armrests because they make my arms hurt like hell.