Live data from Hacker News

Why I teach vim

blog.ceos.io

151–160 of 185 posts

Re: Why I teach vim

#151

Earlier quoted context omitted.

One of the statements I see a lot is that mouseless, keyboard only HCI is faster. But as far as I know, to the extent that any real studies have been done at all, this assertion is false. I don't have the references at hand but I think people like Alan Kay and designers at Apple would think it crazy to even suggest that a keyboard only HCI is more efficient.

Could You please add a single example for faster solutions to modify several (text/source) files' contents at once with mouse and/or touchpad mainly (or any other already existing HCI interface)?

Who said anything about a mouse and or touchpad mainly? As far as I know, the studies were for keyboard and mouse in combination and actually predated touchpads.

Re: Why I teach vim

#152
post #74

Earlier quoted context omitted.

Why the dichotomy? IDEA Vim is an excellent IntelliJ plugin. For XCode there's XVim2 and Visual Studio has VisualVim. In fact the pervasiveness of good Vim plugins for ide's is one of the factors in Vim's lead over Emacs.

There’s a decent VS Code plug-in as well

Or even better onivim.io

Re: Why I teach vim

#153

I wish there was a dedicated, light text editor that could be comfortably used as a typical vim config but was fully compatible with a windows/mac paradigm for discovering shortcuts or standards (e.g. with the mouse or using standard keybindings). Gvim isn't quite there but close. This fictional editor should still be usable by anyone in a terminal but should be used like vscode as a standalone tool and yet very, ver…

onivim.io

Re: Why I teach vim

#154
post #56
post #14

Earlier quoted context omitted.

They're not really the same thing, compared to vi[m], emacs is statistically dead. And there are already lots of people who're well into their careers in academia and industry who aren't users of either. My own contrarian and probably equally wrong take is that it's mostly about accepting the (evidence-free) premise that modal editing is actually a good thing. It's hard, you suffer but lots of smart people tell you i…

I don't think your take is wrong. I have yet to see any actual argument from the vim/emacs crowd. I'm genuinely curious about what makes them defend their editor choice that heavily but whenever I ask them for their reasons all I get is a "modal editing is great because modal editing is great". I can somewhat understand "don't have to touch the mouse" as that's a personal preference for them (even though IDEs have ke…

I am an avid (Neo)vim user. I love it and have been using it for the last 4-ish years. I know it's not a lot, but I _am_ in my early 20's. :D

