As Developers, we are sitting in front of a computer and typing all day. If not careful, we tend to develop some bad habits which put our physical well-being at risk. We have to find the best chairs, keyboards, postures, and make sure that we are not doing any long term damage to our body. I always tried to be conscious about posture when working and observer my peers and let them know about it. But keeping a good posture is the basics, there is a lot more to stay healthy when we're working on a desk for a long time.
We're almost spending more or less a quarter of our life on our desk. I believe that companies should think about this and provide better ergonomic support. For example, the desks we are using in most offices were designed for desktop computers. If you're using a laptop in one of those desks you have to crouch for all day and strain your neck and backbone. In this case, Consider buying one of these laptop stands. This will elevate the laptop to a better position. You'll also need a separate keyboard and mouse if you start using this kind of stand.
The next big thing after posture is how you keep/move your hands while typing and using a mouse. Many programmers were diagnosed with carpel-tunnel. They changed their lifestyle and/or gone through surgery to come over it. I have been thinking about improving my desk and working habits better for some time now. This QWERTY change is part of the effects of that thought.
For background, QWERTY is one of the most used and unchanged things in computers from their inception. Some people say that QWERTY was designed to slow down people from jamming the mechanical typewriter. But it's not proved to be an absolute fact.
In my experience, qwerty does make typing two letters a little difficult than it should be. It also placed some of the most used letters little out of reach. The result is, we have to make rapid movements across the keyboard even to type usual English words.
I am a decent typist in QWERTY who is standing around 65-70 WPM. Typing at this speed means making many finger movements fast. Keep doing it for long, you'll feel a pain in your wrists and elbows. I also drive a motorcycle for my commute. On a bad day's traffic, I can feel pain in my wrist even before getting into the office. The increased throttling and clutch usage in heavy traffic is a catalyst for the pain.
I haven't developed any carpel-tunnel yet, but I am worried that end up getting it. I thought about it and decided to give Dvorak (Programmer's Dvorak) a try. I have been thinking about making this switch for a long time. I got enough motivation once I started to feel very occasional pain in wrists when typing for long.
Dvorak is created by August Dvorak in 1936. It meant to replace QWERTY. Due to the training and changes required to replace QWERY, it never became mainstream. In my previous encounters with Dvorak, I found it to be a far comfortable layout than standard QWERTY.
A lot of people claim that Dvorak increased their typewriting speed but I don't think it'll increase my speed. Actually, after started in Dvorak for two days, my QWERTY speed also fell down around 5-10 WPM. I'm not even sure if I'll ever be able to type around the same speed (65-70 WPM) using Dvorak. But my main goal is to feel comfortable and maintain my physical well-being.
Dvorak is an ANSI standard and it has first-class support in Linux, Mac, and Windows. We don't need any fancy keyboards (I would like this one though.) to switch to Dvorak. Saying that using Dvorak can have a few issues or discomfort in general.
- Once you got used to Dvorak, using other's machines or letting others use your's will be difficult. This can be solved by enabling keyboard shortcuts to toggle Dvorak and QWERTY.
- Almost all the keyboard shortcuts are configured based on QWERTY. Using shortcuts becomes awkward after switching to Dvorak. This can be solved by using an auto-hotkey script.
- Dvorak also places symbols in hard to reach places because they're not most used in English. This makes it hard for programmers to work with Dvorak. For this, there is a modified version of the layout called Programmer Dvorak. That makes typing programming symbols like brackets much easier than QWERTY.
I've started using Dvorak on 14/11/2019, I am still using QWERTY primarily. But I am slowly increasing using Dvorak every day.
When trying different layouts, for best results switching cold Turkey is the right way. But in my work, I can't afford a slow-down at this moment. so I am taking it as gradually as possible. If you're considering making the switch, try both approaches and see what works best for you. I'll also come up with another blog post about my experience after some time.
I hope everything will be good and I'll be able to go full Dvorak soon.