Some of these misconceptions are about having a poor UI and poor discoverability. I'm an avid vim user but I had to take a bet that the initial work to familiarize myself will pay off in the end. I'm happy I took the leap but it's daunting for anyone getting started.
Just learned about Larry Tesler [1] and his fight for modeless software yesterday.
Another misconception I would add is people thinking it improves productivity over what some people consider "newbie friendly" tools (GUI IDEs and the like). If you _LIKE_ using it, please go ahead. But AFAIK, there is no data showing any of these editors save you time over what you invested learning them. I was an expert vim user and I don't think I am ever going to recover the hours I spent learning it. For C++ these days, I find I'm actually more productive in Visual Studio than I could ever be in vim.
Does anyone else use vanilla vim happily without plugins?
You can learn the basics with this little browser video game:
I used to hate vim with a passion because of how unintuitive everything seemed, but this made me want to learn more once I get used to hjkl and some of the shortcuts.
I've been using vim for... 5 years? I initially forced myself to learn it (after being aware of vim and its learning curve) so I could work with a text editor that would be available on pretty much any linux server I might ssh into.
After about a year of mostly forcing myself to learn it, I started using it as my main text editor. At this point, I have a standard vimrc and plugins that I install on every new machine, including windows. Vim is my default text editor of choice.
Some of the benefits:
- Introduced me to the concept of not using your mouse and how much this increases the speed you can work. Introduced me to hjkl as movement keys (which at first glance was not obvious to me).
- Lots of commands to move around quickly. Lots of customization options for the constant tweakers in us. Core focus on changing text in as few keystrokes as possible.
- Lots of plugins to do all that cool "Oh, it would be cool if it did this." The "missing" features, like code completion or file system navigation, are available via plugins.
- The interface is very fast and pleasurable to use once you have familiarity with its incantations (which actually aren't so bad once you learn the basics).
I have no strong opinion of emacs, but it strikes me as similar in experience (if not implementation) to vim. I used sublime text for a while and liked it, although I kind of just ended up sticking with vim. It is funny how much programmers get into text editors, although they're important tools for the profession, so tradesmen obsessing over the tools they use probably isn't so new.