this post was submitted on 29 Jan 2024
132 points (88.4% liked)

Programming

17270 readers
39 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 2 years ago
MODERATORS
 

I've used a US-QWERTY keyboard layout my entire life. I've seen other layouts that do things like reduce the size of the enter/backspace keys, move the pipe operator (|) and can't wrap my head around how I would code on those.

What are your experiences? Are there any layouts that you prefer for coding over US English? Are there any symbols that you have a hard time reaching ($ for example)?

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 84 points 10 months ago (16 children)

Never used a US keyboard in my life. Why would you think US keyboard is the norm?

load more comments (16 replies)
[–] [email protected] 48 points 10 months ago (3 children)

I use the UK layout, because I am British. Why would I use the US layout?

[–] [email protected] 45 points 10 months ago (4 children)

Average American trying to comprehend that people from other countries exist

load more comments (4 replies)
load more comments (2 replies)
[–] [email protected] 44 points 10 months ago

I'm pretty sure most people outside the US do that

[–] [email protected] 38 points 10 months ago (5 children)

ISO for life.

You can keep your stupid tiny little enter key.

[–] [email protected] 15 points 10 months ago

This!

Oh good I hate that tiny little enter key.

load more comments (4 replies)
[–] [email protected] 37 points 10 months ago* (last edited 10 months ago) (2 children)

I prefer a British keyboard layout as that's where I've always lived and that's what all the computers come with here.

