Even with training wheels, though, getting started wasn't simple. It's had a very choose-your-own-adventure feel to it. After some early thrashing, I've now found my favorite resources, have a decent sense of what's out there, and am even using org-mode to track my overall learning progress. It's become self-reinforcing.
With more modern tools getting better and better, I find it no surprise that VS Code and others are gaining market share, and that the Emacs user profile is becoming less diverse. But I think there will always be a place for a tool(box) as powerful and configurable as Emacs.
Gladly! I'll keep the list to what I've studied so far. Here goes: - If you ever want to explore, say, Doom (Spacemacs is likely too bloated for someone who gravitates to a vanilla config), chemacs[1] is a nifty, simple profile switcher - I think there's a lot of value in studying what they've done with their mnemonic keybinding systems (I love being able to narrow to an org-mode subtree and widen again with =, n= and =, N=, respectively, as but one of many examples) - Sasha Chua is a good source, as she's very knowledgeable and put out a drawn 1-pager[2] on starting Emacs - it's geared towards standard Emacs keybindings - Personally, I'm a huge fan of Evil-mode for Vim keybindings, as they're powerful and portable and I had basic familiarity with Vim before picking up Emacs - I haven't found a rough edge in Evil-mode yet - it seems very refined - Dired is worth getting a handle on early since any improvement in how you can navigate Emacs translates - Magit is pure magic, and I now have my full ~/org under version control with what feels like near-0 overhead - Seorenn makes mostly Spacemacs videos[3] and Zaiste Programming makes Doom videos[4], but I find them useful regardless of my config - you may just want to skip to the videos on packages that interest you - If you haven't yet, choosing either Helm or Ivy is huge - Personally, I'm happy with helm in Spacemacs and I was happy with ivy when I used Doom - heck, even my friend is happy with Ido - It's fun to explore more efficient ways of jumping around - the Avy package is very popular for this (check out `avy-goto-char-timer` in particular) - Also, I'll note that I've been able to find a clean 1- or 2-pager reference card for every major package I've searched for
But, truly, the jackpot for me has been org-mode. At first, I used it as just another knowledge repo, like a more efficient (yet local and text-centric) version of Evernote. But, now, I'm working through the book _Getting Things Done_ and believe that there is no better tool on the planet than Emacs and org-mode for implementing the core and majority of that system. Regardless, having a specific implementation goal has aided my learning dramatically.
Specific to org-mode: - I started with the Org-mode Compact Guide[5], which I'd study and practice during 20-30 minute sessions every other day or so - it moves fast and I was happy with my org-mode skill after only having worked through Chapter 2 - However, perhaps the best way to start learning org-mode is Worg[6] - Occasionally, I've found that the Compact Guide lacks an important command for my own workflow, so I'll usually go to the Org-mode Manual[7] itself - When learning to configure Refiling, though, I found this[8] to be the best resource - Finally, I'm a big fan of "org indent mode" - it keeps Git diffs clean when changing indentation yet displays my contents appropriately indented
This is a lot, and I'm sure your path will be different than mine, but I hope you find some nuggets in there. Best of luck!
[1] https://github.com/plexus/chemacs [2] https://sachachua.com/blog/2013/05/how-to-learn-emacs-a-hand... [3] https://www.youtube.com/playlist?list=PLPNohcoOBa5GGreLyc3nn... [4] https://www.youtube.com/watch?v=rCMh7srOqvw&list=PLhXZp00uXB... [5] https://orgmode.org/guide/ [6] https://orgmode.org/worg/ [7] https://orgmode.org/org.html [8] https://blog.aaronbieber.com/2017/03/19/organizing-notes-wit...
Plus maybe "more is less" is adequate when it comes to emacs. Too many people may create friction or waste. Let it be low and slow, it's fine, emacs has stopped sprinting, it's in a nice hike.
A lot of times I’ve noticed people arguing that some nice thing in Emacs “could be” implemented in their chosen editor. I think they underestimate the value difference between that and “has been” implemented.
I think par-edit is superb for anyone building stuff in some lisp dialect. org-mode is unbeatable and I saw quite a few stories on reddit of people getting drawn to emacs because of org-mode. Recently I picked up rust development and the rust-mode is working very well for me, much better than VSCode or the Intellij plugin.
Around university I see many lecturers using emacs too.
Google Trends certainly reports that emacs has experienced a dramatic decline in popularity since 2004.
https://trends.google.com/trends/explore?date=all&q=emacs,in...
https://trends.google.com/trends/explore?date=all&q=emacs,vi...
I agree there's a certain respect afforded to people who are adept with terminal editors, but there is a practical reason to master them: they're always there, no matter how many layers of SSH you've gone through to get where you are.
I know that that Reddit board is sort of ridiculous and the jokes about it write themselves, but I nonetheless feel that Emacs has attained a certain counter-cultural "cool"/cachet in recent years that it lacked a decade ago. In my opinion, this is a good sign for its future, all things considered. These threads are always full of comments about how vscode has surpassed it, etc., but I don't think anything can change that--Emacs will ever truly satisfy those for whom vscode is presently the superior tool, and conversely, vscode is unlikely to satisfy the Emacs user.
Like vscode, Emacs is in every sense a practical tool; it is simply that it is practical in service of different needs. It is a practical tool for someone who takes active pleasure in the cultivation of a practical tool, in the process of learning and discovery involved. Because this will never describe a majority of users, I don't think Emacs will ever capture a majority of developers or whatever, but it seems poised to continue to attract very dedicated ones who find the cultivation of a personal work environment in a ridiculously powerful 40-year-old program appealing in and of itself.