9 ms·
It's over 40 years old but it has fewer and fewer users younger than that. VS code is rapidly taking over it's niche and without modernization, of many kinds, e
by zarkov99 6y ago
It's over 40 years old but it has fewer and fewer users younger than that. VS code is rapidly taking over it's niche and without modernization, of many kinds, emacs will die out in a generation.
- PaulDavisThe1st 6y agoI've used Emacs for 33 of those 40+ years, and I agree with that until the word "without". You don't mean "modernization". You mean "without it changing". And the answer is yes, it will die out.
- zarkov99 6y agoWhat are some of the changes you would want to see?
- tsuujin 6y agoI think adopting cua-mode as the default would go a long way towards reducing the initial friction for new users. Most of the time when I try to get people to adopt emacs, they abandon it because it feels like a huge task to relearn basic text manipulation. They never get to actually see what makes emacs good because they don't feel compelled to get past the initial bump.
- BeetleB 6y agoBut here's the question: If Emacs defaulted to CUA, how many of those people would get to see Emacs's goodness? CUA alone doesn't get you there. To do most of the things that make Emacs stand out involves a fair amount of learning (and possibly customizing). You have to put in some amount of effort before you get its benefits. While I certainly don't mind making simple things easier (e.g. CUA mode), I also see that doing so will not help new users much beyond doing very basic editing.[1] There are a fair number of stairs to climb to get to the point of being useful, and superficial stuff like CUA, etc simply eliminate perhaps 5% of the steps. Don't expect this change to make a big difference in retention. As a corollary: If someone is not willing to learn how to enable CUA mode in the config file, then it is highly unlikely they will ever learn to use the features that make Emacs salient. [1] I know, because my first decade of Emacs use was like this. I got past CUA mode, but otherwise used it for very basic editing. I always installed an IDE to do "real" work. It's only after one of my favorite IDEs died did I decide I really should just learn to use Emacs properly, and invested a week's worth of effort to be proficient in it. That week made all the difference.
- ssivark 6y ago> If someone is not willing to learn how to enable CUA mode in the config file, then it is highly unlikely they will ever learn to use the features that make Emacs salient. I think that’s uncharitable. For a newbie low on confidence it’s often death by a thousand (paper) cuts: CUA mode, Surprising undo model, How to download packages, How do I enable fringes/margins, Windows-vs-frames, etc. Each small change has a cognitive tax, and allowing users to feel psychologically comfortable and add tweaks slowly will make the learning curve much gentler. I wouldn’t be surprised if the strongest indicator of whether someone sticks with Emacs is whether they have access to an Emacs expert with whom, or a community where, they feel comfortable being a newbie.
- xfer 6y ago> I wouldn’t be surprised if the strongest indicator of whether someone sticks with Emacs is whether they have access to an Emacs expert A lot of benefits of Emacs you get are when you realize you are operating a lisp VM. Enabling all the same things that other editors do in the same way will not suddenly make them choose Emacs. Someone needs to nudge them towards the good parts of emacs/show a powerful application that will make them use it.
- BeetleB 6y ago> Surprising undo model I tend to get surprised by this complaint - especially in the article where undo-tree was recommended as an alternative. Both the Emacs undo and undo-tree are "surprising" models in that very few standard editors support anything beyond the most basics. Personally, I've not had trouble with Emacs's undo (beyond it not visualizing it). Switching to undo-tree may be OK, but it's still surprising. Switching to the standard one in most editors is a pretty serious regression. > How to download packages Once I properly learned Emacs, I did not have a need to do this for the first few years. I'm not referring to decades ago, but the 2010's. While I agree that a convenient way to download things from MELPA would be nice, I hardly see not having it as a barrier. Most people new to, say, Visual Studio don't start with "How do I download plugins". And once you know some of Emacs basics, package downloading is but 2-3 lines in the config file and a keybinding that presents you a menu. > How do I enable fringes/margins Again, I don't see this as a beginner feature. I don't know how to do this, and I've never wondered about it - both as a beginner and as an advanced user. I've use Visual Studio quite a bit and never tried to enable/disable them there either. I don't think this is something a typical beginner would deal with. > Windows-vs-frames What is the issue beyond terminology? It wouldn't bother me if we rename these. I don't see a great enhancement, though. > Each small change has a cognitive tax, and allowing users to feel psychologically comfortable and add tweaks slowly will make the learning curve much gentler. Although I personally don't recommend it, but have you heard of Customize in Emacs? It used to be (and may still be) the recommended way to change config options. It has help on various options, and is an interface - not "edit config file with Elisp commands". Many users say it really helped them and certainly flattened the learning curve. > I wouldn’t be surprised if the strongest indicator of whether someone sticks with Emacs is whether they have access to an Emacs expert with whom, or a community where, they feel comfortable being a newbie. I did not have access to an expert. I simply read a book on it[1], and the rest was from occasional Google searches. In those days there really wasn't that much friendly info online, but it was enough to maintain the momentum. There is a ton more stuff these days to help beginners. Not to mention Youtube videos. (BTW, as a reference point, I was a power Emacs user for almost a decade before I learned enough Emacs Lisp to write a simple loop - too many people have the misconception that one needs to know elisp to use Emacs well). As someone commented on HN in an earlier submission: Who becomes a power user of anything without reading manuals? That it's not straightforward to do simple text editing in Emacs is a fair criticism[2], but also a bit of a shallow one. There are plenty of friendly text editors for simple text editing. Let people use them! The value proposition of Emacs is in its powerful capabilities, not basic text editing. It's a bit like complaining that Ferraris are a pain to learn to use when all you will do with it is grocery shopping. Just use a regular car! [1] This was the norm in the pre-Internet days (80's and 90's), BTW. Even in the 00's when interfaces were nicer, the people I knew who were power Visual Studio users became so by reading books or online manuals - not by random discovery or random Internet pages. [2] It's ironic that I write this, given that the only reason I began using Emacs is that the other option people led me to (vi) was even harder to do basic text editing. At least with Emacs, I could type and it behaved like most editors I'd been accustomed to in DOS. With vi I was immediately confronted with command/insert dichotomy, not being able to edit prior to the insertion point, etc. It's also amusing that people complain about Emacs not being like "normal" editors, and folks invoke Stack Overflow polls to indicate its lack of popularity, and yet vim is used by a quarter of SO users and is ranked 5th. vim is also beginner hostile, so the beginner hostility really isn't the reason for Emacs's low usage.
- xfer 6y agoHave you tried with a init.el with cua-mode to see how people adopt it? My intuition is incentivizing on org-mode or magit has higher chance of adoption than cua-mode. After all an alternative free editor(VSCode/notepad) is probably good enough for their current usage.
- konjin 6y agoProper multithreading/tasking.
- PaulDavisThe1st 6y agoI don't want to see any changes. There's nothing in emacs that requires any modifications or "modernization" from my perspective. But I'm nearly 57, which is why emacs, like me, will (mostly) die out.
- johnisgood 6y agoI am in my early 20s, not exactly "young" I suppose, but I have been using Emacs since age 11. I think it is fine the way it is.
- ordu 6y agoThe article on lwn pretty much nails it. The discoverability of features would be great. I have been used emacs for ~20 years and I had finally switched to VSCode after I was stuck for half an hour finding a way to type single-quote in org-mode. I had found a way first time in the past, but then I completely forgot how to do it and was forced to search again. (It something to do with locales, it is traditional for Russian to use < > and << >> quotes instead of ' and ", so someone made it default when LANG=ru_RU.UTF8, so one types ' but gets < or >. But how it was done? How to undo this damage to emacs? Now I cannot remember it one more time, but luckily I do not use emacs now so it doesn't matter anymore).
- bJGVygG7MQVF8c 6y agoIn a generation, vim and emacs will still be around with their minuscule but loyal user bases of tinkerers and VS code will have long been replaced by something newer and flashier.
- zarkov99 6y agoWhy? How are either of them superior to VS Code?
- konjin 6y agoI can run them on a breadboard. An exaggeration, but not a large one.
- mdaniel 6y ago"Superior" for sure isn't the word I'd use, almost every one of the editors and IDEs make a bunch of trade-offs that appeal to different audiences IMHO, the barrier to entry for modification for both emacs and vim is much lower than their competition: evaluate text in a buffer, observe change to your editor I don't know of any other tooling has that immediate feedback loop remeniscient of the old JS in HTML (or the dev tools console, as apples to apples) approachability
- loulouxiv 6y agoI am more accustomed to vim than emacs. Some things I painfully miss when using something else than vim : quick and easy shortcuts to jump around the file, delete words/blocks/parenthesis, place marks to jump between parts of one or multiple files, macros, filtering parts of the file through external command...
- Koshkin 6y agoI know, “memory is cheap,” but still...
- brandonmenc 6y agoWell, Eclipse has had practically two decades of vi/emacs users shitting on it and yet it is still popular enough to warrant an entire conference. https://www.eclipsecon.org/2020 https://www.eclipsecon.org/2020
- konjin 6y agoWhen you've been warned the world will end and ~~notepad~~ VS code will take over for 50 years you tend to become blase about the whole thing. Emacs has a steep learning curve and that's good. You need a moat to keep the barbarians from destroying your kingdom.
- zarkov99 6y agoI have used emacs since I was an undergrad, 25+ years ago and I have no plans to switch. That does not stop me from recognizing the fact that VS Code does almost everything that emacs does, often better, has orders of magnitude more users, is much more approachable and is being improved at a much faster rate. As they say, "this time its different".
- konjin 6y agoI will check it out in 10 years if it's still around. In the mean time I have actual work I need to get done.
- snazz 6y ago> In the mean time I have actual work I need to get done. That's probably how most VS Code users feel about learning Emacs after reading about it on HN :)
- konjin 6y agoI doubt they have had 20 years of using to it though.
- j-james 6y agoCertainly, but that's where the not-so-steep learning curve helps.
- kungtotte 6y agoThis kind of ties back in to the point of the article. For people who have used $EDITOR for 20+ years there's little incentive to change to something else, but if you want to bring in fresh eyes to your project so that there'll be enough people around in another 20 years to maintain the whole thing it behoves you to think about attracting those people. Sane defaults and being more approachable is a good way to do that. Does emacs even offer anything like `vimtutor`?
- jodrellblank 6y ago> "VS code is rapidly taking over it's niche" For comparison of numbers and growth rate: VS Code was new in April 2015, had a claimed 2.6 Million active monthly users in Nov 2017[1], became the most popular editor in StackOverflow's user survey in 2018[2] with 34% of respondants and again in 2019 with 50% of respondants, to a claimed 11 million users in 2020[3]. Its codebase has been forked 16,000 times[4]. In 5 years, VS Code has gained more users than the population of Switzerland, than the population of London, than Uber has drivers. I'm not suggesting Emacs ought to chase maximum popularity, but if there was any feeling that "the editor / IDE market was saturated" or "there was no demand for editors", that doesn't seem accurate. [1] https://vscode-eastus.azurewebsites.net/blogs/2017/11/16/connect https://vscode-eastus.azurewebsites.net/blogs/2017/11/16/con... - (VS Code has telemetry built in, so Microsoft has some accurate idea of numbers, even if they still have the incentive to hype them up a bit). [2] https://en.wikipedia.org/wiki/Visual_Studio_Code#Reception https://en.wikipedia.org/wiki/Visual_Studio_Code#Reception [3] https://code.visualstudio.com/blogs/2020/06/09/go-extension https://code.visualstudio.com/blogs/2020/06/09/go-extension [4] https://github.com/microsoft/vscode https://github.com/microsoft/vscode