[HN Gopher] Programming on 34 Keys
       ___________________________________________________________________
        
       Programming on 34 Keys
        
       Author : mmazzarolo
       Score  : 72 points
       Date   : 2022-08-30 09:13 UTC (13 hours ago)
        
 (HTM) web link (peppe.rs)
 (TXT) w3m dump (peppe.rs)
        
       | RistrettoMike wrote:
       | I recently pared back my own layout to something similar, and
       | it's been surprisingly comfortable. I had learned to type on a
       | split board for the first time a few months ago, and going from a
       | more "full" split layout to something where you've essentially
       | shoved all non-alpha inputs down into other layers was actually
       | surprisingly intuitive.
       | 
       | I'm still memorizing some inputs; ones that require holding a
       | layer key, then holding a homerow mod on one hand, and finally
       | hitting the intended character key are proving especially tricky.
       | 
       | (eg: hold thumb key to switch to symbol layer, hold down homerow
       | mod for shift, press desired symbol for shifted version -- poor
       | example, but all the same.)
       | 
       | More folks should give this sort of thing a try! Provided you're
       | not also re-learning the alpha-key locations at the same time,
       | it's really not so bad a transition. A day or two architecting
       | your layout, a few days tweaking with use, some dedicated
       | practice, and normal use from there on out should get one
       | comfortable. :)
        
         | AndrewOMartin wrote:
         | Not sure if relevant XKCD: https://xkcd.com/1806/
        
       | dhosek wrote:
       | I remember seeing the half keyboard back in 2001
       | (http://www.amazon.com/exec/obidos/ASIN/B00006IZIL/donhosek) and
       | being intrigued with it (I was contemplating it for use with my
       | Palm Pilot) but the price was prohibitive for something that I
       | might not like. Ultimately, the fact that I have to move between
       | computers periodically has kept me from doing anything but a
       | traditional qwerty keyboard for anything.
        
       | wishinghand wrote:
       | I've always been of the opinion that 36 is too few, but this does
       | a good job of converting me. I already do similar stuff with
       | layers ie: one layer for a right hand numpad, another for home
       | row arrows and some common programmer symbols.
       | 
       | One of these days I'll try out something other than QWERTY.
        
       | js2 wrote:
       | I worked with someone years ago who tried to teach himself to use
       | a pair of corded bat keyboards:
       | 
       | https://www.infogrip.com/bat-keyboard.html
       | 
       | His plan was to mount them to the sides of his chair so he could
       | type with his arms hanging at his sides. I don't recall if ever
       | got past using just one of them, and actually, I'm not sure why
       | he needed two in the first place. Now I'm doubting my memory.
       | Anyway, more on this innovative keyboard:
       | 
       | https://hackaday.com/2020/08/18/inputs-of-interest-the-infog...
        
         | memco wrote:
         | That looks quite a bit more spartan than these chara corder
         | keyboards I saw in use recently: https://www.charachorder.com/.
         | They have a QWERTY keyboard with chording firmware (and a chip
         | for custom keyboards) to try corded input for those who want to
         | experiment without going all in.
        
       | insane_dreamer wrote:
       | I've found using Dvorak on a standard keyboard (until split
       | keyboards became available) is quite efficient -- haven't found
       | the need to switch to anything smaller. Back in the day built a
       | mechanical foot pedal that would activate the control key for
       | programs that required a lot of Control-key combinations (like
       | WordStar), but fell out of use over time. Been using this setup
       | for 35 years now.
        
       | SuperCuber wrote:
       | Correction: s/to move $ to the left of ^/to move $ to the right
       | of ^
       | 
       | Good post, although I find homerow mods kinda annoying so I
       | personally don't use them (ergodox ez). I think the perfect
       | layout for me would be something like a Sofle :)
        
       | ZeroGravitas wrote:
       | This is roughly what I do too. I've found it pretty good.
       | 
       | Minor differences:
       | 
       | I use Dvorak as the base setup.
       | 
       | I use the same system on Mac laptops, so the two inner thumb keys
       | are both 'space' because when on the laptop rather than a split
       | keyboard I use the spacebar to toggle into the num/symbol layer
       | if held (I believe you can actually use thumb on the trackpad as
       | extra keys if you want and your laptop layout works, but never
       | got around to trying it).
       | 
       | Command keys on Mac laptop (either side of the spacebar) are set
       | to backspace and enter if used individually.
       | 
       | I didn't go full home row mods after trying it. I use two keys at
       | once for ctrl (sd or kl on a qwerty layout), and two keys at once
       | for shift (cv or m, on qwerty).
       | 
       | A few other double key shortcuts e.g. xc as ":" for vim stuff,
       | and cv in querty (jk in dvorak) as escape.
       | 
       | I have a 36 key keyboard but I guess due to the double space it's
       | a 35 key layout. Don't use the other button (option) for much,
       | just arrow keys with vim hjkl so could possibly live without it
       | as a 33 key layout.
        
         | pkamb wrote:
         | What application do you use to set this up on a Mac?
        
           | ZeroGravitas wrote:
           | Karabiner does the actual remapping.
           | 
           | https://karabiner-elements.pqrs.org/
           | 
           | and
           | 
           | https://github.com/yqrashawn/GokuRakuJoudo
           | 
           | lets you write your keymappings in a text editor and
           | translate it into the weird XML/JSON syntax so you don't have
           | to use the GUI editor.
        
       | falcolas wrote:
       | I've tried to use smaller keyboards with layers, but unless I'm
       | using them everywhere I will forget what buttons to hit. And
       | ultimately, my desk space is not at such a premium that a full-
       | sized keyboard is unwelcome in that space.
       | 
       | I do also enjoy (full sized) split keyboards though.
        
         | aendruk wrote:
         | Yeah the trick is to actually use the small layout everywhere,
         | not just for consistency but to continue getting the benefits
         | of reduced finger strain and hand motion.
         | 
         | I reproduced most of a small keyboard's layout on my laptop
         | using KMonad and now don't even touch about 20 keys even though
         | they're available. It's that realization that makes one dream
         | of just omitting the unused hardware.
        
         | ZeroGravitas wrote:
         | When learning my 36 key layout, I needed to disable the other
         | keys on my full size keyboards, to force myself to use the
         | subset. Once I'd learned that, I could turn them back on
         | without being tempted to fall back to them instead of learning.
         | Once I learned it, I prefered it even on the keyboards with
         | many more keys available, like my Kinesis Advantage.
        
       | yewenjie wrote:
       | I have found the Miryoku layout extremely well-thought and easy
       | to use - https://github.com/manna-harbour/miryoku
       | 
       | It has six or seven layers, and aggressively uses home-row mods.
        
       | 100011_100001 wrote:
       | I have to share my story, because I read the comments here and
       | the post and I fell into a similar trap about a year ago.
       | 
       | It all sounds good. Compact keyboard has always appealed to me,
       | so did ergonomics, I bought a split keyboard (36 keys) with
       | Miryoku layout and went to town. I lasted about 1 month and quit.
       | 
       | What happens is the amount of keys you have to type concurrently
       | increases forcing your fingers in weird positions.
       | 
       | For example, typing the following 48 characters
       | if (needle in [a, b, c]) {           println('found it')        }
       | 
       | In a standard keyboard you have to press 53 key presses
       | (parenthesis is Shift+9 so that's two keys for a single
       | parenthesis etc)
       | 
       | In a Miroyoku layout it's 59 key presses. This might not sound
       | like a lot but it's a ~10% increase.
       | 
       | It also doesn't account for a very big problem, arrow key
       | navigation for non VIM users. Since pressing the arrow keys
       | requires two button presses in smaller keyboards, and done
       | repetitively it's a huge slow down in navigating text. Now there
       | are solution to this, most IDEs can support VIM keybinds, or have
       | their own hot keys to skip words etc. To me the arrow key
       | navigation is what got to me long term and I opt4ed out of it.
        
         | chrisBob wrote:
         | It is interesting that you think arrow keys are a likely
         | blocker. I have a Kinesis Freestyle Pro and my favorite feature
         | is having the arrow keys on the second layer as vim style HJKL.
         | I also have backspace, esc and del on the second layer with the
         | right half of the space bar as the layer shift key. Moving
         | these common keys made a huge difference to me, and was an easy
         | transition since I exercise them so much.
         | 
         | The reason I couldn't move to a much smaller keyboard is that
         | the less common keys that I use a few times a day like `{}\<>?
         | feel like they would be so much harder to retrain. Similarly I
         | am only passable at touch typing my number row, and I don't
         | think I could survive without the labels for the symbols that
         | are usually over the numbers.
        
         | guidoism wrote:
         | I'm at 48 keys right now, but I would like to counter that it's
         | not just key presses you should care about, but also movement
         | of the hands. My setup definitely isn't perfect but your
         | example is exactly the kind of key sequence I have optimized
         | for. Having parenthesis and the various brackets on the home
         | row or very close is super awesome for programming.
         | 
         | Honestly, you don't need to go down to so few keys, just
         | program your keyboard to have one more layer that puts those
         | special characters into a better place for you and I think
         | you'll get 90% of the benefit of the OP's keyboard.
        
           | ZeroGravitas wrote:
           | What actually tipped me over to doing this 'layers' thing,
           | was exactly these keys being in different places on different
           | keyboards.
           | 
           | Having (){}[]-+ in the same place and easily touch-typable
           | was much better than having them in different places
           | depending on what I was typing on (dvorak already has < and
           | >, ' and " period and comma in a sensible place).
        
       | feifan wrote:
       | I'd love to see the opposite -- bigger keyboards, with more keys
       | dedicated to domain-specific functions (something like this[0]).
       | I think that would mean less cognitive overhead in general as you
       | do a particular job.
       | 
       | [^0]:
       | https://twitter.com/mwichary/status/1537631208414191616?s=21...
        
       | kitsunesoba wrote:
       | For my usage I've found the happy spot to be somewhere in the
       | realm of HHKB/Tsangan/60%. 65% can be OK too assuming it's using
       | the HHKB Backspace placement (where the pipe key is on typical
       | ANSI boards) and Control is in the Caps Lock position.
       | 
       | The F-keys just don't get enough usage to justify dedicated keys,
       | and while dedicated arrows aren't bad the reduced hand movement
       | of layered arrows with the HHKB layout is nice. Numpads are
       | useful occasionally but not often enough that I want one
       | permanently integrated into my keyboard eating up desk space and
       | being unmovable, so I have a standalone numpad that sits to the
       | _left_ of my keyboard when it's needed so I can mouse around and
       | use the numpad at the same time.
       | 
       | These layouts are also similar enough to typical laptop keyboard
       | layouts that I can still use those without much trouble, so I
       | don't need to tote around a keyboard.
        
       | donio wrote:
       | Overloading Space, Tab and Enter to be used as a modifier when
       | held means that you can't get auto-repeat on these keys and they
       | are activated on-release instead of on-press, correct?
        
         | rgoulter wrote:
         | I get auto-repeat on space by doing tap-then-hold of the key.
         | Apparently not for tab/return. - I presume the behaviour is
         | configurable if that's something that suits you.
        
         | chaorace wrote:
         | QMK firmware has a handy feature for this called Tapping Force
         | Hold[1]. If you hold the key normally, it modifies the layout,
         | but if you tap it once (or more) and then hold, you'll get the
         | normal repeating behavior.
         | 
         |  _Example A_ :
         | 
         | Hold Backspace => Activates layer overlay
         | 
         |  _Example B_ :
         | 
         | Tap Backspace => Input backspace
         | 
         | Hold Backspace => Input held backspace => OS handles repeating
         | as configured
         | 
         | [1]: https://docs.qmk.fm/#/tap_hold?id=tapping-force-hold
        
         | memco wrote:
         | I believe so. You also lose repeat on the home row keys because
         | they become modifiers when held. It's a trade off, but one that
         | many people make since repeated key presses is not as useful as
         | the mod keys. Same is true for people who remap caps lock: they
         | give up a lesser used feature for something more useful for
         | their specific preference. Of course once you get into keyboard
         | customization you can start doing things like map caps lock to
         | escape when pressed alone, control when pressed in combination
         | with another key and maybe make shift + caps lock activate caps
         | lock. Depends on what you need and what you're trying to
         | accomplish.
        
       | fowlie wrote:
       | Miryoku user here. Nice post!
       | 
       | Symbols in a mirrored numpad shape to fix $ and ^ seems
       | brilliant, I might have to try that! And the caps word feature,
       | holy crap thats awesome.
       | 
       | Where are your \, ` and F keys, you don't use them? And why stock
       | colemak not mod-dk?
        
       | immigrantheart wrote:
       | Do you retain standard qwerty staggered layout muscle memory?
       | 
       | I heard using colemak and stagger column makes your muscle memory
       | confused because it is similar with staggered row qwerty.
        
         | jweather wrote:
         | I've typed Dvorak for years on staggered rows, and retained my
         | ability to switch back to Qwerty at ~70% of the speed. I just
         | switched to staggered column 58-key Dvorak though, and I have
         | noticed it takes me a minute to go back to staggered row on my
         | laptop keyboard in either layout. I think it has more to do
         | with the key positions than the layout.
        
         | thomastjeffery wrote:
         | I learned the Workman layout before getting an ortholinear
         | keyboard.
         | 
         | It was _slightly_ more difficult for me to switch back to
         | qwerty when I was still using a traditional staggered keyboard
         | to type workman, especially when I was still getting
         | comfortable with workman.
         | 
         | I wasn't really _worse_ at qwerty than before: I just felt
         | extra uncomfortable with the context switching.
         | 
         | Now that I'm exclusively using an ortholinear keyboard to type
         | workman, I'm back to my original comfort level typing qwerty on
         | traditional staggered keyboards. I don't enjoy it, but I don't
         | really think about it either. Context switching went from a
         | mild nuisance to completely effortless.
        
         | rgoulter wrote:
         | > Do you retain standard qwerty staggered layout muscle memory?
         | 
         | Yes, though I use a laptop's keyboard from time to time, which
         | will help.
         | 
         | I use row-stagger QWERTY, and use Dvorak on small, weird
         | keyboards like this.
         | 
         | I think learning a second layout on the same keyboard would be
         | confusing (row-staggered or otherwise).
        
         | flyingfences wrote:
         | I can't speak to the particular 34-key board in the OP, but
         | I've been using a Colemak 60% (HHKB) at home and a full-size
         | QWERTY at work for a few years (after using Colemak almost
         | exclusively for a few years before that) and I can jump back
         | and forth with no trouble at all. It was a little awkward at
         | first, but that was when I was just learning Colemak and had
         | never properly learned to ten-finger-touch-type QWERTY.
        
       ___________________________________________________________________
       (page generated 2022-08-30 23:02 UTC)