Last year my former colleague Kevin told me about the Ultimate Hacking Keyboard. It’s a mechanical keyboard which is split in half to support a more ergonomical hand posture. I was intrigued. Unfortunately it comes at a very high price. The current version “UHK2” with the additional “Palm Rest” (which I obviously need as well) is sold for about 400€. I hesitated, mainly because I was not sure if I could get used to the US layout. A German layout is not available and I wanted to try to use the US layout for programming anyway. So I decided to buy a cheap US version of my current Logitech keyboard to give the US layout a try first.
The US keyboard layout and why it’s so awesome
The US layout has some advantages to the German layout when it comes to programming. There are dedicated keys for brackets, slash and backslash. The single and double tick are on a key that is easy to reach. Greater than and lower than are also on dedicated keys which comes in handy when writing html/xml. The @-sign is on shift-2, which is much more convenient then AltGr + Q.
The circumflex and the single backtick which is often used in markup to highlight code is not a dead key in the US layout. A dead key is a key that is used in combination with another key to create a letter that does not exist on the keyboard. On a German keyboard you can press ´ and afterwards e to create an é which is necessary to write names like René or André. The single backtick is a dead key on the German keyboard as well. So if you want to write a code block e.g. in Slack you have to press ` four times. Only every second key press lands on the screen because your os waits for the following letter.
The Germans and their Umlauts
So I am a programmer. I should definitely use the US layout. Right? Well, unfortunately programming is not the only thing I do in my daily business. I also communicate with people. A lot. Mainly in German. Unfortunately Germans have Umlauts like ä, ö and ü . Also there’s the “sharp s” ß. Now, it is possible to add an e to the vocals and use ss instead of ß. People will understand me. But it looks ugly and some words get harder to read. For instance Brücke looks nicer than Bruecke. Also the ß cannot always be replaced with a double-s. Some words get a different meaning that way. Masse means mass while Maße means measurement.
The worst thing probably is that there is no Euro sign on the US keyboard.
So what did I do to deal with this problem?
Switch, switch, switch, switch…
In every operating system you have the possibility to install multiple keyboard layouts. Also there is usually a hot key to switch between them. In Windows it’s Alt+Shift. In Linux and Mac Os you can define your own hot keys. So that’s what I did. I installed the US layout and the German layout and I switched all the time. Unfortunately the human brain (or at least mine) can’t switch as easily as the operating system. I continuously confused the layouts which made me produce a lot of typos and ultimately slowed me down.
One day I accidentally (really, it was an accident) spilled coffee over my US keyboard. I disassembled it to let it dry and switched back to the German keyboard and I kept the German layout. Using the US layout without a physical keyboard as reference was too confusing for me.
Let’s get international
So what made me change back? Well, ever so often my colleagues talk about hardware recommendations in our Slack. One day they talked about mechanical keyboards again and my colleague Carl-Eric Menzel wrote that he uses a US keyboard with the so called “US-international” layout. That sparked my interest. The US-International keyboard layout extends the US layout with extra characters that are accessible by using AltGr. So for instance for ä, ö and ü you use Alt+Gr combined with q, y and p. Now that was nice. The sharp s was also easily available by using Alt-Gr+s.
I was excited and checked if the US international layout was also available for Windows (Carl uses Linux). Turns out it was! Unfortunately there was another drawback. The original US-International layout provided by Microsoft is full of dead keys. Even the double-tick “ was a dead key and that was an absolute no-go. So I looked for a solution and found a stackexchange thread that promoted a tool called Keyboard Layout Creator. With it I was able to modify the US International Keyboard and eliminate the dead keys. That worked pretty good and I was really happy with it. Finally a layout without dead keys, that offered all the Umlauts I need.
Europe here I come
Because I was so happy about the solution I decided to tweet about it. I received positive feedback. One answer though was especially notable. @bleeptack mentioned the European Keyboard layout. A customized layout that works like the US international layout but with some tweaks. Most importantly it puts the umlauts on a,e, and o instead of q,y and p. When I tried it first, it immediately worked for me. No looking up keys, no motor memory training, it just worked. I have been using it since the day it was recommended to me and I simply love it. You can seamlessly switch from programming to writing without shifting your mind. A huge boost in productivity.
If you want to try it yourself, simply download it from the homepage and install it. It is available for the three major operating systems. In many Linux distributions it’s already included.
Sharing is caring
I really think that this keyboard layout is great and you should definitely try it. As a matter of fact, I told Kevin, the colleague I mentioned in the beginning of this article, about it and he was completely amazed. It was exactly what he had always been looking for, but never found. That’s what inspired me to write this blog article. I want more people to get to know about it. So please try it and if you like it, you can support the work of the author by
Please note that I do not profit in any form from this. I simply think it is worth mentioning because it definitely made typing more fun for me. And it may do the same thing for you.
Now all I have to do is save some money to eventually buy that Ultimate Hacking Keyboard.