The search for the world’s best keyboard layout

If I gave you a technology from the 1800s, and said that you needed to use that from day-to-day from now on, what would you do?

For example, if I gave you a mechanical typewriter from the 1800s to use, what would you do?
Just assuming that it still works, would you bother to use it?

I know if you are an avid typewriter collector, like actor Tom Hanks, then you would probably put it through it’s paces.
Otherwise you may think it’s one of the most clumsy devices you have ever used.

However each time you use a modern keyboard, while the physical technology is not 1800s, by default you are still using the same clumsy character layout. ie Qwerty was patented in 1868.

The technology of the modern keyboard (eg mechanical switches), just makes this character layout more palatable for the modern user.

I don’t know how true this is — but there are claims on the internet that the top row was purposely corrupted so that the statement ‘TYPEWRITER QUOTE’ could be typed exclusively on the top row of the Qwerty layout.

Supposedly, this was to assist the sales people to type the quotes for prospective customers more easily.

Well let’s type it and find out from the heatmap of keypresses….

Heat map for ‘typewriter quote’ in the Qwerty layout

Well — you decide…. To me it looks like a deliberate corruption of the layout.

In addition, other internet sources claim that the character layout of Qwerty was influenced by the need to avoid the hammers getting jammed when typing at high speed.

However some recent research has suggested that the jamming of hammers is not the true influence of the Qwerty layout.

Seems the Qwerty layout was instead influenced by morse code operators that needed to translate quickly (see link below):

However for the non-sales people, to be fair there does seem to be some typing optimisation in Qwerty.

The letter combination ER and RE is the top pair in the English language according to the Google Corpus Data.

https://gist.github.com/lydell/c439049abac2c9226e53

So Qwerty does attempt to optimise that pair by placing the letters E and R as adjacent keys.

Also the letters Q, Z, and X are located in the corners of the layout, in less accessible positions, which makes sense as those letters are amongst the least common.

However all words in the English language contain at least one vowel. So for a keyboard layout it would be intuitive to put all the vowels on the home row, as the home row is the most accessible position.

Keyboard heatmap for Qwerty for a sample text

In Qwerty, however most of the vowels are on the top row of the keyboard instead of the home row. Moreover, of the top 5 most common letters in English (E, T, O, A, and I), only one of those is on the home row. Only the letter A is on the home row in Qwerty.

Also only 2 of the top 8 most common letters in English (E, T, O, A, I, N, S, and R) are on the home row in Qwerty.

More key presses outside of the home keys leads to more curling and unfolding by the fingers, leading to earlier finger fatigue.

In 1936, the Dvorak layout was patented, and with it came a new philosophy; put more common letters on the home row.

Dvorak was designed from the ground up.

A clean slate.

Modern Dvorak layout

Now all the vowels (A, O, E, U, and I) are clustered on the left hand on the home row.

Also the Dvorak home row has 10 letters, instead of 9 as was the case for Qwerty.

Keyboard heatmap for Dvorak for a sample text

More key presses on the home row should result in less curling and unfolding of the fingers, leading to less fatigue of the fingers than for Qwerty.

In addition, the Dvorak layout was designed for the typewriter. A typewriter has no reason for left-hand shortcuts. eg undo (cntl-Z), cut (cntl-X), copy (cntl-C), and paste (cntl-V).

Consequently, in Dvorak there was no reason to maintain the keys Z, X, C, and V close to the left control key as is the case for Qwerty.

However there are some common shortcut keys in convenient positions for the left-hand and they are:

  • Select all (cntrl-A)
  • Enter (cntrl-J)

The value of a left-hand shortcut keys wouldn’t exist until the keyboard will arrive decades later.

In 2006, Colemak came along but it was more evolution than revolution.
The home row still has 10 common letters, as seen with Dvorak.

Colemak ANSI layout
Keyboard heatmap for Colemak ANSI for a sample text

However from the heatmap, it’s clear that while there are 10 letters on the home row, there is more emphasis on the 8 letter home keys.

Also with Colemak, it was determined that the primary keyboard shortcuts (undo, cut, copy, and paste) in Qwerty are in the most convenient positions on the left hand. So Colemak retained those keyboard shortcuts in the same positions as for Qwerty.

