
Ask HN: What keyboard layout (for programming) are you using? - internetwache
Hi HackerNews, 
I&#x27;m currently using a german laptop keyboard and I&#x27;ve been playing with the idea of replacing it with a UK&#x2F;US keyboard.<p>I&#x27;ve asked some friends about this I got mixed answers:<p>- Buy a german keyboard and use stickers (more keys)<p>- Buy a UK keyboard (bigger enter key)<p>- Buy a US keyboard (better key arrangement)<p>In all three cases I&#x27;d have to relearn&#x2F;retrain my muscle memory, but I think it might be worth to know another layout if I get a job abroad?<p>I&#x27;d like to ask HN:<p>- Have you switched keyboard layouts before and which one are you using right now?<p>- Is it worth learning a new keyboard layout?<p>- Anything else to consider?<p>Thanks!<p>EDIT: Tried to fix the lists
======
ajsalminen
You don't really need to swap the keyboard to swap layouts and in fact it can
help with learning to touch type when you are unable to rely on the markings
on the keyboard. You might also want to consider going with a more dramatic
change if you want to find something really convenient in the long run and
don't mind losing QWERTY.

I'm using COLEMAK with a customized layers from Neo2. Neo2 would probably be a
fine option if you want to write in german and COLEMAK with Dreymar's symbol
layers might be the option I'd start with solely for programming if I wanted a
ready solution with some support from OS vendors.

Look up TARMAK for an easy way to gradually move to the new layout If you
decide to go for COLEMAK. It's much better for retaining most of your
productivity during the process than just swapping the whole layout at once.

------
CyberFonic
I'm assuming that you are attaching an additional keyboard to your laptop. In
that case, I would choose a US keyboard. Some heavily used punctuation
characters are in more convenient positions than on a German keyboard (I
looked at the MacBook version).

As for relearning, it really depends on how much material you write in German.
I'm multilingual and switch the MBP keyboard to suit various languages, but it
is a pain, trying to get the various accented characters correctly. I
certainly can't touch type in anything but English on the US layout.

If only there was an extended keyboard with all European accented characters
accessible with a single keystroke and in "logical" positions. The iPad on-
screen keyboard solution to this problem is commendable, but still slows me
down.

Maybe a programmable keyboard is your answer, e.g.
[http://www.touchwindow.com/c/CherryIndustrialProgrammableMSR...](http://www.touchwindow.com/c/CherryIndustrialProgrammableMSRKeyboard.html)

------
informatimago
I use an US keyboard.

There are two reasons for that:

1- I learned typing on a QWERTY keyboard first (on terminals and TTYs in
1975);

2- but foremost, I noticed that most programming languages are designed in the
US, or by people using a US keyboard, and use the special characters of the
ASCII character set easily available on a US keyboard layout.

When you try to type programs on a different layout you will quickly notice
that each special character needs more complex key combinations to be typed,
which gives a much less fluid typing of programs.

For natural language text, it wouldn't make a lot of difference, since there
is a much lower ratio of special character to alphabetic characters.

Now if your programming language was Qalb, then I would definitely advise to
use an Arab layout:
[http://nas.sr/%D9%82%D9%84%D8%A8/](http://nas.sr/%D9%82%D9%84%D8%A8/)
[https://en.wikipedia.org/wiki/Qalb_(programming_language)](https://en.wikipedia.org/wiki/Qalb_\(programming_language\))

There's little difference between the US and UK keyboard, however, I much
prefer the wide horizontal return and left shift keys of the US keyboard than
the narrow vertical return key and the truncated left shift key of the UK (and
other "international" keyboards). (Strangely enough I use almost exclusively
the left shift key over the right one). So I would definitely advise to
explicitely ask for a US qwerty keyboard, and not just a QWERTY keyboard
because some vendor will then just deliver you an UK keyboard.

A final point: we use a lot of different computer hardware and systems; each
hardware has its own human interface variants (keyboards, trackpads, mices,
trackpoints), with different software keyboard layout and functions (notably
regarding the modifiers and function keys). IME, this is where most of the
pain comes! This can be solved by using the same keyboard and pointing device
on all your computer systems. Happily, nowadays it's easy to do, thanks to USB
and bluetooth: you can buy eg. half a dozen Filco Otaku Tenkeyless keyboads
and half a dozen HP logitech 3-button optical mice, and thus have the exact
same physical interface to all your computers. Remains then only to configure
the software keyboard layout and modifiers keys identically on all you
computer systems (easily done with Xmodmap on X11, harder to do on macOS and
MS-Windows, but still possible. At least, if you use emacs (but as a
programmer, I assume you DO use emacs), you can always remap all the keys and
modifiers to be exactly the same everywhere, if only inside emacs).

