3 ms·
I use VScode as my main IDE, and have never tried emacs. But I've watched many videos on org-mode, emac setups, org-drill, over the years. One thing I've notic
by Kagerjay 8y ago
I use VScode as my main IDE, and have never tried emacs. But I've watched many videos on org-mode, emac setups, org-drill, over the years.
One thing I've noticed is there are very few good emac videos tutorials out there, at least compare to VScode and any other IDE.
Its a very powerful tool sure, if you memorize all the hotkeys and commands. But to get to that point requires a lot of memorization and practice, something I don't have the luxury of. Time spent familiarizing myself with a nice GUI interface like VScode to get the same job done is easier.
I almost never cut corners when it comes to adopting tools. I always adopt the simplest tool first, usually this is things like pen+paper, stickynote pads, etc. If the simplest tool suffices for all my needs, I don't upgrade. I believe dumb tools are always better, there's less moving components and more rigidity/opinionation. Plus I can touch and feel it, etc. However, I will always constantly do research and A/B test new tools almost everyday, just to see whats out there.
I think people honestly get too invested in their tools. A tool is a tool, nothing more nothing less. If someones first thought about you is "oh he's that emacs guy!", thats not a good thing.
But I still understand that people have lived and grown up with emacs, and its been something they have nurtured their entire life. They've built optimized workflows for any situation, and memorized hundreds of tidbits for making things work fast. Jumping ship is like tossing away part of your identity, so its not an easy transition.
- baseballdork 8y ago> I think people honestly get too invested in their tools. A tool is a tool, nothing more nothing less. If someones first thought about you is "oh he's that emacs guy!", thats not a good thing. Gonna have to disagree here, there are good tools and bad tools. This mindset of a tool is a tool is why my company still uses cmsynergy and why nobody writes code is MS word. Being thought of because you have proficiency in a tool is definitely not a bad thing, especially if it allows you to be more productive. Investment in a tool like emacs also typically isn't a bad thing because emacs can be found on just about any Linux PC in existence, same with vim.
- Kagerjay 8y agoFair enough you make a good point. What I meant is your sole identity shouldn't be based on a tool or framework. At the same time being proficient at a tool does help out when that tool comes in handy.
- olau 8y agoThe thing about Emacs is that it has nailed the text editing aspect really, really well. Emacs actually has a built-in tutorial. It takes an hour or two to go through, if I remember correctly. Most people don't do it, I think, because they think they know how to edit text - you just use the cursor keys and hit the keys you want to insert? But if you follow the advice in the tutorial and practice over a day or two at a reduced speed, it does actually make a noticeable difference, IMHO. It's a bit like touch typing. I know plenty of programmers who can't touch type. Yet, in my experience it actually frees a noticeable amount of brain power. But it does take maybe 10-20 hours to learn. So people don't do it.
- bunderbunder 8y agoAn hour or two for a tutorial is just too much. What VSCode offers on this front that strikes me as a really killer feature is the command palette. It's a great UI - whenever you want to do something, and you're not sure what to do, just hit the hotkey to open the command palette (on Macs it's shift-splat-P) and start typing the name of what you want to do. It'll give you a menu of actions, and, if a hotkey is assigned, show it to you. It means you never need to leave the keyboard to hunt through menus to find something, and you also don't need to read through endless lists of hotkeys and create Anki flashcards for them just to get yourself pushed over the "I can't get any work done here" phase of the learning curve.
- Kagerjay 8y agoI know many users tout using anki flashcards for memorizing hotkeys, but I think this is the wrong way of going about it. There's a term called "Fringe Tech" https://www.oxbridgenotes.com/articles/janki_method_refined https://www.oxbridgenotes.com/articles/janki_method_refined , it states don't make a card with questionable uses down the road. Your hotkey is going to be irrelevant if you change the bindings to something more optimal. You learn this fairly quickly if you play competitive video games like fortnite or rocket league. Anki should be used for memorizing concepts you understand already not button pressing. Instead, my new macbookPro (and my first time using macOS), I have dozens of printed out cheatsheet snippets and stickynotes littering the edges of the keyboard. I write down a bunch of hotkeys I can refer to instantly by glancing down at my keyboard. Conceptually, its the same way I did things with cheatsheets in college before an exam - it just works. I made a legend for things like ⌘⇧⌥⌃⇪, these are very unfamiliar to me as a windows user. It makes for a frictionless experience for memorizing commands.
- xfer 8y ago> if you memorize all the hotkeys and commands. But to get to that point requires a lot of memorization and practice, something I don't have the luxury of. Time spent familiarizing myself with a nice GUI interface like VScode to get the same job done is easier. A lot of people use keybindings all the time, even on vscode/atom(at the very least copy/paste). People using vim/emacs don't start by memorising all keybindings, they start with very basics and as they find more useful things, they start using them. > I think people honestly get too invested in their tools. Editor is the most important tool for a programmer, so yes you should invest in it(may it be vscode/vim/emacs).
- Kagerjay 8y agoI might be biased here, but I come from a long time windows OS background. I started recently using macOS as well. If I used linux as my primary OS, I probably would use VIM/emacs much more. Editor is the most important tool, I agree with you. I still use VIM when working with servers, but that's about it. I mostly do frontend development so I don't see a huge amount of value investing in emacs. My perspectives might change down the road, when I start working on backend infrastructure. I still think emacs has too high of a learning curve for the value you get out of it. Installing emacs on windows is not entirely straightforward either, I have to go watch a video to even install it. I write my own scripts and macros on windows all the time though. The reason why I prefer GUI interfaces is because I can only deal with so much cognitive overhead. I still initialize most things using a CLI (e.g. cloning a git repo). However I don't only do programming, I also do UX, graphics design, and 3D CAD modelling among other things. Emacs should have enough value to warrant the amount of cognitive overhead it cost. It does if you only program though.
- earenndil 8y agoIme, it reduces cognitive overhead. At this point, it's just intuitive how to do a given thing in vim, and doing it in another editor would take longer for no perceptible gain. I tried to use clion once for a project, I really tried, I used the ideavim plugin so my keybindings were right at home and it just felt clunky. The process of committing seemed so much more difficult and convoluted than just a quick git diff/git status followed by git commit. Changing files required me to use the mouse (I'm sure it's possible to do it with the keyboard, but not in such a configurable way). Building I had less control over so I had to think about what it was doing whereas I can at the drop of a hat switch between 'make', 'make debug', 'make opt', 'make clean; make' (if there are unfound artifacts). Using a new file-type doesn't require me to install a whole heavy plugin that integrates with the build system and completer, I just need a syntax highlighter (which more than likely is already there) and I'm golden.[