I started coding only during my undergrad (computer engineer), so first editor/IDE was Eclipse, and then moved to Atom -> Sublime -> CLion. By the time I reached my 3rd year, I was writing C/C++, and took this course on Operating Systems. The course taught on the OS/161 teaching OS [1], which (at the time) used BSD Make and other magic, and I had no idea how to configure my CLion IDE to handle it. The course professor was a Vim evangelist, and actually dedicated a weekend to teach Vim for anyone who wanted to learn. Since, then I have been hooked. (Point being: I haven't existed for 40 years, let alone used Vim for that long, nor have I just been told. I think there is some comment in this post that compares learning Emacs/Vim to learning foreign languages, which I definitely relate to.)

Why I like Vim:

1. I can separate my text typing with text manipulation (if that makes any sense). 2. Cliche, but I love that I don't have to use my mouse. I don't necessarily care about the speed of it (I have RSI from using my keyboard too much, so I am actively slow) but having to switch to a mouse and then search for the button I want to click, etc. is a significant mental strain/distraction for me. 3. Command mode is not the same as keybindings in IDEs: I have used several IDEs (outside the ones I mentioned above) and I always found keybindings to not be intuitive and also involves having to press a bunch of unrelated keys. I think the reason why Sublime/Atom/VSCode have a Command Pallette is exactly for this reason, and IMHO, Vim does it better. 4. And, finally, the most important reason: I don't have to leave the terminal. I have a setup that uses Neovim and Tmux, through various high-quality plugins written by some really awesome people. It is seamless. I have latex compiling in the background, I can edit command line arguments to Clang without having to hop through multiple dialog boxes, and so on.

[1]: http://os161.eecs.harvard.edu/

Edit: Forgot to put link to OS/161

Edit: Found out that the original website for the course I took is still up at https://ops-class.org/courses/buffalo/CSE421_Spring2017/

Re: Why I teach vim

#155
post #14

Earlier quoted context omitted.

They're not really the same thing, compared to vi[m], emacs is statistically dead. And there are already lots of people who're well into their careers in academia and industry who aren't users of either. My own contrarian and probably equally wrong take is that it's mostly about accepting the (evidence-free) premise that modal editing is actually a good thing. It's hard, you suffer but lots of smart people tell you i…

The "suffering" has honestly been overblown by jokes about not being able to quit on one side and the mythologizing of the leet ninja 10x programmer who is only bound by his typing speed and can't waste time reaching for the mouse, on the other side. It continues to surprise me why people have such strong opinions about someone else's editor choice. My current theory is vim users are like vegans/gluten free/paleo/etc…

> The "suffering" has honestly been overblown by jokes about not being able to quit on one side and the mythologizing of the leet ninja 10x programmer who is only bound by his typing speed and can't waste time reaching for the mouse, on the other side.

You're neglecting the folks who use keyboard editors (and fancy keyboards) to reduce the incidence of RSI.

If I can accomplish the same tasks in four keystrokes (~1s) as it would take me in a dozen clicks and 15 seconds of mousing, then poorly designed programs forcing me to use the mouse to interact are causing an order of magnitude more strain than those designed for keyboard interaction.

(This is less an issue in text-editors, and more an issue in everything else user-facing.)

Re: Why I teach vim

#156

What most people forget when they argue against learning vim is that vim is more that just a text editor, it's a whole new philosophy. Once you learn it, you can find it almost everywhere. Learning vim key-bindings was the first thing I did after learning to touch-type, and now I use the same key-bindings on VSCode, Intellij, a remote server I am SSHed into and with the help of Vimimum, even chrome! And if ubiquity i…

chrome? how?

Also "Vim vixen" for Firefox.

Re: Why I teach vim

#157

Earlier quoted context omitted.

The "suffering" has honestly been overblown by jokes about not being able to quit on one side and the mythologizing of the leet ninja 10x programmer who is only bound by his typing speed and can't waste time reaching for the mouse, on the other side. It continues to surprise me why people have such strong opinions about someone else's editor choice. My current theory is vim users are like vegans/gluten free/paleo/etc…

> The "suffering" has honestly been overblown by jokes about not being able to quit on one side and the mythologizing of the leet ninja 10x programmer who is only bound by his typing speed and can't waste time reaching for the mouse, on the other side. You're neglecting the folks who use keyboard editors (and fancy keyboards) to reduce the incidence of RSI. If I can accomplish the same tasks in four keystrokes (~1s)…

I'm responding to a user who described having to learn a text editor as suffering. I'm not sure how your response relates to mine.

I happen to be a person who uses a fancy keyboard (Kinesis Advantage2) and text editor (vim) to reduce RSI.

Re: Why I teach vim

#158
I switched to Vim in 1994. At that time, I had been using Emacs for a bunch of years. One day I decided to cross over to the other side.

I hunted down all the readily available open-source Vi implementations, downloaded them and compiled them all. I tried Elvis, Nvi, Xvi, Vim and a couple of others I don't remember.

Vim was the best, by a long stretch, so I continued with that. I found the built-in tutorial very handy; I went through that, and within a week I was proficient.

A couple years later, I started seeing Vim in GNU/Linux distros as the default Vi implementation.

Re: Why I teach vim

#159
post #96

Earlier quoted context omitted.

Here's my story: I used Notepad++ for a while, Sublime Text 2 for a couple of years, Atom for a bit, then Webstorm and VS Code before settling into primarily using VIM or VIM mode for every editor I work with. The real instigating factor was severe RSI. Three and a half years ago, it hurt even to brush my teeth. The damage was primarily from using trackpads, mice and worst of all mobile phones, but it was much to lat…

Damn sorry, I hope it gets better for you. In that case I can definitely see how not having to leave the keyboard is of upmost importance.

Thanks. It is slowly getting better. My wrists and right index finger still hurt after using the computer but much less than before and I'm using voice input a lot less these days.

Sites that require a lot of clicking are still painful, though.

Re: Why I teach vim

#160
post #67

Earlier quoted context omitted.

> My current theory is vim users are like vegans/gluten free/paleo/etc, in that its a personal choice that some are public about. This is not a good theory. Surely, this effect appears wherever you've got conflicting choices about what is best, but there are always reasonable arguments on why you should do X over Y. And you know, there are always people who respect other's choices. I am a vim user and I 100% understa…

I am curious if any vim user has ever been able to see the benefits of other environments. I know I have never been able to see the benefits of vim. Part of me wants to give a try for 3-6 months just to prove to myself that it's all bullshit and that vim is just another editor. In any case. For a long time I was a fan of my editor of choice, slickedit. It definitely has a few features I use for which I don't know the…

I'll bite; I'm real good w/ Vim.

My thesis, which is a borderline polemic, is that if Vim doesn't suit your needs you are doing it wrong. If your program/language/environment needs a smart editor, you've built or chosen a program/language/environment that is too complex, and an IDE won't ever solve that fundamental problem. I get we don't always get to choose these things (wh o hasn't had to learn React, Typescript, or the general JavaScript ecosystem) but my cultural stance is the people who made those things should have used Vim, realized it was hard to manage w/ Vim, and questioned their priors.

That might sound nuts or the ravings of someone who's completely drank the kool-aid; who got good at one difficult thing and now like, jams it in everywhere to ladder pull or whatever. And so I should say that I'm super amazed by the capabilities of IDEs like PyCharm or even Eclipse (or, honestly, even Code::Blocks). The sheer engineering effort alone is awesome, but some of the stuff you can do with them is incredible. I can't imagine developing the source code of Eclipse with Vim. But does using an IDE to develop Eclipse make Eclipse great, or does it simply make Eclipse _possible_?

I contend Eclipse shouldn't exist, at least not in its current form. It's too complex for humans, and its design necessitated so many engineering hours it was a net loss for humanity. If the complexity of your program/language/environment rises to the level you need an IDE to manage it, the only thing to do is start over.

Post reply on HN