The Case for the Programmers’ Keyboard Layout

In my last blog post, I explored the benefits of switching from the QWERTY to Dvorak keyboard layout. The standard Dvorak layout works well for those who frequently type in English, but what about those who primarily type code? This is where the Programmer Dvorak layout shines.

Beyond Traditional Dvorak

The Programmer Dvorak keyboard layout is the most comfortable and efficient layout for programmers. While the traditional Dvorak layout inherits awkward symbol locations from QWERTY, Programmer Dvorak makes the symbol row more intuitive. The top row of the Programmer Dvorak keyboard layout (seen below) contains brackets and symbols with the numbers typed by holding the Shift key. This is because programmers type symbols much more frequently than numbers when programming. The numbers are also arranged so that odds are on the left and evens are on the right, as in the traditional Dvorak layout.

Like the Dvorak layout, Programmer Dvorak is designed to maximize alternating key presses. This makes typing certain combinations of symbols often used together very fluid. One such example is that of the left and right parenthesis, which you type with the left and right index fingers, respectively. Therefore, to get the most benefit out of the Programmer Dvorak layout, one should also learn and use touch typing. This will not only improve your effectiveness when using any layout but will also potentially save your fingers some pain down the road.

Logically Designed

Roland Kaufmann invented Programmer Dvorak in the early 2000s. Kaufmann scanned thousands of lines of source code in languages such as C, Java, Lisp, and CSS, among others, to find the most commonly used constructs. In contrast to traditional Dvorak, the Programmer Dvorak layout stands out in that the symbols of those commonly used constructs are arranged along the top row. Kaufmann made that decision after gathering data from source code in the aforementioned languages. It was also informed by previous research conducted by August Dvorak (creator of the traditional Dvorak layout) on keyboard layout efficiency. The result is a keyboard layout designed specifically for programmers.

Programmer Dvorak is designed with the English language as the starting point. This is due to the fact that English is the lingua franca of programming. Consequently, this has resulted in the development of the vast majority of programming languages in English. Furthermore, there is some consensus for the standardization of code comments in English.

However, as a commenter on my previous post pointed out, there may be better alternative keyboard layouts for those in the non-English speaking world. Despite this fact, this would only apply to those who do most of their daily typing in a language other than English, not for programmers.

Time to Switch

Programmer Dvorak is the most comfortable and intuitive keyboard layout for programmers. Therefore, I recommend making the switch immediately. Many online sites with free lessons will teach you how to touch type. However, I recommend this site, as it caters directly to learners of Programmer Dvorak. If you don’t already use a standard Dvorak layout, first complete the Base Dvorak course. Next, complete lessons 30 through 62. These lessons will introduce you to the keys unique to Programmer Dvorak.

At first, switching will be painful. Rewiring years or even decades of muscle memory takes time. After completing the above lessons, it is best to switch completely and start using the Programmer Dvorak layout in your daily work. With deliberate and consistent practice, it is more than possible to make the switch completely after two weeks. You could reach your previous WPM (Words Per Minute) after a month of practice. In the end, this is a small cost compared to the lifelong benefits of coding with the Programmer Dvorak layout.

Bolster Your Programming Toolkit

Switching to Programmer Dvorak will not make you a better programmer. However, it will make typing code all day easier, and, most importantly, more enjoyable. Furthermore, if you have never learned to touch-type, it may even reduce the risk of strain-related injuries by teaching you proper typing posture. If you are not a programmer, then switching may not be in your best interest. Instead, you would benefit more from adopting a standard Dvorak layout, which does not have as steep a learning curve.

  • David Kedron says:

    Hey! A fellow Programmer Dvorak typist! Very excited to see this post – and also surprised to see it from Atomic Object, as I’m in the GR area myself.

    I started typing Dvorak in 2007 and I switched to programmer dvorak, egh about 2015-2016, can’t remember the exact date.

    Personally, I love it. I’ve learned to like the number configuration better than the regular

    Once you know dvorak/programmer dvorak, the next thing you need to do is get the ultimate das keyboard (blank keyboard), and that will cement you memorizing the keys, and also anyone who sits at your desk will be doubly screwed.

  • Zachary Johnson Zachary Johnson says:

    Hi David! Thanks for your comment!

    Learning the numbers was indeed one of the most challenging parts for me when switching to Programmer Dvorak, but I am also quite happy with them now.

    That ultimate das keyboard looks awesome! I might have to get myself one… Currently, I use a TypeMatrix 2030 blank keyboard. I like the ergonomic design, and I still get the blank keys!

  • Comments are closed.