Friday, August 03, 2007

Managing Code Fatigue

One thing about being a software developer, is that we have this misguided self-belief that we are 'ironmen', to borrow the phrase from Po Bronson's book, 'The first 20 million is always the hardest'. I find that I have a tendency to spend long hours in front of the screen and taking little breaks, especially when I'm 'in the flow'. The problem is, the toll it has on my body is being rather apparent: I've just turned 28, and already I am suffering from bouts of backaches, eyestrains and mental fatigue on a semi-regular basis. Reality is, unforgivingly stark. If I don't take adequate care now, in a few years, things will get worse. So I'm trying to correct certain habits that some of you may relate to:

Have a comfortable work environment
I'm not suggesting that you bring your bedroom to your workplace, but there are things that you can change to make it better. It may be time to do something about that morning glare through your office window (I have), or the suboptimal lighting conditions you've grown used to, or the polka dot wall panelling that has been giving you a migrane, or any other little niggling things that you have learnt to cope with for too long.

Have a good sitting posture
Out of all the enviromental factors in the workplace, I think sitting posture deserves a mention itself. Because of the amount of time developers spend sitting in front of their desks, back pain is a common, but severe problem. Observe yourself next time you sit down, and check if you are shifting your weight regularly. If you are, the way you sit is probably not good for your back (or your bum). Check if changing to a different chair, or modifying the height of your table helps. Or adjust the placements of your monitor, keyboard or the mouse. Sometimes, it is the little things that make a big difference.

Exercise
A good exercise routine helps to maintain good posture and body strength to offset the long hours of stagnant activity. It also helps take your mind off the heavy thinking that you have done over the course of the day. I find that exercise helps massively. Jogging and ski machines are great in relieving the mental stress, while crunches and abdominal exercises help maintain strength on my lower back. I do weights for my upper back and shoulders, which is where the majority of my pain is coming from. Thankfully, it has been getting better after maintaining my regular routine to the gym.

Not have coffee
I know this is so controversial that some of you may consider it blasphemous! Coffee is a great stimulant, and works wonders for a dull afternoon with boring coding tasks, but I find that it affects my sleep patterns at night. If you are one those people who are prone to sleeplessness, it may help to know that coffee can be one of causes, and reducing your intake will help.

Have a good night's rest
Even though most agree that having sufficient sleep is necessary for performing well at work, we do have a tendency to flout this piece of well meaning advice rather blantently. Be it rushing a deadline, or just after hours distractions like playing World Of Warcraft and chatting up with friends on MSN, it is difficult not to, especially when it is an entitlement after a long day. The bad news is, not getting enough rest makes you much less alert for the next day, escalating a cycle of increasing coding errors that just is going lengthen the your day further.

Take a break!
If you feel that your brain is like mush, it is a sure sign that you have exceeded your own limits. Granted, you may have tons of work waiting ahead of you, but it is time to get some rest and to recharge yourself. All things being equal, your personal well being is not worth trading for any satisfaction you derive from completing an ardous task, trust me.



That said, it is so easy to lapse back into bad old habits, but the sooner you can identify them, the faster you'll change it and improve the quality of your life. Undeniably, it may be hard for established 'computer potatoes', but keep in mind that it is usually the hardest things that are worth doing. You'll live to appreciate your job better, and last longer, and thank yourself for it.

( Minor Edit: I realised I've misspelt Po Bronson's last name, and so it has been corrected. My apologies! )

1 comments:

Anonymous said...

Nice post.

Post a comment