Yes, hjkl navigation is certainly one of the things that should learn about a vi clone. But are novices well served, in the 2020s, by that being the primary thing that they learn before anything else?
This is not a criticism of this WWW site specifically. The VIM doco has the same priorities, teaching hjkl navigation before arrow keys. (So do nvi2 and NeoVIM.) The problem is that the received wisdom, that arrow keys are some newfangled idea that might not have reached your terminal manufacturer yet, is massively out of date.
Even if one does not teach the arrow keys first, the BS SPC SO (Control+N) DLE (Control+P) set is surely worth teaching early on. One cannot make any reasonable argument that terminals might not have spacebars. (-:
Touch typing essentially. It's such a comfortable way to work. Remapping mode switching to something like jk instead of Esc is vital to stay comfortably in the home row.
I always liked this site to grok some of those vim fundamentals [1] and the touch typing part was going to touch typing exercise webpages and getting pure practice.
That does not really present any argument that we should be teaching your way of working to VIM novices, instead of teaching them the obvious arrow keys first and the hjkl navigation later.
I think the reason to use and teach those keys first, is that they can be used in all the motions aswell. The arrow keys can´t and thus do not really make much sense in a vi context.
Sorry to be blunt, but if you don’t want to spend effort on touch typing (and therefore avoid arrow keys), learning vim motions is rather pointless and you might as well not bother.
I'll be blunt to you back: that's not true. Vim motions are useful because you don't have to switch between the keyboard and the mouse, even if you (like me) never bothered with touch typing.
I just have a layer on my keyboard that puts arrow keys where hjkl are on qwerty when I hold the tab key. Since tab is right next to my pinky finger on my laptop, it easily became muscle memory, and allows to use home row navigation in all apps, not just the ones that support hjkl.
hjkl are more of a cult/status thing anyway because they are not _that_ touch-typing-friendly to begin with, and they suck just as much as the cursor keys for moving the cursor around.
Insisting so much on hjkl is silly. No one is using an ADM-3A in 2026, so the official documentation should let users use the more intuitive cursor keys and downgrade hjkl to what they have always been since vi: __ham-fisted alternatives to the cursor keys__.
hjkl AND the cursor keys equally suck for moving the cursor because they only move by one line or by one character.
jjjllllljjh is just as bad as <Down><Down><Down><Right><Right><Right><Right><Right><Down><Down><Left>. There are much better ways to move around and touch-typists and non-touch-typists would be better off learning them instead of obsessing over hjkl: :help motion.txt.
This is not a criticism of this WWW site specifically. The VIM doco has the same priorities, teaching hjkl navigation before arrow keys. (So do nvi2 and NeoVIM.) The problem is that the received wisdom, that arrow keys are some newfangled idea that might not have reached your terminal manufacturer yet, is massively out of date.
Even if one does not teach the arrow keys first, the BS SPC SO (Control+N) DLE (Control+P) set is surely worth teaching early on. One cannot make any reasonable argument that terminals might not have spacebars. (-: