Live data from Hacker News

Show HN: I built an online interactive course that helps you learn Vim faster

vim.so

251–260 of 283 posts

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#251

Can someone please explain to me why I should learn vim? I've made several attempts in my lifetime because I thought there would be some magical "ah-ha" moment, but it never came. Separate modes for command & insert just feels inherently clumsy and slow to me. Is there some other killer feature that can't or hasn't been reproduced by modern editors?

The thesis of vim is that editing is more fundamental to the act of writing than inputting text. The default mode, normal mode, is entirely shortcuts to do editing tasks better and easier. Moving around the document, and moving or deleting text are the primary concern.

What's more, as several other commenters have alluded to, vim thinks of editing as a language. There are verbs like cut or copy or paste, and there are nouns like [this] sentence or [this] word or one word backwards or from here until the letter j. Once you start building sentences of editing commands (e.g. copy from here to the 3rd next instance of the a line starting with 'Hello' namely ) the flexibility it offers is unparalleled. This is all done from your default context without fingers leaving the keyboard. Once you achieve fluency (admittedly not a trivial task) there is no context switching for any editing task, it becomes reflexive and subconscious.

Other stuff, like macros and registers, or easy access to regexes and ex commands help extend this, but the core reason why vim is still used today is this strength.

I'd highly recommend another classic response, given here, elaborating on the nature of vim as a language for editing: https://stackoverflow.com/questions/1218390/what-is-your-mos...

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#252

Earlier quoted context omitted.

I started with vimtutor, then installed IdeaVim in all my Jetbrains IDEs, it took me about a week to reach the same level of efficiency I had before. I don't understand how some people can say the learning curve is too steep. Sure it's a bit annoying at first, but it quickly becomes natural, and you don't have to use all features at first. It has allowed me to improve my touch typing a lot. Learning a programming lan…

> I don't understand how some people can say the learning curve is too steep I am doing fine with vim for basic editing tasks and use it a lot (mostly when I'm already in the command line). But there's just only so many shortcuts I'm capable of memorizing. This is not a problem for me exclusive to vim, of course. In IntelliJ I also sometimes find an amazing new function that I then don't keep using since I've already…

That's one of the strengths of Vim, though. There's a lot of structure to it, so you don't need to learn nearly as many shortcuts as you otherwise would.

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#253

Earlier quoted context omitted.

Not when using Dvorak, here's how it maps from Qwerty: H->J J->C K->V L->P Still works pretty well, i've gotten used to it.

Fortunately, j & k are next to each other, and I never noticed any disconnect in vim w/Dvorak. I never use h & l -- mostly space, w/W, or b/B. But I also learned Dvorak before vim, so I never got used to hjkl.

I played a ton of Nethack in college and adopted Dvorak at the same time. hjkl work remarkably well with Dvorak, and I found it so much more natural than the same letters with Qwerty.

j and k being next to each other makes their relative motion sensible still. And the new positions of h and l keep them in the correct relative position to indicate left and right, but easier to use. The right index finger is already on h and the pinky needs to move up one key for l. And up/down is now the left hand, with right/left being on the right hand.

I've found emacs to be similarly more sensible and comfortable, using default key bindings, with Dvorak than Qwerty.

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#254

Hey y'all! I built this interactive course after a year of learning vim and finding it to be extremely useful in my day to day development experience. The course is designed to give you lots of interactive practice so you can develop the muscle memory needed to effectively use vim. Would love to hear what you guys think about it :)

I purchased the course but was disappointed that it doesn't go much beyond the basics. For example, there is no tutorial on the dot (.) command, which is one of the main productivity hacks for vim users. There's also no mention of the slash '/' command, moving to a particular line number with 'Shift-G', 'dw' for deleting words, or any number of things that are essential to know if you want to use vim effectively.

Thank you for informing us. If the course doesn't even cover the dot and dw movements then I'll avoid it.

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#255
post #161

Earlier quoted context omitted.

