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)?
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:
I should try that out. I’ve been using DVORAK for a while but have been thinking of switching to NEO
Oh, yeah you should. I mean I’d advice against it, but since you already know the pain of switching layouts… sure, go ahead! :D
I prefer Bone over Neo, Neo has quite broad software support though. I’m using Bone on Linux and macOS without any issues.
Could you please give a few insights into why bone over neo? I’ve used neo now for a few years, curious if it would be a fun extension to switch again!
(dead thread I know, but whatever)
It’s very similar, more like an evolution from Neo than a revolution. They switched a few keys and if you’re starting fresh I think I’d recommend Bone, but if you already know Neo I’m not sure switching is worth it. It could be fun though (if you consider learning a new layout fun ^^).
Especially because the thread was dead your answer is highly appreciated!
Appreciate it <3
Never used a US keyboard in my life. Why would you think US keyboard is the norm?
Always used it. You have instant semicolon instead of Ä, which you don’t use when coding, and brackets and curlies are a breeze, the comfort is well worth it
You’re on /c/programming.
Also, it’s even ISO standardized, so yeah, it’s an international norm.
Pragmatically: most programming languages are developed in a way to that it’s easy to type them up on a standard us layout. As English only has 26 letters, which is less than any other language using the latin alphabet (don’t even start me on languages with accents like ñ or that differentiate between à, a, á, and â), all the special characters are usually easily accessible. Most others layouts will tuck them away behind non-trivial combinations in favor of improving accessibility of extra letters and special characters. Cuz essentially in human language you barely need
*
and[
. So, I guess, right ctrl + left shift + 9 will do? how do you feel about coding in python on that. Or on a keyboard where the space for your|
has been allocated to some letter ø and your OR operator has been moved to the numpad.There’s lots of programmers on languages that need more keys readily than us keyboard has. Äöüß, just to give an example.
I don’t know, every time I read a post like this I’m kinda speechless. I know lots of Americans and many of them are brillant and open-minded, but then there are posts like this which are completely oblivious that there are reasons for other keyboard layouts.
The reason OP can’t fathom programming on those is that they aren’t used to it. If you grew up with non-us layouts you similarly couldn’t fathom programming on the us layout.
Sometimes I feel like people refuse to even think about acknowledging that there are other experiences than their own. Go out, try out new things, exercise your brain and callenge yourself.
I’m not American, I speak a few European languages, I can type on a multitude of layouts. They all suck for programming, I know firsr-hand. And watching those people who “grew up with a layout” to use two hands for a
ctrl+z
is both hilarious and painful.Wtf, who needs two hands for that? Do they have children’s hands?
It’s all a matter of habit - for me all layouts but my native sucks for anything to do on a keyboard. The only thing that sucks is if keybinds are set to shift-/ because / is already shift-7. I haven’t found a replacement for that yet. Forgot which program used that and for what, but I remember it was a bummer. Still wouldn’t spend all that time and energy and slowdown learning a different layout.
So now we go from “you are so culturally dense” to “I’m unable to learn a different layout”, “what’s wrong with your hands are you a midget”.
You’re on /c/programming.
Could just as well have been a writing prompt community. It’s just writing ANSI characters for the most part.
Also, it’s even ISO standardized, so yeah, it’s an international norm.
I’d wish something being ISO meant it’s the norm, but that’s just not the case. #ISO8601Gang
Pragmatically: most programming languages are developed in a way to that it’s easy to type them up on a standard us layout. As English only has 26 letters, which is less than any other language using the latin alphabet (don’t even start me on languages with accents like ñ or that differentiate between à, a, á, and â), all the special characters are usually easily accessible. Most others layouts will tuck them away behind non-trivial combinations in favor of improving accessibility of extra letters and special characters. Cuz essentially in human language you barely need
*
and[
. So, I guess, right ctrl + left shift + 9 will do? how do you feel about coding in python on that. Or on a keyboard where the space for your|
has been allocated to some letter ø and your OR operator has been moved to the numpad.As a user of a keyboard layout with æ, ø, å, who also uses python daily, I can promise you that there are zero issues with it.
Most people will grow up with a keyboard layout designed for their native language’s need. If it uses Latin characters, there should be minimal issues using it for programming too.
I just explained what the issues are. Programming languages heavily rely on special symbols.
If you haven’t watched yourself from the outside, how do you know “there are zero issues with it”? You might be constantly breaking the typing flow and need to use a two-hand combo for some mundane
[]
. While someone on a US layout never needs to lift their hands of the keys, because all they need is actrl
with a pinky + right hand within reach.When I learn a new language, I also learn a keyboard layout for it. Or do you also write in Spanish on your keyboard? How do you make an à and an á?
Ah, that’s right, you speak two languages, you’re stuck using your comfort zone layout, and you’d ofc argue “zero issues”.
If you haven’t watched yourself from the outside, how do you know “there are zero issues with it”? You might be constantly breaking the typing flow and need to use a two-hand combo for some mundane
[]
.Because I don’t have the issue you’re projecting. And if someone do have that issue, what type of programmer (assuming no physical disabilities) has their productivity limited by their typing speed? No one would be my guess.
While someone on a US layout never needs to lift their hands of the keys, because all they need is a
ctrl
with a pinky + right hand within reach.Cool, same here , just that sometimes we press alt gr instead of ctrl.
When I learn a new language, I also learn a keyboard layout for it. Or do you also write in Spanish on your keyboard? How do you make an à and an á?
ctrl + \ and then a for à and alt gr + \ then a for á. It’s really not much of a hurdle. And definitely faster than trying to learn a new keyboard layout that I can’t type on without looking.
Ah, that’s right, you speak two languages, you’re stuck using your comfort zone layout, and you’d ofc argue “zero issues”.
Are we talking actual languages or programming languages? Either case, you assumption is wrong. I don’t understand where all your antagonistic energy is coming from. It’s just a keyboard layout, there isn’t a single correct one. Just use what you’re used to and that you can write with a good flow, which for most people will be the layout they grew up with and can type in the blind with.
I alternate between US-QWERTY and LT-QWERTY. My biggest problem is typing ž instead of =