Live data from Hacker News

Bill Joy's greatest gift to man – the vi editor (2003)

theregister.co.uk

91–100 of 186 posts

Re: Bill Joy's greatest gift to man – the vi editor (2003)

#91
Vi is the ultimate example of software that is "easy to use" as opposed to "easy to learn", it is great that we still have Vi and so many other unix tools that use the same philosophy.

One of the biggest things that has happened to computer software in modern times is the balance between "easy to use" and "easy to learn" has shifted dramatically towards "easy to learn".

There is some software that can achieve both at the same time but IMO much of the time the two ideas are counterbalanced against each other with each hurting the other.

Before the mouse almost all software was harder to learn but users would become extremely fast & efficient when they learned to use it. Vi is a classic example. So were lots of applications that had character cell user interfaces and function keys & shortcuts for everything.

A lot of mobile stuff is the ultimate opposite.. it takes 2nds to learn but you're never going to be able to use it any more efficiently or quickly than you did 5 minutes after you first tried it.

Re: Bill Joy's greatest gift to man – the vi editor (2003)

#92

I used Emacs for 5 years before learning vi. What a change! While Emacs tries to put the kitchen sink inside the editor, vi tries simply to be a keyboard interface to the rest of the system. I've never looked back since I learned this way of working.

I used vi and vim for about 25 years before switching to Emacs. I did this because: 1 - I got deeply interested in Lisp and Scheme, and Emacs was reputed to have the best editing environment for these languages 2 - Almost all of Emacs itself and Emacs' entire package ecosystem is written in eLisp, which is a tremendous improvement over vimscript, in which almost all vim packages are written. I'd just rather read and…

> I used vi and vim for about 25 years before switching to Emacs.

Then maybe you can help:) I've tried, multiple times, to switch to emacs. And every time, I get stuck, because vim keybindings are so wired in to my muscle memory now, and even the broader interactions are hard to adopt (i.e., I expect to get a command prompt by escaping to command mode and then typing ":", and then all commands are available). Is there any trick that you found helpful to overcome all the inertia?

Re: Bill Joy's greatest gift to man – the vi editor (2003)

#93
post #27

Earlier quoted context omitted.

What's the story with NeoVim exactly? I am trying it out on Linux because I got some recommendations that it's better than Vim, but I've run into some problems because for instance with setting up plugins and things, lots of times the documentation seems to be geared toward Vim, and sometimes I've gotten errors it's hard to figure out because of this. It kind of gives me the perception there just aren't that many peo…

Neovim definitely has significant market share, you can compare Github stars as one statistic to consider: https://github.com/vim/vim - 20k https://github.com/neovim/neovim - 36.5k This is in some part due to the fact that neovim has been on Github longer, but it's still a a major indicator. Neovim has many benefits over Vim, and has been applying pressure on Vim for years to improve its own development and codebase.…

For a nearly 30 year old software like vim, Github stars are not a relevant metric. Vim probably has users who have never even heard of Github.

Re: Bill Joy's greatest gift to man – the vi editor (2003)

#94
post #84

For those who do not understand why people are fanatical about vi, here are some reasons: Vi is keyboard only. This means that actions with the mouse are optimized through the keyboard. There are "hotkeys" for most tasks you use with a mouse. Vi has the idea of objects. Words, lines and paragraphs are objects you can operate on. Vi defines a "language" for operating on objects. For instance, 'd' is delete. You can de…

What I observe is that most vim fans who swear by it use it as a bare bones editor, syntax highlighting at most. No auto-completion, go to definition or any other IDE stuff. Yes, it is possible to make vim IDE-like but very few do so.

The existence of "modes" is also opposite to the approach which is know for decades to be less prone to accidental errors: having no modes and always being able to perform more undo steps.

There were even the games of considering what plain text typed in wrong mode would cause the most of the damage.

The main reason Vim and Emacs have their current followers is that the competing editors on Linux or Unix platforms are significantly worse (on average), not that these two are by any means any kind of the possible optimum. And boy, is the competition worse.

(Personally, I use console editors only if I have to, and then prefer to use vim, but otherwise I prefer my customized low-footprint programmable GUI.)

Re: Bill Joy's greatest gift to man – the vi editor (2003)