Actually no, Apple fucks it up a bit by having a weird hybrid between US layout and British layout which is pretty infuriating to have to learn (opt+3 for the # character? wtf Apple?), particularly given I switch between PC and Mac daily

load more comments (2 replies)
[–] [email protected] 37 points 10 months ago (2 children)

I program like I learned it? I use my German QWERTZ layout. A lot of keys are different, yes, but I grew up with this layout and I'm used to it. Imagine giving me a US QWERTY layout and I would misstype every time. I even hate it when Windows swtiches my keyboard layout, even though I removed the shortcuts to it and I misstype constantly. Heck even Visual Studio switched my shortcuts and it sucked.

After some time I realized that (Game) Devs suck, because they forget that other layouts exist. Its not a big deal, but at some point I realized that the Chats on T, Y, U makes much more sense on a QWERTY Layout. Also Markdown with ` kinda sucks. For a codeblock, I need to hold shift and press the key that is left of backspace 3 times and then one space, because when I press it once, nothing happens but pressing it a second time, 2 appear. Pressing space let it appear directly. Or I type 4 and remove one.

But this it what I'm used to. And if I ever would work outside Germany, I will bring my own QWERTZ keyboard and require them to install the German Keyboard. I don't need a German UI. I have all programming related software in English, because its easier to google stuff.

load more comments (2 replies)
[–] [email protected] 28 points 10 months ago (6 children)

A lot of us don't live in the US to begin with, so I assume a significant portion of us just use whatever the local standard is. That's where I've been at so far, the Brazilian layout is a QWERTY variant so not that different. It does make some things more awkward, but you get used to what you have to work with.

Brackets and curly braces are less convenient off the top of my head, backticks too. Vim is a tad less ergonomic without some extra fiddling, for instance. In fact, I've been considering getting a US keyboard for coding to make that kinda thing less of an issue, US international makes accents and whatnot accessible enough that I think I could make it work.

[–] [email protected] 5 points 10 months ago* (last edited 10 months ago)

If you're cheap like me, just change the keyboard layout on the software side and instead of looking at the now incorrect key caps, look at the American keyboard layout image on Wikipedia instead. It doesn't take long to relearn the few differences. And the parentheses are more ergonomic on the us keyboard layout IMO.

Edit: compared to the German layout. Brazilian looks ergonomic enough for programming without having to switch.

load more comments (5 replies)
[–] [email protected] 22 points 10 months ago* (last edited 10 months ago) (4 children)

What are your experiences? Are there any layouts that you prefer for coding over US English? Are there any symbols that you have a hard time reaching ($ for example)?

I'm using a PT-PT ISO layout keyboard, zero issues reaching anything, works as good as your US keyboard for coding. Actually it might work better because I have a bigger "enter" key.

can’t wrap my head around how I would code on those.

Typical American trying to comprehend that people from other countries exist? :P

Think about it this way, all the EU keyboards are essentially the same as yours but tweaked to accommodate languages that have more special chars than English.

load more comments (4 replies)
[–] [email protected] 18 points 10 months ago

They told me not to reinvent the wheel, so all I need to program is this:

[–] [email protected] 16 points 10 months ago

I am German and I use the German keyboard layout...

[–] [email protected] 15 points 10 months ago

If you don't live is the US, it's pretty common to not use a US keyboard!

Tried the maltron layout at one point. Nope.

[–] [email protected] 15 points 10 months ago (4 children)

Swedish layout. Not ideal for coding (too many things like curly and square brackets etc are under altgr. And tilde and backtick are on dead keys.

But switching back and forth as soon as you need to write Swedish (for the letters åäö) is just too much work. And yes, in the Swedish alphabet they are separate letters, not aao with diacretics.

[–] [email protected] 5 points 10 months ago* (last edited 10 months ago)

I'm swedish and I use EurKEY. It's basically US but makes it possible to use Å/Ä/Ö through altgr + W/A/O. I don't write that much swedish so I'm not too bothered, meanwhile the coding advantage is huge for ' " \ | / ? | [ ] { } .

load more comments (3 replies)
[–] [email protected] 14 points 10 months ago (7 children)

I program with the italian layout and i's fine, the only annoyances are that to use the slash you need to use shift, all while the backslash has a dedicated key; also you need to use alt codes to type a tilde.

load more comments (7 replies)
[–] [email protected] 14 points 10 months ago (1 children)

You just... get used to things. Like how you first got used to your keyboard to begin with

load more comments (1 replies)
[–] [email protected] 14 points 10 months ago (1 children)

Well, technically Dvorak is a US-ANSI layout, so … no.

load more comments (1 replies)
[–] [email protected] 13 points 10 months ago* (last edited 10 months ago) (2 children)

I believe most people in Europe use a localized ISO layout. I used ISO for most my life but in my personal opinion ANSI is way better for software development. I just don't see myself ever going back to ISO.

I wish I was brave enough to try Colemak or Dvorak, tho!

[–] [email protected] 5 points 10 months ago (1 children)

I'm used to the ISO layout, so whenever I type on an ANSI keyboard I miss the enter key and hit the one above. It's annoyingly hard to find laptops with ISO keyboards.

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 11 points 10 months ago (3 children)

quick AZERTY users this is the time to show we exist!

load more comments (3 replies)
[–] [email protected] 11 points 10 months ago (1 children)

I use EURkey, which is basically a superset of the US layout extended to support symbols from several European languages.

load more comments (1 replies)
[–] [email protected] 11 points 10 months ago (7 children)

my keyboard looks like this... so... no?

and honestly it's so much nicer to program with a small keyboard. everything is exactly where you need it to be. I don't ever have to reach for a key, as they're all right there. And I can make them do literally anything I want. So many benefits of a small keyboard over a full size.

[–] [email protected] 6 points 10 months ago (2 children)

Why are there two cables connecting the left and right part? Just curious.

load more comments (2 replies)
load more comments (6 replies)
[–] [email protected] 10 points 10 months ago (1 children)

I use german layout because I'm from Austria

load more comments (1 replies)
[–] [email protected] 10 points 10 months ago

I use German QWERTZ

[–] [email protected] 8 points 10 months ago (2 children)

I used DVORAK for years, but went back to QUERTY mostly because it made life hard on on the rare occasion I needed to use someone else's computer.

load more comments (2 replies)
[–] [email protected] 8 points 10 months ago (3 children)

I use a variant of the Neo-Layout called Bone. It's an ergonomic layout optimized for German and English text. The base layer is already different (see the linked page), but I also really like it for programming, since there's an entire layer with easily accessible symbols:

Bone layout layer 3 with symbols

load more comments (3 replies)
[–] [email protected] 8 points 10 months ago

UK QWERTY, no trouble hitting any keys. $ is not hard to reach, | is a bit annoying since it's right next to shift, which you need to type it, but it's not too bad.

[–] [email protected] 7 points 10 months ago

CH layout, superior for everything inbetween german, italian and french. US layout has no äöü, which makes it cumbersome in daily use.

[–] [email protected] 7 points 10 months ago

I’m British and use the ISO-UK layout.

[–] [email protected] 7 points 10 months ago (2 children)

I use a country-specific ISO layout, and while I'm very aware that certain things are insanely awkward compared to a US keyboard, like { }, [ ], $ and /, you get used to it. You get used to everything over time. I even use the default vim bindings and have gotten used to them as well.

load more comments (2 replies)
[–] [email protected] 6 points 10 months ago (1 children)

UK layout is the GOAT. It isn't that much different from US layout at first, but there are so many more special characters readily available. Particularly useful for multiple languages like Spanish, German, Swedish, etc.

load more comments (1 replies)
[–] [email protected] 6 points 10 months ago (3 children)

I grew up with DE ISO and switched to US ANSI with EurKey a few years ago. ANSI is so much better for programming!

Also more options for key caps.

load more comments (3 replies)
[–] [email protected] 6 points 10 months ago

It depends on what you're used to and the programming languages you use. I learned typing on a German QWERTZ keyboard and while that works for languages like Python and Haskell, which are indentation-based, but for languages which use braces like Java, C, Rust, or similar, it can be annoying to have to use altgr+7 or altgr+0 for { and }. Thus I switched to a US ANSI layout, which was nicer for those specific characters, but caused problems when typing local characters like öäüß. After switching to Linux I set up a compose key, letting me press compose + a + " for ä for example, and while that's a decent patch, that still breaks the typing flow. So now I'm in my ergo keyboard phase and trying to get my own personal layout going, which meets my own needs for needed characters, based on a colemak-dh design.

[–] [email protected] 5 points 10 months ago* (last edited 10 months ago) (2 children)

I've used various layouts of non-US keyboards over time since I've lived and worked in various countries in Europe and whilst you do start by looking down to find stuff and for a while will at times unthinkingly choose the "old" position for a symbol when touch typing, you just get used to the new layout in a month or two, even if touch typing - your brain just starts directing your fingers to the new positions.

That said, for seldom used symbols you still have to look down and check on which key that symbol is (it's generally printed on the key), I suppose because you don't really exercise those enough for your brain to reliably start sending your fingers to the new position without looking.

(So given the languages I usually program with, for stuff like semicollon and open and close brackets and parentesis the brain quickly adjusts but stuff like the dollar sign I still have to look down and check, which is really noticeable if for some reason I have to do some shell scripting or similar)

Things like letters and numbers don't change position so that's not a problem.

Once you've become accustomed to a new layout, switching keyboards between those layouts is a bit like switching the side of the road you're driving (say, between the UK and Continental Europe) - you get a couple of hours of extra memntal tension and having to think things a bit more at first and after that you've fully readjusted.

load more comments (2 replies)
[–] [email protected] 5 points 10 months ago* (last edited 10 months ago)

I use UK-Layout, with some remappings for my precious umlauts

q+altgr ->ü
a+altgr -> ä
s+altgr -> ß
z+algr -> ö

bonus: in contrast to the peasentry I have an uppercase ẞ (altgr+shift+s)

[–] [email protected] 5 points 10 months ago

I use Colemak where most punctuation is at the same place as in the US English layout, which programming languages seem to be optimized toward. For the layout I prefer ISO for the larger Enter key.

[–] [email protected] 5 points 10 months ago

I use a UK keyboard, | is pretty easy to access and $ is Shift+4.

I'm guessing you mean more exotic keyboards. I've used a Swedish keyboard while helping a friend and I had to ask where every key was. You probably just learn the combinations eventually.

[–] [email protected] 5 points 10 months ago

It's all usable when you get used to it, but this is a great thread to link for people who develop scripting and programming languages, or just text-based technical interfaces. Because yeah, all that crap is designed with the US layout in mind and screw whoever chooses to use ~ and | as commonplace characters.

FWIW, I don't even code and I still keep a US layer in the background. I forget which one I'm using constantly, it's all muscle memory. I just Win-space and try again whenever I type a character and it's not what I expect.

[–] [email protected] 5 points 10 months ago

I prefer ISO layouts. ANSI somehow just seem inefficient to use. I habe layers for CODI g so I have my brackets/braces on the hometown along with other relevant keys. Long live custom keyboards

load more comments
view more: next ›