Programming On 34 Keys (2022)
21 points by runxiyu
21 points by runxiyu
I’m a person that tries to use the default configurations for everything but since I started having neck and shoulder pain I started looking into this keyboards, different layouts, stuff. I tried the Glove 80 (80 keys), which is regarded as a very good ergonomic keyboard (and expensive) but I ended up selling it because I had a lot of tension on my shoulders while using it. Also, I could not reach many keys easily and one thing they say is that you should not move your hands a lot. However I don’t really know if this has been proven as a fact. Anyways, that’s where I discovered the whole stuff about configuring keyboards. That way you can create yourself a very powerful custom tool to interact with the computer. But will be mostly unique, which has some drawbacks. And suddenly you have a lot of options to choose and you don’t know how to choose because everyone is different but also trying stuff requires days and pain to at least have an insight.
Then I moved to a Periboard 335, which is similar to a Microsoft ergonomic keyboard and I liked it. But it was QWERTY and no configurable. At that point I also found out about Silakka 54 (54 keys), a cheap split keyboard (50-60€) with open source firmware you can buy on AliExpress. It is configurable with Vial and has more keys than the one in the post, but still not too many. Three thumb keys for each side, numbers, etc I think that kind of keyboard is easier to get started for many people than 34 keys. You still need to create layers though, but you can just create one. My conclusion is that… I’m still learning it, there are some cool things and maybe it’s better for my posture but I’m still not fully convinced as I haven’t recovered yet. I’m also still learning to touch type for my first time as a developer. I agree that it’s a bit easier to touch type than in normal keyboards because the grid is more obvious. But I still sometimes look at the keyboard (which is not good for my neck).
I’m doing more stuff, not just changing keyboards to solve my issues. However the amount of contradictory statements on the keyboard stuff is astonishing and it would be a dream if suddenly someone decides to study this stuff in detail (layouts, splitness, tenting, tiling, wrist pads, where to put the elbows, etc).
Would you recommend the Periboard for someone who doesn’t need the more advanced layout or config options? I’ve been looking for a compact ergo keyboard as an alternative to the massive (but comfortable) MS/logitech ones. I was also looking at the keychron ergo lilne, but the amount of options gets overwhelming.
I think it’s a solid option for a non configurable keyboard. But I have not tried any Keychron/MS/Logitech to compare. I think the Periboard is the one with mechanical switches that is the cheapest (you can find discounts easily and get it for 60€). There’s one caveat, the wrist pad is always there and some people do not find it comfortable. But maybe you don’t use it (which might be fine, it is not universally agreed that wrist pads/palm rests are ergonomical). In my case it was a bit short, my hand always touched the edge of it, but not a deal breaker.
It seems quite reasonable to me, except that I tried and couldn’t stand putting layer-switching keys on the thumb, as I like to hold and repeat enter/space/etc.
I like to hold backspace. On my qmk setup, backspace is under my thumb and holding that key puts me on the number layer. I discovered that double-tap and hold gets me the repeat behavior, and has been surprisingly easy to get used to.
My problem with layered keyboards when I tried them was that the existing key combinations become mildly frustrating to use (at best) or close to impossible to type. For instance, something like Modifier + Direction Key (very common in many applications and window managers) becomes Modifier + Layer switching key + Direction Key. That’s if the that layer is available with one single button. And if keys that belong to the combination live on multiple secondary layers, that’s game over. So one has to design the layers with all combination keys one uses in mind, which I haven’t been able to do.
Very similar experience here. I got myself one of these split concaved keyboards, and really like the ergonomic factor but having hard time remapping muscle memory when working with arrows and layer mappings.
I’m a bit fascinated at keyboard trends towards less buttons. I like buttons!
More power to people exploring things, just seems hard to believe that you’re gonna be typing faster (not the only metric for anything! But it is a metric for me)
It might surprise you to learn that a lot of the people most interested in keyboards don’t pay so much attention to optimizing WPM (though I am sure some do).
I would say the most common kind of keyboard enthusiast cares about aesthetics. They want a keyboard that looks, sounds, and feels pleasing.
A growing number of enthusiasts are either less or entirely uninterested in aesthetics and are instead concerned with ergonomics, which generally speaking means trying to minimize movement in typing. There are many facets to this, such as hand positioning (as enforced by keyboard shape and key layout), switch actuation force and travel distance (less force/less distance ~ less strain), and movement to type characters (also affected by keyboard shape and layout).
My estimation is that the appeal of minimal keyboards is part
The last category is sort of a weak argument (you could just not use the extra keys), but if you already plan on trying to avoid having your fingers move from the home position as little as possible, you’d see no need to buy or build a keyboard that has all these other buttons.
I can totally get ease of transportation and aesthetics… I like the look of my Realforce R3!
Hadn’t considered the cost factor, which feels legit. And if I could have a pocketable version of my keyboard I would be very happy
It definitely feels like a lot of this is just done “because we can” (or maybe put better conversely: they don’t add the extra keys because they don’t need them). I’m sure there are some people who dig the minimalist aesthetic too!
Speaking from personal experience, I probably type faster on my 44-keys Atreus than I do on any full size or laptop keyboard I own. Thumb modifiers are basically zero cost, so having to press layers is not really an issue. Granted, this is still ten keys more than OP; I’ve never played around with such a small keyboard for an extended period of time.
With small ortholinear (“ergonomic”) layouts you need to move your hands less, which can result in typing faster.
Every time your hand needs to “hover” over to some special buttons, it also has to “hover back” to the home row, or resting positions. It really varies from person to person, but for me, the accuracy and speed is increased even if I need to press an additional modifier key to enter a layer. For example, the numbers are on my QWERTYUIOP
row, and I now have to press an additional key to activate this layer. But it’s still overall faster for me because my hand never gets “lost” when reaching away from the home row. And for symbols, which I have on my ZXCVBNM<>/
row, the modifier just changed from Shift to some other key (except for some “special” keys like the square brackets).
For programming this is fantastic, as we use the symbols much more than when writing prose. We also navigate much more, and Vim’s modal style with regular keys combines perfectly there.
The downside is all the stuff in between: spreadsheets, or other non-prose but non-programming editing, frequently requires something like e.g. “Ctrl-Up” or “Alt+PgDn”, and this now requires using two modifiers. You can view it as you want, to me those UXs are just also horrible even when using a regular keyboard, because of the hand-hovering so far away.
I definitely type faster than before, at least when programming. But what matters to me is that I get less frustrated from getting inerrupted when my hands would “get lost” on a traditional keyboard too often.
I’ve been programming full-time on a 34 key layout for around three years now. My QMK configuration is very customized and can be viewed here: https://github.com/krig/qmk_userspace
These would be some thoughts on a few different aspects of this:
I am definitely not faster than I was before falling into this rabbit-hole, but a lot more comfortable. It is possible to get really fast on a layout like this, but I was not an exceptionally fast typist before either. Right now I’d say I type around 70-80 wpm on this layout.
Having a symbol layer is a huge improvement for coding and is probably the biggest source of comfort. It’s possible to experiment with this using something like https://github.com/jtroo/kanata without having to switch to a custom keyboard firmware.
It’s possible to get a lot of the comfort benefits without a custom keyboard by switching to an alternative keyboard layout like colemak.
It took me a while to find the right keyboard for me, and to settle on a layout system that works. There are a LOT of variables. The biggest factor may simply be hand size. The ergodox keyboards are designed for larger hands. The 34-key keyboards are probably more comfortable for more average and smaller hand sizes.
Tenting alleviates carpal tunnel strain, so a small keyboard that can’t be tented may be worse for RSI than a bigger keyboard that can be.
The ergonomics arguments around minimal keyboards are questionable. Not that I think it’s all nonsense, but there isn’t much actual evidence. My “common sense” view is that seating height/position is the biggest factor in ergonomics along with avoiding repetitive motions / taking regular breaks. Before investing in a custom keyboard I would make sure to improve monitor placement, seat height, lighting and to limit the time spent typing without a break.
This keyboard-minimalism blogging trend is rife for an accessability-themed post about Ardux, titled: “Programming On 8 Keys”
Regarding this specific config, yeah looks great! Nothing too out of the ordinary for someone following the meta, but a solid and well-motivated, personalized distillation of the likes of Miryoku and Getreuer’s symbol layer advice. I’m a right-hand numpad kinda person myself (and a leftie, maybe that correlates? but i think it’s normal for full-size keyboards and retail setups). I configured a very similar lily58 but the position of the thumb keys didn’t work for me… so the congrats go not just for designing, but for using something that’s comfortable for you c:
Another option I’d reccommend for software layout config and/or exec bindings would be kanata.