Nowadays, being productive is just not enough. No matter how good you are in programming today, to stay in the same place in the future, I need to improve my skills every single day. I need to think how to improve productivity in my work comparing to current level of efficiency in delivering code and how to get more from myself, in the same amount of time.

This Is why I read articles, watch videos and conferences from guys who are the best in our world. This is why I look for new stuff which allow to simplifying my task management, time tracking, or code typing. This is why I’ve interested with vim, trello, toggle, and similar stuff.

This Is why I automized posting on facebook and twiiter without even visiting those portals.

And this is why I tried to switch to Dvorak layout.

Introducing to Dvorak

Do you know, why you use the standard, very common QWERTY layout in your computer? Christopher Sholes invented the typewriter in 1868 ( you can see the patent here ), and he found few problems with that. The first prototype assumed, that keys on keyboard will be arranged in alphabetical pattern, however because of using a little hammers, which fell up and down through typing, providing only by gravitation, they jammed, when user typed too fast.

The solution Sholes figured out was simple – if the typewriter writes too fast, and this generates a problem, we should slow him down. To do that, he redesigned key patterns, to set keys in random way, to avoid commonly pressed keys from being placed next to each other. Then little hammers didn’t stuck anymore, because typewriters types slower.

The problem was, that this wasn’t invented for people, who writes 150 words per minute, typing 8 hours per day, five days in week. This was not for professional coders, book writers, data inserters and so on. Those jobs didn’t even exist in 1868. So nobody even wonder if keyboard is ergonomic or comfortable, and nobody worried about how to improve productivity. It should just work.

And it indeed worked. When Christopher Sholes invented the improved model, with a little spring, to avoid jamming, he said: “So, now we don’t need this uncomfortable QWERTY layout, let’s do things better” – he redesigned the whole keyboard pattern, but the old layout was already so popular, that nobody want’s to buy the new thing.

The main reason was: “Why to buy new model if the old is good enough?”

This is how things come to nowadays. The whole world use the uncomfortable first prototype of komputer keyboard, because they just get used to it and this is when Dvorak layout comes in.

Dvorak is the very powerful layout, designed to make typing faster, not slower. The Guiness record in typing is achieved by Barbara Blackburn, and she used the Dvorak layout to get it.

Dvorak design to improve productivity

Classic Dvorak kayboard layout

Improve productivity in programming.

When I realized, that I use the 150 years old invention without any adjustments and without thinking why, and I wanted to improve productivity of myself on every field, the very natural was that I interested in with Dvorak layout and tested it to check if this is worth of effort to learn it. And here are my conclusions.

As programmer I don’t type very fast comparing to for example book writers. I just don’t type much. In my eight-hours work day, I often write only two-three hours. Other time is spent on thinking – figuring out how to make stuff working. Switching to Dvorak required from me to re-learn whole typing skills, and my typing speed have been reduced at the beginning from 70 to 17 wpm. It was crazy, because I can’t allow myself to reduce efficiency of typing in so ridiculous piece. There are people who pay me for being productive, so if I slow down, I really need to have the good reason to do so.

But despite that, I switched to Dvorak just for testing. My typing speed have been slightly increased in two days, and I found that it’s indeed much more comfortable to type in Dvorak, however… yeah. I’m a programmer.

I don’t just use keyboard to write. I use large amount of shortcuts in large amount of applications. For example, I don’t use mouse to go through my emails, I use ‘j’ and ‘k’ to switch between messages. And do the same for other apps. In dvorak layout, except of learning again how to write, I need to re-learn all pattern of all shortcuts in every single application I use.

Yeah, this is possible, and I’m ambitious guy, so this could be even funny, but the real problem is, that ALL applications designed their shortcuts to be useful and comfortable for QWERTY keyboards. This mean, that for people using Dvorak, even if writing letters becomes much faster and more comfortable, using shortcuts – just not.

For macs, there is a Dvorak layout, named Dvorak-QwertyCMD, which allows us to use Dvorak when typing letter, but after pressing CMD, all shortcuts works as on qwerty layout. Nice feature, but there are two big issues there. First, this requires from me learning two layouts, and this block me from being really efficient in any of them. And other – this will not works for Ctrl and Alt shortcuts, which just sucks.

This means, that if I want to go to end of the line in WordPress editor without using arrows, I need to not use Ctr+e like in QWERTY layout, but CTR+d which is e equivalent in Dvorak. But for finding words ( Cmd+f ) we should use QWERTY ‘f’ button. This is a horror, but it also is something to learn.

The real problems are, when you wan’t to type an article in different language than english – let’s say, for polish programmers, there are no Polish letters in keyboard layout, so for ‘Ł’ letters, pressing Alt+L nor Alt+P (In Dvorak  P => L). There are Polish and french, and Germany, Dvorak layouts for macs, but then you can’t use CMD+QWERTY switch.

Solution is one – write your own layout and adjust to your own language.

The main reason, I didn’t switch to Dvorak

You can say, that it isn’t very important, as we talk about developers, right? I’m a programmer, so I don’t write in any language other than English very often. Naming methods, comments, variables, files… everything is in english. So you have right, this isn’t the main problem. The much bigger problem is VIM.

Vim and Emacs are the most productive text editors I’ve ever heard of. Most the best programming heroes don’t use anything else just because they are awesome. They aren’t easy to learn, even despite many interactive toutorials, and I believe this is the only reason why not everyone use them. But I tried, and figured out, that there is no better tools in the world.

But working with VIM is just hard with Dvorak. The normal mode is designed for qwerty, but with the main reason to be comfortable. So switching to Dvorak on vim is the same thing which Shole did 150 years ago, when he placed keyboard buttons in random pattern. Completely disaster. There are reasons why people use conventions, and this is completely anti-pattern for everything.

To be efficient with vim and Dvorak, you need to remap your keys. This however, means, that you’ll never be effective on any other machine than your: which sucks, because the very important advantage of vim is that it’s installed everywhere.


When using Dvorak can improve productivity:

  1. Use Dvorak when you are book writer or journalist.
  2. Use it, if you type a lot, and If you don’t use shortcuts a lot
  3. Use Dvorak, if you type in english, not in C, Ruby, or any other national language, like Polish or French.

When using Dvorak probably cannot improve productivity:

  1. Don’t use Dvorak if you are programmer – especially vim user.
  2. Don’t use Dvorak, if you create articles in different languages.

Sometimes, this isn’t just worth of effort. I’m depressed by the fact I’m convicted for using QWERTY layout, but learning Dvorak requires me to not type in my national language anymore, or not use VIM, or not being effective in other apps shortcuts. This just doesn’t improve my productivity at all.

Anyway, I would like to hear what do you think about that? Maybe you have an idea to solve all the problems above? Write in comments below.

Share This