So the common shortcut keys in convenient positions on the left-hand are:

  • Backspace word (cntrl-W)
  • Select all (cntrl-A)
  • Save (cntrl-S)
  • Undo (cntrl-Z)
  • Cut (cntrl-X)
  • Copy (cntrl-C)
  • Paste (cntrl-V)

In 2009, the Carpalx project offered 8 keyboard layouts for various use cases, depending on what you want to achieve.

Essentially there are 2 paths on offer depending on how long you want the home row:

a) Layouts using a 9 letter home row

For those typists who want to keep using the Qwerty letter mask (9 letter home row), but swap a selection of keys to reduce the typing effort choose either of the following:

Carpalx QWKRFY — only 5 key pair swaps and keeping ZXCV fixed.

Carpalx QWYRFM — only 10 key pair swaps and keeping ZXCV fixed.

Carpalx QFMLWY — many key swaps for 42.6% less effort than Qwerty, but ZXCV is not fixed.

b) Layouts with a 10 letter home row

For those typists who prefer a 10 letter home row for Colemak, and are already be using the Colemak layout, then choose either of the following:

Carpalx GYLMWP — retain 9 letter keys the same as Colemak and ZXCV fixed.

Carpalx PBFMWJ — retain 11 letter keys the same as Colemak and ZXCV moved.

For those typists who will accept the most key swaps to get the biggest benefit, then choose either of the following:

Carpalx QGMLWY — 10 letter home row, and ZXCV fixed to get 44.3% less effort than Qwerty.

Carpalx QGMLWY

Carpalx QGMLWB — 10 letter home row, but only keep ZXC fixed to get 44.4% less effort than Qwerty.

Carpalx QGMLWB
Keyboard heatmap for Carpalx QGMLWB for a sample text

From the heatmap, it’s clear that for Carpalx QGMLWB (and Carpalx QGMLWY) there is more emphasis on the 10 letter home row, rather than the 8 letter home keys.

The some common shortcut keys in convenient positions for the left-hand are:

  • Save (cntrl-S)
  • Undo (cntrl-Z)
  • Cut (cntrl-X)
  • Copy (cntrl-C)
  • Find (cntrl-F)

For some users of Colemak, some felt that all was not well, even with the 8 letter home keys.

There was some concern that the common bigram ‘he’ was causing unnecessary fatigue when using Colemak.

So a modified Colemak layout was created, named Colemak Mod-DH to de-emphasise the centre columns.

De-emphasising the centre columns will reduce lateral movement of the pointer fingers, leading to less fatigue of those fingers.

Colemak Mod-DH actually has 2 core features:

a) The Angle Mod feature

The idea behind the Angle Mod is to promote a more comfortable, symmetrical typing posture on standard keyboards. The result being that the fingers on the left hand can more ergonomically reach the keys on the bottom row when using the Colemak layout.

This concept is ideally for an ISO keyboard, but can be made to work for an ANSI keyboard too.

For the ergonomic finger technique to work for the Colemak layout, the finger assignment will change to the following:

  • Left pinky on the bottom row is assigned with the shift key (instead of the Z key in Colemak).
  • Remaining fingers are assigned the same keys X, C, and V as for Colemak.
  • Left pointer finger is assigned V, B, and Z keys (instead of just V and B in Colemak).

For typists that adopt the Angle Mod, no keys change fingers from standard Colemak, making it easy to adopt for existing Colemak users.

So Colemak with Angle Mod looks like the layout below:

Colemak ANSI with the Angle Mod fearure

Note — the colours of the keys correspond to the new finger assignments for the Angle Mod feature.

All the top and middle rows are the same as for Colemak.

On the bottom row the Z key is shifted to the right to an infrequent position, and the XCVB keys are shifted to the left.

http://colemakmods.github.io/ergonomic-mods/angle.html

b) The de-emphasis of the centre columns

To de-emphasise the centre columns, the letters D, and H have been relocated away from the centre columns on the home row, to a more ergonomic position on the bottom row.

The result of the relocation of D and H, and the relocations for Angle Mod is below:

Colemak Mod-DH for an ANSI keyboard. Also note the Angle Mod concept is used here as well.

However the new finger assignments for Angle Mod do require the typist to adjust, and may not be convenient for everyone.

