Vim: you are holding it wrong

I have a friend who happens to be a huge fan of Apple products. He also hates Vim. He has quite a few stories about how awful Vim is, and how many problems it causes.

A few weeks ago he texted me about a weird problem he had with editing a file on a remote server using Vim. The server didn’t have nano installed, so he had to use the tool he hated so much. To make a long story short, he saw weird characters appear inside the text while he was trying to move around using arrow keys. This “bug” really annoyed him, and eventually we had a discussion about Vim’s issues once again. At some point I mentioned that he was not supposed to use arrow keys at all: there were other ways of moving around in Vim.

It was the moment he remembered how Steve Jobs responded to connectivity issues in iPhone 4. My point about using Vim the wrong way was completely ruined by this reference. He surely was right, but so was I.

I think a big part of negativity towards Vim comes from the lack of familiarity with its way of thinking. You can’t blame the users though: Vim is quite counter-intuitive, and you can’t think of any reason for the arrow keys to not work as expected. It’s very different from all other editors that exist out there. Still, it is shipped as a default editor in some systems. Git generally uses Vim by default. It’s hard to love the editor that you accidentally opened and couldn’t get out in a regular way.

Instead of blaming the users for “holding it wrong”, maybe we should stop forcing them to use it. It should be a choice.