Live data from Hacker News

The values of Emacs, the Neovim revolution, and the VSCode gorilla

murilopereira.com

21–30 of 353 posts

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#21
I read this "definition" of philosophy elsewhere: we all share the exact same set of moral values, but their relative order is different. It's the order of the moral values that determines a philosophical stance.

The article starts by recalling this, but then it describes each project by the principles that it holds, but not by their order. This is a bit strange.

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#22
post #14

Are powerful editors really that much of a force multiplier? My career path has pulled me from a CS degree into loosely related fields so I mostly only code as a hobby. I end up using basic editors (e.g., gedit) and reaching for grep/sed/etc when I need something fancy. Is having that power in the editor versus the command line that much of an advantage?

As always: It depends.

Better be proficient in command line tools and a simple editor than not being proficient in an fancy editor.

But once you are used to the fancy editor it can be very efficient to be able to lookup a definition, do some refactorings, get an code outline view, auto completion, editing helps (text templates or the automatic } and indention) etc.

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#23
post #14

Are powerful editors really that much of a force multiplier? My career path has pulled me from a CS degree into loosely related fields so I mostly only code as a hobby. I end up using basic editors (e.g., gedit) and reaching for grep/sed/etc when I need something fancy. Is having that power in the editor versus the command line that much of an advantage?

I believe so, looking for definitions of functions you’re using and being able to jump to their implementation is great, starting a debugger, getting errors as you type... it all saves time.

Being able from the same interface to visualize your database and state of the program is also good !

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#24
post #11

Earlier quoted context omitted.

The only place that the developer of neovim is referred to as its “author” is in a quote. But also, I didn’t get this impression at all while reading the article.

The article is deliberately using selective quotes to paint Bram Molenaar in the worst possible light. A common tactic among people who take over code bases in order to cruise on other people's hard work.

I don’t know. I don’t think the author paints him in a particularly bad light. It mostly seems to be trying to point out why neovim was made, specifically that its authors valued different things than the author of vim.

I also think the amount of work that’s gone into neovim is way more than enough to call the authors authors at this point. The forking of vim doesn’t seem to me to be “tak[ing] over code based in order to cruise on other people‘a hard work,” but open source working as intended. The neovim authors were able to take a project, adjust it to fit with their values, and let people decide which they prefer.

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#25
post #14

Are powerful editors really that much of a force multiplier? My career path has pulled me from a CS degree into loosely related fields so I mostly only code as a hobby. I end up using basic editors (e.g., gedit) and reaching for grep/sed/etc when I need something fancy. Is having that power in the editor versus the command line that much of an advantage?

You can't achieve what a modern IDE can do using a simple editor and the command line.

Autocomplete, hinting, type checking, navigation, documentation display, automated refactoring, interactive debugging, and integration with other tools like test runners and databases, are some of the major features which yes, are indeed force multipliers.

This all becomes even more important when working on large codebases, and/or code you didn't write all yourself.

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#26
post #25
post #14

Are powerful editors really that much of a force multiplier? My career path has pulled me from a CS degree into loosely related fields so I mostly only code as a hobby. I end up using basic editors (e.g., gedit) and reaching for grep/sed/etc when I need something fancy. Is having that power in the editor versus the command line that much of an advantage?

You can't achieve what a modern IDE can do using a simple editor and the command line. Autocomplete, hinting, type checking, navigation, documentation display, automated refactoring, interactive debugging, and integration with other tools like test runners and databases, are some of the major features which yes, are indeed force multipliers. This all becomes even more important when working on large codebases, and/or…

You can do all of those things in all four of the editors discussed.

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#27
post #9

This is really well written and researched but confuses me. Do most people not do this - make choices based on values (and constantly re-evaluate those choices in the face of new information)? When I decide to use software, move to a new location, purchase cereal at the grocery store, buy music, and a variety of other daily activities, these are choices I make based on my values. Many times I end up picking something…

I don’t have any values that would affect the cereal I buy. I’m not even sure what values would come into play. I don’t buy cereal that isn’t magically delicious? I just buy whatever is cheapest. Is not having much money a value?

Other than Richard Stallman, I don’t think I’ve ever heard anyone talk about how their personal values determine what software they will use. If I can afford it (free is better!) and it does the job, I use it.

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#28

Noob question: Is Sublime text still a good text-editor in 2021? Did it just loose momentum or not being open-source is insurmountable? I still think its speed and usability are not easy to match.

Open source is kinda irrelevant IMO.

The answer is, of course, it depends. How much do you value language integration? Do you have muscle memory for vim or emacs? There are many more questions here.

VSCode supports language server protocol arguably best, because LSP/VSCode/TypeScript were all developed somewhat in parallel. But some languages don't have complete language servers, or already had their own forms of IDE integration. JetBrains ReSharper has it's own csharp parser which it uses for analysis and automated refactoring.

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#29
post #19
post #5

> It also shines in areas where Emacs doesn’t: if you’re a programmer working on typical contemporary projects, mostly just wanting to get stuff done, things usually… just work. You install VSCode, open a source code file, get asked to install the extension for that particular language, and that’s it. You get smart completion, static analysis, linting, advanced debugging, refactoring tools, deep integration with git…

Same here in regards to Magit. I've tried seriously using Emacs (Spacemacs) for a year or two, but something always doesn't work as intended, code completion and static analysis is extremely hard to configure, especially you have some non-standard project setups. Then switched to a mix of vim for simple stuff or clion/pycharm in vim mode for rust/cpp/python... BUT, subjectively, Magit is the best git client ever crea…

Try Doom Emacs (https://github.com/hlissner/doom-emacs) instead of Spacemacs. It's much lighter weight and doesn't replace the configuration system to nearly the extent Spacemacs does.

Re: The values of Emacs, the Neovim revolution, and the VSCode gorilla

#30
When you finally learn to master and config Emacs, you run circles around all other editors. Emacs is so much more than just an editor. But even if you only use it for coding: Magit is the best git client I have used in years (coming from PyCharm + Git Tower App, which is nice), then there‘s Ztree-Diff (excellent folder diff tool; previously using Kaleidoscope app), then Eshell for interacting with the server from within Emacs (programmatically if you like), Tramp for remote editing, excellent integration of ripgrep and silversearcher (ag) into Emacs for code navigation, yasnippet as an excellent templates/snippet manager, and many more packages.

What makes Emacs exceptional is you can link all these packages together, create your own workflows by scripting Emacs in Lisp. And I write the docu in Emacs in org-mode, with org-babel I can run shell-scripts / python-scripts and other code in my org-file and see the output underneath it (like Jupyter notebooks), link to code fragments in my org files etc

I manage several projects with it and switch contexts with one key-combination: Vagrant box is started, project folder is changed, necessary files opened, ready to hack, build, deploy, do server restarts with a single key stroke.

I think VS Code is a nice coding environment with good defaults and many things done right (compare installing packages in VS Code to Sublime! What an improvement) but nowhere near the capabilities and the productivity of Emacs.

Post reply on HN