The heatmap clearly shows that the 8 letter home keys are preserved as for the Colemak layout.

The middle columns are also less hot than for Colemak.

So the common shortcut keys in a convenient position on the left-hand are:

  • Backspace word (cntrl-W)
  • Select all (cntrl-A)
  • Save (cntrl-S)
  • Cut (cntrl-X)
  • Copy (cntrl-C)
  • Paste (cntrl-V)

However the idea that the centre columns should be de-emphasised for finger ergonomic reasons was to spawn the other keyboard layouts to come.

To obtain better finger ergonomics in general, came two layouts with a similar philosophy to Colemak Mod-DH.

The layouts were Workman, and Norman.

Workman layout
Keyboard heatmap for Workman for a sample text

Both kept the 8 letter home keys for the common letters, but de-emphasised the centre columns without requiring a new finger assignment.

Norman layout
Keyboard heatmap for Norman for a sample text

The left-hand shortcut keys for Workman are:

  • Select all (cntrl-A)
  • Save (cntrl-S)
  • Backspace character (cntrl-H)
  • Undo (cntrl-Z)
  • Cut (cntrl-X)
  • Copy (cntrl-C)

For the left-hand shortcut keys for Norman:

  • Backspace word (cntrl-W)
  • Select all (cntrl-A)
  • Save (cntrl-S)
  • Undo (cntrl-Z)
  • Cut (cntrl-X)
  • Copy (cntrl-C)
  • Paste (cntrl-V)

Now since 2016 we have the AI designed Halmak.

Introduction into Halmak, the AI designed keyboard layout

Similar in philosophy to Workman, and Norman — the Halmak layout offers the following features:

— De-emphasised the centre columns.

— Kept the conventional finger assignment.

Like the Dvorak layout, the Halmak layout was designed from the ground up.

A clean slate.

The Halmak layout uses an 8 letter home row exclusively, with punctuation in the middle columns.

This means there is no 10 letter home row.

Halmak layout

Also none of the conventional left-hand shortcut keys (undo, cut, copy, and paste) are in the same positions as Qwerty.

However there are some common shortcut keys in easier positions for the left-hand and they are:

  • Backspace word (cntrl-W)
  • Save (cntrl-S)
  • Backspace character (cntrl-H)
  • Find (cntrl-F)
  • Enter (cntrl-M)
  • Paste (cntrl-V)
  • Copy (cntrl-C)
Keyboard heatmap for Halmak for a sample text

Some trigrams are also incorporated into the layout in a diagonal movement, and include the following:

  • Y, O, and U (right hand only)
  • W, H, and Y (top left to bottom right)
  • Y, E, and S (bottom right to left)

The MacOS version of the Halmak layout is here:

The Windows version of the Halmak layout is here:

Now we have the Engram layout, based on bigrams from the Google Corpus Data.

The Engram layout has many similarities with the Halmak layout:

  • Clean slate design.
  • Punctuation in the middle columns.
  • 10 letter home row is discarded for the 8 letter home keys exclusively.
  • N-gram optimisation.

Like Dvorak and Halmak, Engram was designed from a clean slate.

A key difference, is that all the punctuation has been relocated to more ergonomic positions. This includes punctuation that is co-located with the number row, and around the Enter key.

Keyboard heatmap for Engram for a sample text

However there are some common shortcut keys in easier positions for the left-hand and they are:

  • Backspace character (cntrl-H)
  • Tab (cntrl-I)
  • Enter (cntrl-J)

A key feature of the layout is that many common bigrams are same-hand inward rolls (adjacent and non-adjacent keys).

  • EA (and AE) are adjacent keys.
  • ST (and TS) are adjacent keys.
  • HI (and IH) are adjacent keys.
  • HE, and HA are non-adjacent key inward rolls.

Other bigrams are on the stronger finger-types:

  • CO, ES, EC, and SO are on the middle-fingers.
  • AT is on the pointer-fingers.
  • IN is on the ring-fingers.

Bigrams that are less common are on weaker fingers:

  • WY, LY, and GY are on the pinkies in the corner keys.
  • RY and HY are on the pinkies.

Engram is certainly much stronger for bigrams than any of the other layouts.

For those that like the Engram letters, but want mostly the same punctuation as Qwerty then check out:

The keys are:

This layout can be used for those transitioning to Engram, or perhaps you just prefer the Qwerty punctuation to be mostly in the same position.

When comparing keyboard layouts, it’s difficult to compare the metrics.

Just as the layout philosophy differs, the method to obtain the metrics also has a different philosophy. The different philosophy means you end up comparing apples with oranges.

Instead when choosing another layout, it might be best to ignore the metrics and choose the philosophy that you agree with the most.

Philosophy A — Keep using QWERTY, but with a better home row

The layouts below are for those that want to continue using the Qwerty layout (ie 9 letter home row), but swap a selection of keys to make Qwerty less fatiguing.

Choose either of these:

  • Carpalx QWKRFY — only 5 key pair swaps and keeping ZXCV fixed.
  • Carpalx QWYRFM — only 10 key pair swaps and keeping ZXCV fixed.
  • Carpalx QFMLWY — many key swaps but ZXCV is not fixed.

Philosophy B — Emphasise the 10 letter home row

The layouts below put the main focus on maximising the use of all the letters on the home row (ie 10 letter home row).

Choose either of these for a stronger 10 letter home row:

  • Dvorak — designed from a clean slate; common letters on the home row; punctuation is relocated.
  • Carpalx QGMLWB — Only ZXC like Qwerty; punctuation same as Colemak.
  • Carpalx QGMLWY — ZXCV and punctuation same as Colemak.

Also the layouts below are for those that want to continue with Colemak (ie 8 home keys), but swap a selection of keys to emphasise the 10 letter home row.

  • Carpalx GYLMWP — retain 9 letter keys the same as Colemak with ZXCV fixed.
  • Carpalx PBFMWJ — retain 11 letter keys the same as Colemak but ZXCV moved.

Philosophy C — Emphasise the 8 letter home keys

The following has strong 8 letter home keys, but still also has a strong 10 letter home row:

  • Colemak — ZXCV like Qwerty; punctuation like Qwerty (except ;).

For layouts that place more focus on the ergonomics of the fingers (ie natural finger movement), then choose a layout with a weaker 10 letter home row.

These layouts have a weaker 10 letter home row, as the centre columns are de-emphasised.

  • Colemak Mod DH — some key swaps from Colemak; and the ZXCV shortcuts have moved but stay on the same fingers.
  • Workman — Only the ZX shortcuts are like Qwerty; punctuation same as Colemak.
  • Norman — ZXCV shortcuts and punctuation are the same as Colemak.

Note — For Colemak Mod DH, the typist should conform to the Angle Mod finger assignment.

Now for maximum finger ergonomics, discard the 10 letter home row and relocate the punctuation to emphasise the 8 letter home keys:

  • Halmak — most common punctuation relocated to the middle columns; ZXCV moved; tri-gram optimisation.
  • Engram — most common punctuation relocated to the middle columns; ZXCV moved; bi-gram optimisation.
  • EngramMod — most common punctuation relocated to the middle columns; ZXCV moved; letters as for Engram but punctuation is mainly Qwerty.

There is a common thread with all the layouts.

Essentially the greater the deviation from Qwerty, the greater the potential benefits.

After choosing the philosophy you agree with the most, then choose the layout that has other attributes you want. eg ZXCV fixed, location of punctuation, inward rolls for common bigrams, etc.

Fortunately, when switching to another layout, you don’t lose the ability to use Qwerty again — even if you are not touch typing.

When touch typing back in Qwerty, you may notice some loss of finger muscle memory for the Qwerty layout. This loss may mean that you need to look at the keyboard more often than you did before, and this is will put a limit on the maximum speed you can touch type in Qwerty.

But if you were always looking at the keyboard in Qwerty before anyway then you are likely to keep the same Qwerty typing speed that you had before.

However typing back in Qwerty is only useful until you can type faster in your new layout. So is it still worth switching away from Qwerty permanently?

Think of it this way….

What if I said you can type for less effort day-to-day for the same salary?

What if I said you can type for less effort for the rest of your life?

Would you be interested now?

Switching keyboard layouts is the gift that keeps on giving for the rest of your life….

Paul Guerin is an international consultant that specialises in Oracle database performance. Paul is based from a global delivery center in South East Asia.