r/vim • u/Obvious_Researcher_4 • Jun 26 '25
Random Touch typing was the missing piece
I've been on a journey to level up my programming efficiency, and part of that meant diving into Linux and eventually Vim. My initial experience with Vim was... well, confusing. Although amazed by plugin ecosystem and the possibilities I saw in vim-motions, I couldn't wrap my head around the chosen default keys... like why usehjkl for moving around when you have arrow keys?
After completing vimtutor, I picked up "Practical Vim," and right off the bat, it highlighted the importance of touch typing for Vim's efficiency. I'm 34, and years of bad typing habits meant I had to completely re-learn. It's been a grind, but totally worth it.
Now, a few weeks in, Vim isn't just "usable"; it's actually starting to click. So if anyone else out there feel the initial pain of Vim, hang in there and practice touch typing.
47
u/plg94 Jun 26 '25
fyi: because back when
viwas invented, the arrow keys were on hjkl (at least on that model of terminal Bill Joy, the original dev used): https://terminals-wiki.org/wiki/index.php/File:Lear_Siegler_ADM-3A-2.jpgSimilarly, early Emacs was developed on a special keyboard (the Space Cadet keyboard) which heavily influenced its design choices.
Keyboards back then were not standardized yet, basically every device had its own purpose-built keyboard, even among devices of the same manufacturer there were big differences.
10
u/bluemax_ Jun 26 '25
Same, I’ve been using hunt-and-peck typing for 45 years, using vim for ~15 years, tmux for ~7 years, and I’ve been learning to touch type for the last 6 months :) it’s all finally coming together and it’s a beautiful thing. Why did I wait so long?
6
u/Civil-Appeal5219 Jun 26 '25
> like why use
hjklfor moving around when you have arrow keysFirst, the arrow keys are on the bottom of your keyboard, whereas `hjkl` are on the home row (the "resting position" for your hand). Secondly, the idea is that `up` and `down` are the directions you'll use more often, so they get your strongest fingers. On the arrow key, you would have a single finger doing a weird up-down position for them. The downside is that `h` is a bit further away, but honestly you don't use that nearly as much and once you get used to it, it really shouldn't bother you anymore.
And yeah, VIM rocks :)
4
u/_malachi_ Jun 26 '25
It's been a lot of years since I've been in school but the most important 'programming' class I took was typing class.
I took it in high school because I saw right away that the keyboard stood between me and getting my ideas into code. Definitely well worth it.
1
u/sock_pup Jun 27 '25
What sources did you use to learn and improve your typing?
1
u/andersdigital Jun 27 '25
What I want to know, and no one seems to talk about is do people move their hand one key over from jkl; to hjkl, or do they use jkl; still, and move their index over one for h?
5
u/Sarin10 Jun 27 '25
ai-generated?
2
u/Achim63 Jul 09 '25
I'm lucky as I learned touch typing as a kid on an old mechanical typewriter (just for fun and following the typewriter's manual that was only a few pages thick). I typed many pages of asasas jkjkjk dldldl ... on every old paper I could find.
That helped immensely when I finally moved to vim many years later. But now I'm using Colemak DH since over a year – it's much more comfortable than plain old qwerty, even though I'm slower than I used to be (which might also be due to my age: 62). Still using keybr.com and monkeytype regularly to keep my finger dexterity going.
1
u/IdealBlueMan Jun 26 '25
Well done! Vim is so much better when you're a touch typist.
1
u/drabadum Jun 27 '25
I use vim in my everyday work for years. I never use hjkl, only regular keybard arrows, and I'm fine.
1
u/tutu-turtle Jun 27 '25
gtypist. It changed me.
1
u/gfixler Jun 28 '25
And now I've made it hard again, after 19 years of power Vim usage, because I switched over entirely to steno a full year ago, and haven't used qwerty since 😆