Another related problem is hygiene. I've met too many programmers that smell. Some people don't wash, don't wear deodorant or just don't realise that their <i>clothes</i> need washing even if they look clean.<p>It's especially annoying because it's so easy to fix!
Quit coffee. I ended up in the hospital after being in the heat and being hypercaffinated, so I decided to quit.<p>After the first few weeks of withdrawl, I've found that it is a net gain overall. No more feeling like crap until the first cup of the day. Better sleep. Clearer, less scattered thinking. I recently went on a trip with a friend who is still a heavy coffee drinker, and it was striking to see him suffer through the first several hours of the day before his second or third cup. Being able to wake up and feel great is well worth it.<p>The thing you lose is the muli-hour high speed coding marathon. But lets be honest, how often is it that the result of these marathons isn't something you end up needing to rewrite anyway because you jumped in too quickly or failed to think it through?<p>You could, of course, drink it "when you need it", but I've found that this is the slippery slope back into addiction. So, I just stay away.<p>Edit: I've also found that a tall decaf from Starbucks can serve as a mental substitute for those days when I <i>really</i> crave it. I even get a slight placebo energy boost. "It's so good when it hits the lips" :)
This article mentions several problems caused by stiff muscles and strategies for coping and preventing them. It may be useful to understand the mechanisms that cause and perpetuate this problem.<p>There's the muscle sheaths that have stiffened by the lack of use of the full range of motion and the constant deposition of collagen, which literally glues the sheath to itself. This tight sheath can impair blood flow to a muscle, especially when the muscle is contracted for a long time. The contracting muscle presses out against a tight sheath. Blood takes the path of least resistance.<p>That lack of healthy blood flow can cause the sarcomeres, the contractile unit of muscle, to get stuck in their contracted position. This is how a muscle gets tight and actually shorter.<p>When a muscle gets very stiff, a trigger point can develop. A trigger point is just an area where many sarcomeres are tight. We certainly notice trigger points, but the muscle gradually hardens for a while before a trigger point develops.<p>The hard muscles are shorter and thicker and this makes manipulating the sheath to break up the collagen much harder. But if the muscle is softened first, it can be done.<p>Massage is how you soften the muscle and get the sarcomeres in it functioning again. Massage pushes depleted blood out and then new blood is pulled in from the capillaries.<p>But there's still one other factor and that is the way muscles communicate with each other to accomplish work. When one muscle is engaged, other muscles receive nerve signals to help. And if there is a trigger point in one muscle, other muscles are engaged via the nerves.<p>So you may have a tense muscles but it may be another muscle that is the root cause. All of the muscles need to considered and massaged in a systematic way.
I'm a bit surprised Zed didn't mention getting a standing desk, or better yet building one (it's simple and cheap to do so).<p>I think standing desks are an obvious remedy for back pain and discomfort. Your "core muscles" are used more than if you were sitting down, and it reduces the pressure on your spine caused by sitting upright in a typical office chair.<p>A good, low-tech way to do this is to buy an unfinished door and paint or finish it yourself. If it has a doorknob cutout, just use it for cable management. Then get a pair of adjustable Stanley FatMax workhorses and you're in business:<p><a href="http://www.amazon.com/Stanley-11031-Telescopic-Plastic-Sawhorse/dp/B000MIVTJG" rel="nofollow">http://www.amazon.com/Stanley-11031-Telescopic-Plastic-Sawho...</a>
This will probably be controversial, but I believe that RSI (and typing-related carpel tunnel) is psychosomatic. I experienced what I thought was chronic RSI that I wasn't able to solve through any other means but reading Dr. John E Sarno's "The Mindbody Prescription" which I highly recommend reading.<p>For 1.5 years I was not able to type without pain. I was able to rid myself of this pain in weeks through a psychological approach. It's been over 7 years since then and I haven't had problems.<p>I also play guitar, bass guitar, and drums. It can be painful sometimes to play a lot if I haven't been practicing, but that pain goes away immediately, and I don't believe it contributes to a permanent or long-standing problem.<p>Ergonomics is good for being comfortable and pain-free. And exercise is good for general health. But I don't think not doing so is going to give you chronic pain.<p>Of course you should see a doctor to rule out diseases like multiple sclerosis.<p>Here is a document that explains Sarno's ideas: <a href="http://www.rsi.deas.harvard.edu/handout.doc" rel="nofollow">http://www.rsi.deas.harvard.edu/handout.doc</a>
Google cache of it for HTML: <a href="http://www.google.com/url?sa=t&source=web&cd=2&ved=0CBoQITAB&url=http%3A%2F%2Fwebcache.googleusercontent.com%2Fsearch%3Fq%3Dcache%3A6ZpktcdKS0kJ%3Awww.rsi.deas.harvard.edu%2Fhandout.doc%2Bhttp%3A%2F%2Fwww.rsi.deas.harvard.edu%2Fhandout.doc%26cd%3D1%26hl%3Den%26ct%3Dclnk%26gl%3Dus&rct=j&q=http%3A%2F%2Fwww.rsi.deas.harvard.edu%2Fhandout.doc&ei=eM9eTLyWCML58Abz7byzDQ&usg=AFQjCNFDePk4TJUp7Sv8KeGlXMzQIEYArw&sig2=WpLK0EBD_odWgNcFL4_Etg&cad=rja" rel="nofollow">http://www.google.com/url?sa=t&source=web&cd=2&v...</a><p>Keep in mind that this does not mean "it is all in your head"... The problem does cause a physical condition in your body, but the cause of it is psychological.
Seriously? 65 comments and the top voted is about (off-topic) hygiene? With a community such as this, I expected a lot more advice and personal stories. To be fair, I guess this did get posted early on a Sunday.<p>Many thanks to Zed for bringing it up the topic. I think it is always good for the programming community to hear different views on it. As we rely more and more on computers, mobile devices, etc., we're going to see these sorts of injuries more and more and I'm not sure the medical community knows how to deal with them yet.<p>I read HN sometimes and there are so many people doing full time jobs, then coding at home, then playing guitar on top of that! It is depressing to read because I'm lucky if I can make it through lunch without my arms hurting some days. I don't think people in my camp speak up enough (partly because we are trying to type as little as possible). I haven't played my guitar in years while I try to cope. I've been to some physical therapy, but found that it didn't improve things much short or long term. If you do visit a doctor (which you probably should), just be aware that they may suggest surgery. Personally, I don't think that is the answer to RSI in most cases.<p>I weight lift occasionally but I can't tell whether it is helping or hurting. I've always been curious about yoga, I just need a kick in the pants to get started. So, there's my personal story.<p>As far as advice, I don't have much since I haven't actually found something that works well for me. I read "It's NOT Carpal Tunnel Syndrome" which was an short, interesting read, but ultimately didn't help me with my particular problem. It does have good general advice, a section with stretching exercises and nerve glides, etc.
This is decidedly unscientific and at least in the small part I read clearly uniformed. Eyesight problems from LCDs have nothing to do with fonts. It's staring at something that's bright and at a close range for hours at a time. Even if you were just watching YouTube for 8 hours a day you'd suffer.
Something that worked really well for me is having several hobbies outside of work. It prevents me from just coding for 12 hours a day, and makes my life so much more enjoyable.<p>A really big one for me is mountain biking. I always found it to be a great escape from whatever I had going on - school, work, relationships - you can really forget about all of that stuff on trails. Mountain biking at times feels more like an addiction, to be honest. Indeed, I own a shirt that reads "Mountain biking is as addictive as crack, but twice as expensive". I start feeling bad about myself and getting a bit anxious if I don't go out on trails for several days in a row. It sure feels great afterwards though - really push yourself, have fun, get that dose of adrenalin and be physically exhausted in the end. I always solve my toughest problems after "hardcore" biking sessions :-)<p>Having talked to some hospital staff during my several biking-related emergency room visits, I can tell you that some forms of it (downhill-type stuff) are very hard on your joints, so don't over do it. If you're really into downhill racing and freeride, mix in several good XC sessions for cross-training. You'll be stronger and healthier.<p>P.S.: another thing that really helps is having an active S.O., someone who'll drag you out of your work-mode and take you hiking several times a week, and who will want social interactions outside of "reading HN".
When you sit all day with your hands on a keyboard, your shoulders are constantly in internal rotation. Try this quick test:<p>Hold a couple pens loosely in your hands with the points facing out, and stand naturally with your arms at your sides. Where are pens pointed? If they are pointed forward, then you've got excellent posture. If they are pointed diagonally inwards, you have slight internal rotation. If they are pointed almost straight inwards, then that internal rotation is severe.<p>The point of this is that pushups, and everyone's favourite lift, the bench press, promote more internal rotation. Most office people would be far better served performing more pulling exercises than push. So deadlifts, rows, pull downs, pull ups, etc.
My eyes used to be my weakest link. Then I got a pair of Gunnar Optics computer glasses. They soften the contrast of bright screens with their yellow tint, cut glare, have a slight corrective factor, and reduce airflow around my eyes keeping them more moist.<p>They work wonders.
While we're on the topic of computer use issues, thought I'd share something I discovered for mouse use. I realize lots of us like to go solo keyboard, but for when you have to use a mouse, try this:<p>Put the mouse (m] sideways pointed left at the bottom left side of your keyboard:<p><pre><code> [Keyboard]
(m]
</code></pre>
Rest your elbow on the desk, so your arm is parallel to the keyboard.<p>I've been doing this for a few months now, and it's been a huge improvement. It might take a while to get used to the mouse being perpendicular to the pointer orientation on screen, but maybe not (didn't for me). The position is somewhat adapted from the tai chi standing practice posture.
I cannot stress how important it is to stay healthy. I used to be a competitive natural bodybuilder (which isn't the healthiest thing, overall) and a personal trainer, so being healthy was always a part of my life. After I graduated college, I didn't have enough time for them and let myself go. As a result, I get sick more often, and have back pain.<p>I'm currently in the process of getting back into shape (not as a competitive bodybuilder, but just general fitness). So please, if you can avoid becoming unhealthy, do, and stay fit. There's literally no downside to it (that I can think of).
It's hard to take health advice from a guy who considers martial arts to be a qualification in dispensing them. Especially when he trots out bullshit old wifes tales like caffeine leading to dehydration.
It sounds like a lot of these are symptoms of the <i>real</i> problem: People are so hell-bent on hyper-focusing for long hacking marathons that they ignore warning signs and neglect their bodies.<p>Also: I did Aikido for a couple years, too, and know <i>exactly</i> which wrist stretches he means. They're great pre-typing stretches.
I disagree with his advice on vitamin D, especially for those over 40 who have lost most of their ability to synthesize it from sunlight. See:<p><a href="http://heartscanblog.blogspot.com/2010/01/getting-vitamin-d-right.html" rel="nofollow">http://heartscanblog.blogspot.com/2010/01/getting-vitamin-d-...</a>
Something that really upped my motivation for running is using my cellphone's gps to log data.
I coded a small web-app to show a little bit of stats (<a href="http://fitness.marc-seeger.de/category/joggen" rel="nofollow">http://fitness.marc-seeger.de/category/joggen</a> / <a href="http://github.com/rb2k/run-a-log" rel="nofollow">http://github.com/rb2k/run-a-log</a>) as my first little project with ruby/sinatra.
My inner nerd loves to collect data and do stuff with it and my body is probably thankful for it (just finished my 800th recorded kilometer)<p>p.s. I currently use "cardio trainer" on android which would also offer a webinterface to data. Before that I used MyTracks (android), Nokia Sportstracker (Symbian), jogstats (webos)
I've suffered from the low back problems he mentions, but mine was not primarily caused by sitting for long periods of time. It was from playing sports when I was younger--I really messed it up.<p>However, I recently got an ergonomic chair after minor back surgery and it is awesome! It has made a big difference in how I sit and I am much more comfortable with it.<p>I would also add: don't sit at your desk and eat your lunch and surf to HN. :) Go outside for a 20-30 minute walk. Walk somewhere different every day and look at things you haven't seen before. Not only do you get good exercise, you will spur your creativity and curiosity.
If you don't read the rest of this, get a styrofoam foam noodle around 12" in diameter and 3 feet in length. Lie on it to relax and stretch your back. Back stores have them. They're expensive but I use mine twice a day.<p>For those of you who type like madmen with no regard for ergonomics and work breaks, I did that since I was 9. I have systems in place to avoid that now. Through grade school, high school, college. I was a blazing fast slouch typer. After I graduated from grad school, I started getting pains. So I would rest up and be as good as new overnight. There reaches a point where if you ignore the problem long enough it becomes persistent. Finally, it became such that even after a weekend of rest it would (pain, soreness) still remain. Maybe at a level three out of ten. I went to see a physical therapist and he tested my grip strength - my left hand was stronger. And I'm right handed. Leaving out thousands of ergonomics purchases, the best thing you can do is to start a swimming program. Swimming is zero-impact; you're not pounding the pavement. It is excellent for working your full body. Swimming is hard if you don't know how to swim because you're basically putting all your energy into fighting water resistance. Elite swimmers are three times more efficient than average swimmers (91% of energy fighting water vs 97% for average swimmers - meaning they can put 9% towards forward propulsion). Total Immersion has an awesome swim-like-a-fish program (<a href="http://totalimmersion.net" rel="nofollow">http://totalimmersion.net</a>). For eyestrain, rest your eyes by looking at least twenty feet away every twenty minutes for at least twenty seconds (the 20-20-20 rule). If you wear corrective lenses, ask your optometrist for a computer Rx (that you can use while screen working). WorkPace software from Wellnomics is awesome because it forces me to micro-pause every 4 minutes for 20 seconds and stop working for 4 minutes every 14 minutes. Believe me, I am a very efficient programmer. Also, use the mouse with your non-dominant hand.<p>For those of you who don't have health issues, realize that you will not take endless, pain-free typing for granted once you have soreness that becomes persistent. The only true rehabilitation would be to stop typing all together for a long time (2 years). Until then, I'm appreciating my job for what it is - something in the short term. Diversify your portfolio of skills - don't be over-weighted in tech. Start creating things that you own.
Laptop ergonomics deserves a special mention. Because it forces your line of sight and wrist level to converge, there really is no ergonomic option -- either you hunch or you scrunch. Elevating the screen and either using an external keyboard or external monitor really helps.
Here's an easy way to release some muscular stiffness if you're having lower back pain while sitting.<p>Stand up and feel your lower back and whether you can massage it easily.<p>With your arms back at your sides, bend both legs just 1/4 of the way down. Do this 3 to 5 times.<p>Now stretch the front of each thigh by holding the foot to your butt. Don't use a lot of effort to do this. Just hold in place for 5 seconds or until it completely stretches.<p>Now feel your lower back again and see if you can massage it. If its much easier to massage now, the source of your pain is your tight thighs. But now you have a way to cope with and reduce the consequences of this tightness.
Another useful thing is <a href="http://en.wikipedia.org/wiki/Myofascial_release" rel="nofollow">http://en.wikipedia.org/wiki/Myofascial_release</a>.<p>Go pick up the hardest foam roller you can handle and start rolling:<p><a href="http://www.amazon.com/Foam-Roller-6-x-36/dp/B000Y4W9VA/" rel="nofollow">http://www.amazon.com/Foam-Roller-6-x-36/dp/B000Y4W9VA/</a><p>It has done wonders for my body.
1. RSI: Take a week off, then, switch to Dvorak (maybe get a Kinesis keyboard if that helps you as well).<p>2. Back: Standing desk w/ nice architects chair.<p>3. Eyes: Get a Kindle and read PDF's/etc on it instead of computer.<p>My quick $0.02 on the problems I've helped resolve from your list Zed.<p>The other problems, I have yet to tackle, but, I probably should sooner than later! Great detailed post.
On Vitamin D, you need to be careful because it can also mess up your calcium levels. If you calcium levels change, then it can affect your magnesium levels. If your magnesium levels drop, then your muscles will hurt hard core. If you ignore the pain (and deal with it like a real man), then you will die.
Most of the problems mentioned won't even happen in the first place if one takes regular breaks.<p>I recommend WorkRave for this: <a href="http://www.workrave.org/" rel="nofollow">http://www.workrave.org/</a>
This is an interesting thing for Zed to share.<p>Sleeping on your back is something that can exacerbate sleep apnea, so I would modify his otherwise quite pleasant sleep suggestions with that in mind.
CS departments should make all students attend a short course covering all of Zed's topics and the personal hygiene and mental health issues mentioned in this thread.
Semi-fast once a week. Much easier than trying to calculate your calorie count each and every meal.<p>I skip dinner and breakfast the next morning, so I'm without food for 24 hours.
Zed, you forgot kidney stones. One of the consequences of too much caffeine is it's easy to be dehydrated, which puts you at risk of kidney stones. Which essentially means you get the dubious pleasure of pissing razor sharp calcium rocks out your urethra. It hasn't happened to me, but it has happened to friends; based on their experiences, I wouldn't recommend it.