paint-brush
To Emacs or Not to Emacsby@joshuablais
New Story

To Emacs or Not to Emacs

by Joshua BlaisMarch 24th, 2025
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

If you are a programmer, writer, creative, business owner, or just someone with ADHD, the question of whether to emacs or not to emacs is worth considering.

People Mentioned

Mention Thumbnail

Company Mentioned

Mention Thumbnail
featured image - To Emacs or Not to Emacs
Joshua Blais HackerNoon profile picture

I used to laugh at the meme that emacs could be used for everything and thought it crazy that one would "live in emacs" (that is a post from almost two years ago where I didn't even really believe it myself).


But, alas, if one allows himself to be swept away and gets far enough down the rabbit hole, he comes to find that a computer could have been a fully integrated environment within which the user's mind and machine were melded. While the advent of "brain-computer interfaces" is dinner table conversation (at conspiracy theorist households like my own) - there have, since the year 1976, been emacs - the closest thing to this aspirational place of man/machine integration that has ever existed.


Do I for one second believe that this is the way everyone should use a computer?


No.


I don't have delusions of Emacs-grandeur.


The significant investment it requires to get to the point where one could rely entirely on emacs as his computing environment is overwhelming for most. Does the person who bought a MacBook Pro to watch Netflix and "do email" need Emacs' integrated text interface? Probably not - it would be like using a hole hawg (shout out to Neal Stephenson for the analogy) for a 1/16th-inch screw.


But, if you are a programmer, writer, creative, business owner, or just someone with ADHD, the question of whether to emacs or not to emacs becomes one worth considering.


Do you spend hours manipulating text in any form? Do you want to automate workflows, creating tailored tools that are perfect just for you? Then emacs may be what you've always been looking for but never knew existed.


Is it worthwhile? Is emacs the best way to use a computer?


Well, I am penning this article after all, so there might be a bit of bias on my behalf. But I would say, unequivocally, yes - The investment has paid me back in droves, and will continue to do so for the rest of my natural computing life.


As an aside, in the book, Stephenson discusses unix, but he does name-drop emacs as his editor de jour and has this to say about it:

I use emacs, which might be thought of as a thermonuclear word processor. It was created by Richard Stallman; enough said. It is written in Lisp, which is the only computer language that is beautiful. It is colossal, and yet it only edits straight ASCII text files, which is to say, no fonts, no boldface, no underlining. In other words, the engineer-hours that, in the case of Microsoft Word, were devoted to features like mail merge, and the ability to embed feature-length motion pictures in corporate memoranda, were, in the case of emacs, focused with maniacal intensity on the deceptively simple-seeming problem of editing text. If you are a professional writer–i.e., if someone else is getting paid to worry about how your words are formatted and printed–emacs outshines all other editing software in approximately the same way that the noonday sun does the stars. It is not just bigger and brighter; it simply makes everything else vanish.


Unfathomably based.

Why Would You Want to Do This?

Why would you want one tool to master them all?


Why would you want to do everything in one place? And, why would you want to use almost 50-year-old software to do it?


While there are several arguments for using emacs (including dunking on normies) - the real arguments generally revolve around the solution to the problem of context switching, the deep integration of the tooling with each and every part of the overarching environment, and the customizability, programmability, and overall personalization that emacs affords the end user (leaps and bounds above anything available today, yes even neovim with lua support).


So, while I will refrain from "dunking on normies" it has really come down to one word - flow.


In one sentence? Context switching is extremely expensive for a knowledge worker.


In one very long-winded paragraph?


Neurological studies have recently stated that the cost of context switching and multitasking is something like 60% of our time in daily work. This is massive - it takes 23 minutes to get back on task after losing focus. One study even went so far as to say "context switching is the main productivity killer for developers." And, while I will be the first to tell you that productivity can very quickly devolve into procrastination, even a 20% boost in an 8-hour day is nothing to sneeze at. It is blatantly clear that if we want to get more done, we have to guard our focused time as if it were gold - emacs has become that guardrail more and more.


Because of the philosophy of everything being accessible from one interface, there is far less distraction than if I were back and forth among 12 different apps and tools. The environment itself has become a place of ultimate productivity.


While I say flow, what I actually mean is harmony integration, dare I say oneness with the environment. Emacs is the only thing in town that allows you an ultimate "unified cognitive model" for interacting with text. And, if you know anything about computers, everything is text.

While Donald Trump may say "Wow - everything's computer", the computer says "Everything's text."


This cannot be overstated - when we simplify everything to text in a computing environment, we actually empower it to the highest possible level. In doing so, everything becomes searchable, reproducible, version-controlled, and infinitely malleable. Text can then be completely crafted and molded in whatever way we say fit. By keeping the text as text and not abstracting it away in some proprietary garbage way, we are empowered as the user.

Everything Everywhere All At Once

When you go to write an email, you have to perform the following: open your email client, click "compose message", find the contact you want to email, write the email, proofread it, and then send it. If you were doing something else beforehand, the flow state that you had potentially been in is all but gone, and now, it will take you some time to ramp up again to that same focused place.


Instead, you could have captured a "TODO" in your inbox.org file in about 3 seconds and continued what you were doing until such a time that writing the email was pertinent. You then return to what you were doing without a single context switch, continuing on in that juicy flow state.


When you go to write said email, you will do so in emacs' MU4E mode, taking that todo and (perhaps the associated contact) write the email, send it, and even include the work that you were not interrupted in doing. Emails are text, so you get all the powerful editor tools (autocomplete, spellcheck, snippets, etc.) in house, and write that email in likely half the time were you to have done so in Office365/Thunderbird/Gmail/whatever-people-use-these-days.


Now, if this didn't light up your eyes a little bit at the possibilities, emacs may not be for you. But, if you grasp the difference here, now know that you can do this across all workflows, in all cases, and across your entire machine. Emacs becomes your operating system in which you do everything (except heavy image/video workflow or browsing the modern web.)


What this means, too, is that there are no "separate" key binds or UIs to learn; you have everything contained in one place that is self-documenting, accessible, and continually iterable which you make into whatever you want.

Your Tool Is Your Own

The fact that VS Code is so widely adopted because one can get "up and running" quickly makes sense. But, if you want VS Code to be your own, I wish you all of the luck in the world.


Emacs is fully open source & free (as in beer, and as in freedom) software that you can craft to your every need. The tool gets out of your way, and also becomes what you need it to become - it becomes an extension of the mind of the user rather than a box within which the user must operate.

First Principles

"But emacs is OLD"


So is your grandfather, you don't treat him any differently do you? He could still whoop your ass if you got out of line, couldn't he?

Emacs was built at a time when we respected computing first principles. Emacs isn't some arbitrary system, in which you do things for no reason. No - you come to find that everything in emacs (with the exception of playing chess or Tetris) has a reason for being the way that it is.


I thought, for example, I could build a "better org-mode" - I would have been battling with some of the greatest minds in computing to do so. Do I have that much faith in myself? I don't think I have enough faith in myself to remember to turn the dishwasher on at night.


Emacs is also not "against the UNIX principle" as so many people leaped to claim in my video about coming back to the Church of Emacs. Emacs actually extends unix tooling far beyond what would be possible with bash scripting alone. You have a language (elisp) that you can call Unix tools.


Your editor is now completely programmatic - you can make it do whatever you need it to, and more.

A Lifetime Computer

My Current Computing Environment Entirely Contained in Emacs

As I said in my video, to see the configuration of someone who has been using emacs for 30 years (and there are many of them on r/emacs) is a glimpse into a lifetime of computing. That lisp function that does that esoteric little thing? That's a man's mind. Emacs is a lifetime editor in a way that no other could possibly be - because it grows with you, pushing the boundaries at every major update version, and allows one to live a life of plain text that is a dream.

My Current Computing Environment Is Entirely Contained in Emacs

Email - Mu4e

Development - treemacs (sidebar), vterm (integrated terminal), LSPs/major modes for my languages, restclient.el

Version control - magit

Docker - docker.el

Databases - sql-mode and pgmacs

AI integration - gptel and aider

Writing - org-mode, with occasional exports to markdown/html/latex/pdf

Knowledgebase - org-roam

Blogging - org-mode export to hugo

Scheduling and TODOs - org-mode

Calendar - calwf and org-gcal

RSS - elfeed

IRC - ERC

Music and media - EMMS

Accounting - ledger-mode

Light Browsing - EWW

File management - Dired and Dirvish

Reading - calibredb, nov.el, pdf-tools, org-noter

The End of the 'App'

You will note that I have not once referred to emacs as an "app", and the reason for that is because that would be a massive understatement of what emacs is.


Emacs has essentially become my entire computer. A place where I can do all things text and intellectual in one place. If I cannot do a task in emacs, I have become "that guy" - looking for the solution of how I can integrate a workflow, asking Claude to help me design custom lisp functions that allow me to use emacs in that 1% more that I do every day. If I can't do it in emacs, it probably involves heavy photo/video, browsing the modern web, or 3D rendering. All other workflows are completely fair game and likely have already been included in my ever-growing config.org (tangled to config.el).


The only fair use of "app" would be "Life App" - but more akin to Life OS.

On the Timesink Argument

Those that do not want to sharpen the axe should not fell the tree.


In our instant gratification culture, learning things that take time to learn is taboo. I have seen the argument that emacs is a massive time sink, one which could never possibly be re-cooped. But - how much time do you spend moving text around a screen? How much time do you spend frustrated by how your computer doesn't do what you want it to? How much time have you spent looking for conversion tooling, or "how to do X in Word/excel/Gmail, etc."


The funny thing has been that the argument often comes from the vim/neovim side of the editor war - but vim is just a text editor. Emacs literally runs Vim if you want it to. Vim users have to learn all the other tooling associated with a CLI/TUI workflow, which is just about the same investment as learning emacs!


Not only this - emacs doesn't just return your time in spades, it allows you complete independence. While I have mulled over leaving the Linux desktop for the shiny walled garden of Apple, emacs would have allowed this in that it has become my actual computing environment. I don't really care so much about the OS anymore (just that it is unix based). I can go wherever the hardware is best - but I will hold off on the iCope and await AMD's crazy integrated chips because that sounds like exciting times!

Conclusion

While I don't recommend losing yourself over your tooling, emacs is different if you are in a similar position to me. If you care about your personal autonomy and freedom, your ability to craft a system to your every need (and have it grow with you as you learn and find new paradigms), and the power of overcoming the productivity shortfalls of modern software, emacs is the one. It will continue to be the one for me as I go forward in this journey, it will be with me when I write that next book, build that next company, or just simply dump what's on my mind into a journal.


Emacs was born in a time that cared about design, about first principles, and about longevity. As such, nothing has come close to emacs in 50 years, and I would be willing to bet nothing will in the next 50 years. It is not "trendy" or "hype" as the kids say - it is an embodiment of how humans think, about how we can augment that thinking with software, and the relevance of the guiding principles of emacs are timeless.

As always, God bless, and until next time.


If you enjoyed this post, consider supporting my work by Buying me a Coffee, Checking out my book, or sending me an email to tell me what you think.