9 ms·
I’ve been using Emacs for ~15 years right now, but I don’t recommend it for the last few. I love it, it’s great, and as many others, I tried to move out of it
by xlii 4y ago
I’ve been using Emacs for ~15 years right now, but I don’t recommend it for the last few.
I love it, it’s great, and as many others, I tried to move out of it but there was something I couldn’t do I KNEW I could get in Emacs and it frustrated me so much I kept going back.
But I don’t think it brings a lot of added value. There are many very very powerful IDEs and editors which offer out of the box great UX and feature discoverability. Hell, probably if IntelliJ toolset would allow me to customize it deeper with Lua/Lisp/JS/whatever I’d probably switch in a jiffy.
I compare Emacs to vinyls or paper books. It requires investment, in many cases it is worse than competition and requires more energy to just be on par. But it is absolutely lovable. Vinyl record comparison - they are expensive, heavy, require a lot of maintenance but for specific type of people it makes their heart skip a beat when they take it from the sleeve.
That’s why people are constantly talking about their Emacs. Same with vim or nvim. I rarely hear people talking with excitement about WebStorm or VS code.
So yeah, if you’re not into it just keep in mind that like some freak who spend their weekend on polishing rims of dream come true 1959 Fiat 500, some of us spend their time with Emacs.
Don’t get bullied into it, don’t get FOMO about it, but please don’t spoil our fun.
You’re always welcome to join in.
- SeqDesign 4y agoI disagree 100%. Emacs is the best. I do not hesitate to recommend it. Will it work for you? I don't know. Might it be exactly what you were looking for? Yep! That's how it was for me: it gave me everything I ever wanted and more. Period.
- mlatu 4y agoi get that, though i would rather compare it with chopsticks than vinyl records. you use emacs to do stuff, you dont just listen to/watch it do its thing. chopsticks might not seem like a good metaphor at first glance, as they are much more simple, but they are highly compatible with a lot of tasks and can be utilized in many ways that a fork, spoon, spork or colander just wouldnt handle as well. to my mind, the simple thing hidden in emacs' complexity is that it is a closeted lisp machine
- oliverbennett 4y agoBoth metaphors seem apt. One is leaning towards how a product makes a person feel when using it, one is about what the product offers. I hear arguments around what products can offer me all the time, they make sense, but I generally go with how a product makes me feel. Probably more than I even realise. I don’t use Emacs, I do whisk eggs and fish doughnuts out of oil with chopsticks, I couldn’t fully say why for either.
- mlatu 4y agooh i get it and i will contradict my own saying "you dont need GPU for handling source code" when i talk about my personal projects, but there is a time and a place for all the tools there are: some have janky handles, some have single-purpose nibs, others are as customizable as your regular homeowners house. i am still a bit iffy about emacslisp, but less so than before i grokked CL (thanks for that goes to "practical common lisp" by peter seibel) but: whatever floats your boat will keep your boat afloat :D
- pmontra 4y agoAs a westerner, chopsticks are much better than spoons or forks at getting that last grain of rice in the plate, or a small piece of salad.
- ninkendo 4y agoThey’re also great for eating Cheetos without getting orange residue on your fingers. :)
- slowmovintarget 4y agoOr eating vegetables like sauteed kale, or string beans. I will admit that for that very last teaspoon full of rice, though... I grab a spoon.
- uhtred 4y agoI love the vinyl or paper books comparison. I have a strange nostalgia for the old Unix days that I was too young— perhaps not even alive yet— to experience the first time around. It's what draws me to learning and using things like vim, Perl, awk, sed, etc. Those tools feel arcane and mystical.
- rahen 4y agoI've been there too. Installing, trying, running older and older Unixes in SIMH. 4.1BSD, 32V, V7, V6, all the way down to V0 on the PDP-7 with the help of tutorials on gunkies.org. I still keep a neatly organized folder of primitive Unix systems with their (tiny) disk images and SIMH boot scripts. But going all the way back to the Big Bang at V0, a funny thing happened. The essence was still missing. Because indeed the open-source foundations weren't really born from Unix and the PDP-11. I only had focused on the technicalities. No. The missing half of the puzzle is ITS and the PDP-10. This is where the hacker movement, GNU and the free software philosophy were born. The world of Stallman versus the world of Thomson. The root of emacs, LISP, TeX, and many more. Which interestingly, are both older and more timeless than the Unix part of the puzzle. After the demise of the PDP-10 in the 80s, Unix (and ultimately Linux) just happened to be a convenient hardware abstraction layer to carry the torch, to run what really mattered. Unix had been the tool but not the essence. This is where I reached the end of my journey: ITS, emacs, and the birthplace of the hacker and free software spirit. I was enlightened, and the words "GNU's Not Unix" finally made sense!
- oblio 4y agoGreat comment, I'm glad you put into words what I've been trying to communicate as someone on the outside looking in. A minor joke here: > Hell, probably if IntelliJ toolset would allow me to customize it deeper with Lua/Lisp/JS/whatever I’d probably switch in a jiffy. It's not going to be quick and it's not going to be pretty, but I think you could technically do it with Clojure :-)))
- tmtvl 4y agoOr ABCL or Kawa.
- forty 4y agoI switched from VSCode to Doom Emacs with very little of my own customization (doing TS, Scala, Rust mostly) a few years ago. There is not one thing of VSCode that I miss, and I enjoy some of the most powerful features like wgrep & all, and a great vim emulation layer (the one I had in VSCode sucked).
- mtzet 4y agoI agree. Emacs out-of-the-box is terrible, but my Doom Emacs config is all 50 lines of code. For that I get: - IDE-like features via LSP - The best git porcelain out there: magit. Even when I'm not using emacs, I come back to magit for code-browsing (recursive blame) and staging hunks. - Emacs/vim's fantastic buffer/window concept, where open files are not owned by their windows. I miss this whenever I use anything else. - project support to quickly grep across all files or jump to files - Very mature vi keybindings, with their infinite composability I still sometimes find that it's either too rigid or too manual at certain things, but I could say the same for CLion and VSCode. I still come back to CLion for its refactoring tool, the 3-way merge window and the debugger integration. It is a bit messy though. It's very well done for what it is, but it's cobbled together from many disparate components. It seems that it should be possible to create the same type of experience from a simpler, more coherent system. I rarely update the base system, but when I do, I've occasionally had to google for some exotic elisp error and add a fix here or there.
- saeranv 4y ago> - Emacs/vim's fantastic buffer/window concept, where open files are not owned by their windows. I miss this whenever I use anything else. Why is this useful? I basically treat my nvim buffers like windows. What am I missing?
- _a_a_a_ 4y agoBecause you can look at and maniuplate the same file n different ways. Something I sorely lack when using e.g. visual studio
- qwertox 4y agoWhen I open Android Studio I often think: "Man, how lucky we developers are, we have such great tools to do our work." I thought the same about Visual Studio with Whole Tomato's Visual Assist. And VS Code is not quite there, it has a chaotic keyboard navigation + highlighting issues, but it is a pretty good tool, for being a text editor.
- zelphirkalt 4y agoIt's been a few years since I last touched it, but Android Studio is the last thing, that I would ascribe "great tool" to. I ended up coding views by hand in the XML, because the graphical editor would go out of sync or render things wrongly. As far as I remember I also had to manually code in the XML event listeners for clicks, because the GUI did not offer that. All it did benefit me with was project structure and being able to press a button to put an app on a USB connected phone.
- trs-80 4y agoYou got further than me. Just seeing the size of the monstrosity was enough for me to nope the f out. Well, that on top of the creepy uneasiness I always feel whenever dealing with companies like Google (or M$, FANG, etc.).
- otabdeveloper4 4y agoI've been using Emacs for 25 years, and I use a stock install and I never even touch the .emacs file. It's just a text editor. For many tasks it has better usability than the competition. This is why I use it. (Not for everything, though, and that's okay.) I'd guess most people are like me. Configuring text editors is not our hobby.
- _y5hn 4y agoSpacemacs got lots configured out of the box, which allows to keep this workflow but still not miss out on much.
- otabdeveloper4 4y agoI don't care about LSP and today's iteration of "IntelliSense", so I'm not missing out much in any case. Since most people today are more than happy to code in Jyputer notebooks (yuck), I guess I'm not actually that weird.
- gpderetta 4y agoJupyter has code completion. Once in a while it even works.
- bachmeier 4y ago> It's just a text editor. I'll never understand comments like this. There's a full Lisp implementation available in there. Other text editors don't come with org-mode, either.
- spopejoy 4y agoAs a former elisp package maintainer and emacs bigot ... ... I really just use it as an editor/IDE these days, and couldn't be happier. Emacs is how I learned LISP which forever transformed me as a programmer and I'm grateful. But let's be clear WHY I was doing that: it was horrible as an IDE at the time and I needed it to do the thing. Now, with elpa, great themes, solid modes for every major language, magit etc, it just works. I customize ... via customization. I still have my .emacs (dating myself there) and a few nifty functions I wrote. I maintain a programming language, so pact-mode is still there. The ugly truth there is that it's actually easier to write integrations (for a LISP-like no less!) for VS Code than write a major mode. I miss hacking on emacs but I'm more productive for it.
- ocimbote 4y ago> I rarely hear people talking with excitement about WebStorm or VS code. VSCode? It's got its fan base and it's quite vocal. Actually, Didn't VSCode collate the majority of the former Atom users, as Atom collated the majority of SublimeText before it?
- slowmovintarget 4y agoFirst, interesting (and proper) user of "collate." To me, until this moment, it meant basically "to sort," but I looked it up to see if I was wrong. It means to "collect and combine in order." Neat. I'm an editor vagabond. I went from Ed 4 to Notepad++ to JEdit to UltraEdit to TextPad to Sublime Text to Atom to VS Code. Of all of these, Sublime Text is the one I still use every day. TextPad on Windows was the other one that was sticky, though Sublime has replaced it. I kept dabbling with Emacs, kept knocking into vi flavors for "just getting it done." Perhaps it's time to find a home with Emacs and try to use it for everything. But there's always that next one... maybe Xi, maybe NightCode (nope), maybe Edita... Emacs and vi will still be there, and I'll probably pay for the next three versions of Sublime Text like have the first three.
- ocimbote 4y agoThanks for noticing. I had to double check as well :p I'm also on the lookout for my next "forever home" but I set the bar to only try a modal editor that acrually differs from Vim's modes. So, modal without vim-mode.
- mark_l_watson 4y agoJust wanted to mention: the Community Edition of IntelliJ is open source. I used to routinely build it from source (but haven’t tried that in a few years). You might have fun making the extensions you want for more extension languages. I have been using Emacs for 40 years and still love it, but I do find myself using VSCode more often now for Python work. Emacs has very good CoPilot support, but it sometimes lags a bit behind the support in VSCode. I also have started using a proprietary MarkDown editor instead of Emacs or VSCode. For me a big draw of Emacs is that I have it easily configured for almost all programming languages I use.
- II2II 4y ago> It requires investment, in many cases it is worse than competition and requires more energy to just be on par. One way to think of it is any tool requires some investment. The big difference with Emacs is it has always been around and always will be around, so you are continuously building upon that investment. Contrast that more modern tools. The learning curve is nowhere near as severe to start out, yet one is far less likely to learn how to use it so the same depth in the long term since it is far less likely to exist for the long term.
- teddyh 4y agoPlease name any other comparable IDE or editor which is also free software (and also preferrably developed by more than a single company).
- ubermonkey 4y agoMost people don't care about that as a qualification.
- teddyh 4y agoI would assume that many people here do some work on free software. If people producing free software are not able to comfortably develop free software using only free software, then we have lost something important.
- kilgnad 4y agoWe likely have lost something. It's like global warming. Everybody talks about it as if they care, but if you still drive a car, do you actually care? No. Not enough to stop contributing to global warming. It's the same thing with free software. I care, but not enough to stop me from using the easiest thing out there to use regardless of whether or not it's free.
- teddyh 4y agoLet’s not exaggerate; many people do care enough to have it affect their behavior. If there’s something you “care” about, but this does not affect any decisions you make in any way, do you actually care about it?
- kilgnad 4y agoThe answer is: No, I don't actually care. I wouldn't say it's complete apathy though, I can still recognize that it's not exactly the most moral decision. I agree, let's not exaggerate, if the overwhelming majority in aggregate acts in the exact same way, the aggregate action overwhelms the minority action. In this case, most people don't care and share my viewpoint on the situation.
- tronx 4y agoI have only used IDEs and tried getting into emacs because I heard so many times how great it is, but it was the learning curve paired with the lack of good tutorials for beginners that made me eventually give up.
- billfruit 4y agoEmacs tutorial is quite good, IMO. It is interactive and built into Emacs itself.
- lkjdsklf 4y agoIf you're actually interested in learning, there's a pretty good series "Emacs From Scratch" on the systemcrafters youtube channel. He starts with a completely empty emacs config and builds it up to a full blown IDE explaining how everything works along the way. Some of the things he does, there are better alternatives these days but most is still relevant and it'll teach a lot about how emacs works. That said, emacs is more of a hobby than an IDE. If you just want to get work done, using something like vscode or intellij or whatever else makes way more sense. If you find it fun to tinker around and customize your editor you can make emacs incredible, but it's something you have to want to spend time on.
- tronx 4y agoThanks for the tip!
- cyrialize 4y agoI share the same sentiment. It's taken me quite a while to be comfortable in Emacs, and honestly, I feel like I still need to spend more time to up my game in it. My main gripe is dealing with several major modes at once, I still find that Emacs isn't the best at that. I will say for anyone curious about Emacs, do try it out in your spare time. It's so much fun to customize and play around with.
- taeric 4y agoI know you are doing a more vague accusation, but I don't appreciate being cast as bullying people into using Emacs. :) (Smile is intentional, not trying to be aggressive here.) There is an odd aggression against Emacs that typically does lead to people having to go to extra effort to justify why they use it. And I can agree many of the justifications can feel like a stretch. They aren't false, though. Nor are we working on some archaic thing that only we can appreciate. I'm also always amazed at how we think Emacs is somehow more archaic than anything else in a computer. Getting my kids into computers. It is Scratch to start, than probably crippled Python environments. That they are almost certainly going to break and wonder what happened. We even got started on some Arduino stuff, and their IDE is not bad, necessarily, but don't pretend like it is easy and quick in ways that Emacs isn't. Want to make a small game? Good luck, as there are no other environments for that anymore. (Used to, the computer booted into a BASIC shell in ages past.) And this is avoiding the environments for content creation. Blender is amazing. And amazingly hard to use/explain. Fusion? TinkerCAD is at least easy to explain. But again, very easy to screw up in. (And I'm growing rather tired of all of the times I come back to a computer with hundreds of tabs in a browser all convinced they need to save data.) All of that is to say, computers are tough. Period. I hope people can find a comfort zone for creation. But I am not convinced there is a single answer there. And more than happy to share what has worked for me.
- steponlego 4y agoEmacs has the best tutorial. It’s built in. And once you’ve completed it you are ready to use the whole system. Then you read the elisp intro and bam, you’re extending your editor. You can easily tackle both documents in a day. No other editor comes with such a good tutorial.
- crabbone 4y agoAt one point, my employer forced me to use Intellij products... I have no idea why anyone using Emacs would want that. It's awful all around. I also cannot imagine why would anyone come to conclusion that Emacs is like paper books. The UX is definitely better than in Intellij. And, feature discoverability is... well, it's for people with < 1 year experience. Who cares about their opinion? They know nothing, and are expected to not know anything. > I rarely hear people talking with excitement about WebStorm or VS code. You seem to be living in a very remote area where no programmers can reach you, beside those using Emacs. Yeah, people using VSCode talk about it a lot, given an opportunity. In an average programming company, programmers might talk more about Emacs because for the overwhelming majority it's a mystery. It's the same how others might be driven to discuss UFOs or weird cultural kinks found in distant lands. But, really, it's not an indication of anything.
- _a_a_a_ 4y agoDisagree. It's definitely falling behind in certain areas such as LSP support but overall it is just so much better than anything else I've tried in terms of moving around, macros, regular expressions that do what they're supposed to do, stability, stability of user interface (I could open an Emacs from 20 years ago and start using it immediately), quick and thoughtful response to bug reports… It just works for me. It really, really does need some improvements in places but in other areas everything else just lags behind.
- rcdwealth 4y ago[dead]