Looks like "vimtutor" is primarily text explaining the hotkeys. For me, the bottleneck to picking up vim has not been merely knowing the hotkeys, but more internalizing the commands and building muscle memory. The interactive game format of this website could possibly solve that, so it appeals to me.

vimtutor is designed for you to use it regularly to train muscle memory

Vimtutor is free so you are the product.

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#256

Earlier quoted context omitted.

I love vim-adventures. It was the only way I was able to stay motivated to learn vim well enough for it to "stick". I just hate that you can only buy 6 month access to it. I'd happily pay 2-3x the price for lifetime access, but the fact that I can only buy 6 more months makes me pretty sure that they won't be getting any more money from me. I think I would still hop on for a few minutes every few months to practice u…

Have you tried contacting the developer?

I have contacted the developer and offered $10,000 for a perpetual license, but it was not for sale.

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#257
post #188
post #184

I know that vim is particularly enjoyed. The site looks nice and I wish you the best luck with this. But for beginners, I now recommend micro as a console text editor ( https://github.com/zyedidia/micro ). It's a one line install with all the shortcuts and display that have become a standard across editors.

Does anyone know who had the bright idea to replace vi with nano as the standard text editor and why this became some sort of standard? I really don't get it. Vi is unintuitive and unfamiliar to unix newebies, but at some point every even half-competent person on unix could use it enough to at least do simple config file changes. Plus, if you took time to learn it properly, you actually knew a quite capable editor. A…

I've just realized that nano was initially released in 1999! Apparently, they just copied pico key bindings, that was used as an extremely light editor.

For the rest, there is to me a cultural divide between a sysadmin/dev culture with abstract interfaces, specific key bindings and options, configuration files, ... and the thousands of people with various backgrounds that are learning tech today, including the console, just to do something using computers.

Micro is probably the best of both worlds. Try editing an admin file as a user and save.

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#258

Can someone please explain to me why I should learn vim? I've made several attempts in my lifetime because I thought there would be some magical "ah-ha" moment, but it never came. Separate modes for command & insert just feels inherently clumsy and slow to me. Is there some other killer feature that can't or hasn't been reproduced by modern editors?

Because it is full-featured editor running fully in text mode (so you can run it on the remote server or over a serial line) and uses short commands for most text edit needs. In comparison nano provides only very basic feaures (like Notepad) and emacs (according to Stallman) is like an operating system with more complicated keyboard shortcuts. Of course you can run VisualStudio Code over VPN but that would waste too much network traffic and the input would lag more.

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#259
post #210

Earlier quoted context omitted.

Okay... but the difference between a piece of text just telling me to use the commands so I remember them versus an interactive trainer that provides a structured setting for me to use them is pretty significant, no?

> a structured setting for me to use them is provided by vimtutor. I wish people would take a couple hundred milliseconds to research things like this before posting about them — most [GNU’s Not] Unix commands take less time to run than a webpage takes to load, and installing their packages takes no more typing than a web search.

> I wish people would take a couple hundred milliseconds to research things like this before posting about them

Have tried vimtutor twice. It is seriously confusing if you don't use US keyboard layout and there are probably a couple of other sources of confusion as well.

I did well at school, I do well at work but not so well at vimtutor.

So I think I'm kind of qualified to say that there's room for other resources besides vimtutor.

Also the way you write it is kind of rude.

Re: Show HN: I built an online interactive course that helps you learn Vim faster

#260
post #105

Earlier quoted context omitted.

How fitting that the tutorial for vim needs its own pre-tutorial for exiting.

Having seen machines that have hundreds of Vim sessions opened because “system integrators” didn’t know how to exit Vim, it should be the very first thing taught

Luckily vim finally got a bit better with that: on a Ctrl-C newer versions now show instructions for quitting.

I remember my first vi sessions (typically via something like `crontab -e` where it wasn't clear to me it picked my "default" editor ... thus didn't know where to read up on it ...) some long time ago, where i knew `kill` before the right command ...

Post reply on HN