#95
post #47
post #25

Earlier quoted context omitted.

I've tried several times to get into vim. I feel like it's similar to dvorak though - unless you use it 24/7 you won't develop the muscle memory necessary to use it efficiently.

It honestly isn't nearly as difficult as learning Dvorak; you can be productive with Vim if you use it full-time for about a week. If you stay dedicated to learning and improving, you can get really good and become pretty productive. While I love Vim and I use it most of the time, I don't really buy it when people act like it saved them a whole lot of time. I love the Vim keystrokes and philosophy, but I don't really…

I've always considered that it's more about comfort than productivity. And perhaps that comfort leads to a small increase in productivity, but more because you enjoy it than because it's so much faster to use (as we always say, we spend more time thinking that writing). And because so many tools use vi-style keybindings, if you spend any significant amount of time in a terminal, then you're going to experience that comfort and familiarity all the more.

Re: Bill Joy's greatest gift to man – the vi editor (2003)

#96
post #93

Earlier quoted context omitted.

Neovim definitely has significant market share, you can compare Github stars as one statistic to consider: https://github.com/vim/vim - 20k https://github.com/neovim/neovim - 36.5k This is in some part due to the fact that neovim has been on Github longer, but it's still a a major indicator. Neovim has many benefits over Vim, and has been applying pressure on Vim for years to improve its own development and codebase.…

For a nearly 30 year old software like vim, Github stars are not a relevant metric. Vim probably has users who have never even heard of Github.

Yeah, it's not an accurate indicator since various factors play into how many stars Neovim has, e.g. Vim is prebuilt into most OS distros, so lack of a need to download it, Neovim is more contributor friendly, etc. I highlighted this not to show the insignificance of Vim, but rather the rise of Neovim.

Re: Bill Joy's greatest gift to man – the vi editor (2003)

#97
post #44

"Among Joy's list of achievements are BSD Unix, NFS, UltraSPARC designs and some work on Java" - not to mention Berkley Sockets. But his greatest gift to man was vi? I think not! Full disclosure: I'm an "emacs guy" but I don't care about the silly old emacs/vi wars. I would just say as awesome as people find vi to be, it's among the least of Bill's accomplishments. That's how awesome he is!

I don't know how much he was involved in the "3M" model that Sun pushed, but that was pretty big too: 1 Megabyte of memory, 1 megapixels on the screen, 1 Megabyte/sec network connection. All seems like nothing now, but at the time of the early Sun workstations, that was the definition of a high end machine.

Re: Bill Joy's greatest gift to man – the vi editor (2003)

#98

For those who do not understand why people are fanatical about vi, here are some reasons: Vi is keyboard only. This means that actions with the mouse are optimized through the keyboard. There are "hotkeys" for most tasks you use with a mouse. Vi has the idea of objects. Words, lines and paragraphs are objects you can operate on. Vi defines a "language" for operating on objects. For instance, 'd' is delete. You can de…

"This is especially important if you have to edit a file on a remote server"

This may have been true a decade ago, but editors like Visual studio code now have remote editing abilities over SSH.

I regularly have 50+ files open at a time for editing/compiling and I've never found editors like VI very helpful.

If I need to make a quick edit to a config file, it does the job.

Re: Bill Joy's greatest gift to man – the vi editor (2003)

#99
post #27
post #12

Let's not forget Bram Moolenaar, who also deserves credit for extending the work on Vi. Vim [Vi iMproved] is likely (along with NeoVim) the actual Vi editor most people are using these days.

What's the story with NeoVim exactly? I am trying it out on Linux because I got some recommendations that it's better than Vim, but I've run into some problems because for instance with setting up plugins and things, lots of times the documentation seems to be geared toward Vim, and sometimes I've gotten errors it's hard to figure out because of this. It kind of gives me the perception there just aren't that many peo…

What made me adopt it a while back was the work they put into the plugin system. I honestly don’t remember the technical details (better or real async maybe?)

But the end result for me was being able to use things like deoplete without the editor pausing on me or missing keystrokes.

My guess is these days bringing a newer vim with you vs relying on your distro’s probably has the same benefits. I only use plugins locally and haven’t bothered switching back.

Post reply on HN