other

the typing experience

you can probably guess that i spend a not insignificant time sitting at a desk using a keyboard just about every day, i'm clearly doing it right now to type up this post, i'm in a Computer Science degree and it's pretty much all we do! so over the years i've discovered and learned ways to make the typing experience easier and less painful for myself (because it has been painful before!) and it's resulted in a setup that people tell me is pretty unusual. most of us these days probably type more than write, so i think it's worth talking about!

important things out of the way first, i have amniotic band syndrome! it mostly affects my hands and fingers, my left hand moreso than my right. this makes some things designed for most people with, er, "normal" hands a little difficult for me to use, especially when the symmetry of both hands are taken into account in their design and use, which is probably most things that utilise both hands, keyboards included!

part 1: QWERTY is mean to me

the traditional QWERTY layout

i honestly didn't learn to type "properly" (i.e touch type) until just a few years ago. i don't exactly remember how i used to do it but i remember that for my left hand it relied heavily on just pinky and index finger and my thumb also for hitting regular keys (which is usually designated to just the spacebar whet touch typing). my ring finger is significantly shorter than what's typical and the way my middle finger is made using it to type was uncomfortable at first, so i didn't!

eventually i started to feel the years of typing like a maniac come back to haunt me through my wrists and it was especially bad for that left hand i keep bringing up. which is actually one of the issues with QWERTY: it doesn't distribute use between both hands, and even fingers, evenly. in fact, it has a bias towards the left hand where thousands of words are able to be typed with just the left side of the keyboard. maybe that's an advantage to all the lefties out there? but for me, it was pretty bad. since i was using just three of the five fingers on my left hand it put additional strain on those fingers, plus i was using my thumb to reach regular keys that would normally be out of reach with it if i was following home row, it put strain there too, especially when i was curling it under my hand to reach keys like Z, X, and C.

a few years ago it started to get particularly worse, especially since it was during the height of the COVID-19 pandemic. schooling was moved online and so i was using a keyboard for even longer periods of time than i was before. i get paranoid often about losing physical abilities either in my hands, sight, ears, etc., and how that would affect me being able to work and create, so i decided it was time to finally throw out those bad habits and learn to touch type properly! i would have time anyway since this is when i took a semester off from university. i used a handful of resources to learn but i think one of the most helpful was keybr, which starts you out with just a few letters, adding more the more you improve, adapting by adding more of the things you particularly struggle with, eventually getting to real words.

i actually picked up touch typing pretty quickly and was a lot faster and a bit more comfortable than i was before. however, those issues with the left hand never really left, and i was still getting pains in my wrists. another problem with QWERTY is that it spreads out the most used letters across the keyboard, and largely not on the home row where your fingers should start in. the most used letter, E, is a row home row position, some of the most common consonants, T, N, S, etc. are scattered all across the keyboard, most of them also not on the home row but up and down and all over the place (and don't get me started on the semicolon of all things being on home row). combine this with the fact that so many words use the left hand primarily in QWERTY and my hands were still not entirely satisfied.

part 2.1: Dvorak, QWERTY's snobby little brother

the Dvorak layout

enter Dvorak! Dvorak is keyboard layout actually created way back in 1934 as a more ergonomic alternative to QWERTY, aiming to address some of the issues with QWERTY including the ones that i'd mentioned above! nowadays it actually comes included with every major OS! i can imagine that, to someone seeing this layout for the first time, it probably looks like some gibberish nightmare. and for the gamers out there, seeing ,AOE instead of WASD might've given you an aneurysm. but trust me, the letter placement is actually very purposeful!

notice that all of the vowels have now been moved to the left side of the keyboard. the general rule (in English) is that words have to have a vowel, so what this does is it ensures that pretty much every word (in English) requires alternating between both of your hands, splitting the workload and lessening the strain and fatigue put on both. notice too that all the vowels are right at home row, comfortably right at reach whenever needed. actually, most of the most common letters and letter combinations (bigrams) are placed at home row meaning that your fingers pretty much stay at home row position the majority of the time, significantly reducing the amount of jumping around your hands have to do (plus the semicolon has been moved all the way to the bottom left corner of the keyboard where it belongs!). this video is a really good visual aid in showing the differences in finger movement between QWERTY and Dvorak (and also Colemak, another alternative to QWERTY).

(a bit of an aside but i've seen people online tend to write off Dvorak. a common argument i see is that there's little evidence that shows that Dvorak significantly increases typing speed, and that's true! here's the thing though: speed is not the only aspect of typing. i'm not sure why words per minute (WPM) seems to be the most important factor to some and i don't think that learning Dvorak will inherently make you a faster typist. Dvorak, to me, is about comfort and ease, it's just that when the typing experience gets easier you may also get faster. this has been my experience, with QWERTY i used to peak uncomfortably at ~75 WPM but with Dvorak i can easily reach around ~110 WPM. i'm sure that there are other layouts that i haven't heard of or tried that are better or more efficient but Dvorak is just what i've happened to stick with. and for what it's worth, pretty much every alternate layout i've seen is leagues above QWERTY!)

i was hesitant to learn Dvorak at first, understandably. it makes no attempt at easing you into it from QWERTY, unlike some other alternate keyboard layouts like Colemak which try to change the least amount of character positions, but Dvorak comes pre-installed on every OS by default while other alternatives don't and i didn't feel like having to go through the trouble of downloading a new layout every time i own a computer. so i took it as a fun challenge, and if it didn't pan out, well, i've already learned QWERTY!

luckily many touch type learning sites already have a mode for Dvorak, but if you just want to test out the waters then learn.dvorak.nl is a great site to use. it can handle converting the keyboard mapping for you so you don't need to change the layout in your system just yet. i used it in my first couple of weeks of trying Dvorak and after that i actually switched back to practicing on keybr again since it too has settings for Dvorak.

the middle stages of learning a new layout can be strange feeling. at first i was switching back and forth between QWERTY and Dvorak, only really using Dvorak when practicing it, but the two started to blend together in my head and i'd be trying to type in one while still in the other. it can be kind of scary to commit to a new layout, i've heard accounts of people significantly losing proficiency in QWERTY after learning Dvorak like how you might slowly forget a language after not using it for a while. i took the risk though and i haven't looked back since, honestly! and while, yes, my ability in QWERTY has definitely diminished, typing has been so much more comfortable and even fun ever since!

part 2.2: Dvorak's issues

now, as much as i've been praising Dvorak there are some caveats that may be deal breakers to some. one big thing is keyboard shortcuts. Dvorak was originally developed for typewriters, just as QWERTY was, so shortcuts involving modifiers keys like CTRL obviously weren't put into consideration. you'll find that a lot of shortcuts you used to be able to do one-handed will now have to be done with both hands. some common shortcuts were also only chosen because of their placement in QWERTY! like CTRL+C, which is intuitive by itself, C for "copy", but CTRL+V has no real semantic meaning and was only chosen to mean "paste" because V is right next to C on QWERTY. with Dvorak those two keys aren't even on the same row anymore, and possibly worse, V is actually right next to W now, so i find myself sometimes closing tabs and windows by accident with CTRL+W when i meant to paste.

there's also the issues with gaming. i jokingly mentioned WASD turning into ,AOE earlier but that can be a legitimate problem! thankfully, a lot of mainstream games will actually detect when you're using Dvorak and do the remapping automatically (it's a pleasant surprise, too, when they even change the icons of keys to match the Dvorak placements!), but not every game does this, and if you like playing small or obscure indie games like i do, then you'll find that not a lot of those take that into account. the way i get around this is if a game doesn't support Dvorak i just have to switch to QWERTY using a shortcut (on Windows it's Win+Space, on Mac it's Control+Space), which can be a bit annoying especially if you're playing an online game where you have to chat with others.

there are some other common ones that i've either had little to no issue with or have found easy ways around but might be big deals to you. if you happen to use other people's keyboards often it could be a nightmare to have to mentally switch back and forth a lot, which isn't a problem for me because i don't really interact with people IRL.~ some people find the positions of L and S to be straining on the pinky, i actually use my ring finger for L (P in QWERTY) which is technically "wrong" but from what i've seen and read it's an acceptable alternative! if you're a (Neo)Vim user like me you're going to have to get used to the new keybinding positions. i admit i was a bit stubborn at first and tried to get around it as i was very used to the HJKL positions for movement specifically, but eventually i just bit the bullet. the positions for movement in Dvorak are still relatively intuitive, splitting horizontal movement and vertical movement to the left and right hands respectively which some people might like even more. all the other Vim commands and shortcuts can be memorized with pretty straightforward mnemonics instead of their positions on the keyboard (w moves to the start of a word, p pastes, etc.)

part 3: faking an HHKB because i'm poor

while i was experimenting with keyboard layouts i'd also developed an interest in mechanical keyboards, as one does. i've been gravitating towards smaller keyboards as i find a lot of what's on a standard keyboard is just kind of bloat. right now i use a 60% keyboard that was gifted to me by my aunt (thank you!) and have been pretty happy with it. though, there was one keyboard that i kept hearing mentions of, especially among programmers: the Happy Hacking Keyboard (HHKB). and it wasn't the fancy Topre switches that caught my attention like for it may have for others, but its layout instead (the ANSI layout in particular).

the HHKB ANSI layout

the HHKB was originally developed in Japan in 1996 and takes aspects from the original Macintosh keyboard and the Sun-3 keyboard (Sun-3 being a series of UNIX-based computers). what immediately captured my interest was the removal of the CTRL keys in the lower corners of the keyboard and instead placing it where the Caps Lock key typically is. i quite like this placement, it's right at home row where it's much more in reach making shortcuts faster and easier. the omission of so many other secondary keys is remedied with a small function modifier to the right of the right Shift key. this video gives a pretty good overview of the keyboard and why i like it's layout so much.

my current 60% keyboard doesn't have arrow keys and instead uses a function modifier (to the right of the right Alt key) that turns WASD into arrow keys, which is smart in theory since that cluster of keys is pretty much unanimous with movement nowadays, but in practice feels really clunky, especially for when you're trying to do things quickly since now you're using both hands instead of just one. the HHKB instead opts to use an unconventional combination of it's uniquely placed function key and the [;,/ keys. with this setup you put your pinky on the function key and then use your index and middle fingers to access the arrows, all using one hand, and after getting used to it it's pretty natural feeling.

i say it's natural feeling, so does that mean i've used one? well, no! the HHKB can be, let's say, notoriously expensive for a keyboard, so i wasn't getting my hands on one any time soon. but i soon found a way to emulate the layout and it's little quirks on my current keyboard using AutoHotkey, which is a free software that lets you write scripts to create custom keyboard shortcuts and macros and even automate repetitive tasks. so, naturally, i took a day or two to learn how to write an AutoHotkey script. one interesting thing i had to work around was that pretty much no other keyboard has that function key next to the right shift like the HHKB does, but since i touch type correctly i only use the right shift when modifying keys on the left side. this is important since pretty much all of the HKKB's shortcut keys happen to occur on the left side of the keyboard (probably to make them accessible with one hand) so i can just map the function key to the right shift anyway and there won't be any conflicts or clashes when typing. after that i just set my computer to open that script on startup and now i have HHKB-like shortcuts! (i might put it up on Github, we'll see!)

summing up

so that's pretty much it! i use Dvorak as an alternate keyboard layout to make typing more comfortable and i emulate the ease of the HHKB's shortcuts using AutoHotkey. i wouldn't say that you necessarily have to learn an alternate keyboard layout, i actually might even say the opposite. QWERTY is the de facto standard, i don't think it'll be going away anytime soon, and it's definitely a commitment in more ways than one to learn Dvorak, or any other layout. though i think that at the very, very least, if you haven't already, you should learn to touch type if you regularly interact with computers. you'll speed up, stop looking down, but more importantly, it's just a more ergonomic way of working and you'll feel much more comfortable and risk hurting yourself less.

hopefully i made you think a little bit about how you interact with your tools! they should be adapting to you and not vice versa, so don't hesitate to change things up, personalize them if you feel like they're hindering you in some way! that's all for now, take care!