← Back to context

Comment by iLemming

15 hours ago

> I want my life to have as little maintenance as possible

I honestly can't even relate to what that even means. I'm a programmer - my everyday job is all about changing the behavior of computer systems - local, remote, cloud, embedded, etc. Requirements change, scope fluctuates, problem space evolves - grows and shrinks, accretion is unavoidable. I need to routinely move between language stacks, different data types, formats, CLI and web tools, protocols, paradigms, OSS and proprietary apps.

That means I have to constantly adapt, my control plane has to keep up with the flux. Automation is key - you must develop a mentality for that - every little annoyance can be and shall be automated. That is an endless, non-stop transformation of my workflow - continuous maintenance of my tooling. But that is not some toilsome, reactive maintenance.

Thinking that you're a programmer that doesn't want to constantly build software for your own sake is a delusion - it's like a cook that hopes to turn on the stove only in the restaurant, but won't touch a knife at home.

Emacs is the cook's home kitchen. I'd say there are two kinds of maintenance: reactive (fixing breakage, keeping up with churn) versus generative (shaping tools to match your evolving understanding). Programmers instinctively dislike the first and should be drawn to the second. Emacs is almost uniquely suited to generative maintenance because the tool and the work share the same substrate.

I get your complaint about Emacs specifically, it's a common: "too much work to set up", which usually means: "I don't want to invest before I get value", which honestly is not wise, strategic thinking. Treating Emacs as the universal tool for minimizing total maintenance burden over a career, over a lifetime is.

I think your analogy breaks down because lots of people don't program "anything and everything". I can relate to being considered quite an expert in certain programming domains among my peers, but there being all kinds of potential programming around me that I just don't find interesting at all.

Programming is also so much broader than something like cooking. It would be like saying that "you make your living manipulating matter, how could you not want to manipulate all that other matter?" to a chef. Their cooking doesn't necessarily make them want to mend clothes, remodel houses, devise new pharmaceuticals, etc.

  • Yeah, sure analogies are... well... some made up shit we use, because we have imagination. And the imagination can take you for a spin.

    I just disagree with why Emacs heavy users are often "blamed" to be obsessed with their tools "needlessly". What does it even mean to desire "as little maintenance as possible"? Okay, let's say I don't use Emacs (which is like I dunno over 90% of existing programmers in the world). What, I won't be writing bash scripts for my work? Okay, maybe I really hate Bash. Python then? Lua? Perl? What the hell are we even talking about? Of course, a programmer will do these things. Every programmer does. There's not a single case where a programmer doesn't tweak, re-tweak, personalize, improve, readjust their tooling, their scripts, browser extensions, the set of apps they use. Why is it Emacs and Vim considered a "perpetual maintenance", and I dunno, VSCode is "it just works™"? That's just not true. If I didn't use Emacs, I'd be inevitably re-inventing some workflow automation in some different way. Or what, bash-scripts ain't no software?

    • I'd like to make some points more explicit about my philosophy.

      1. Yes, everything has a maintenance cost. Some choices have less. For instance, electing to choose Todoist instead of org-mode for my todo list means I no longer have to worry about syncing, merge conflicts, or whether the mobile app I've chosen fully conforms to the spec (well, whatever attempt at creating a spec existed at the time).

      Of course, I am paying a very literal cost for convenience, and offloading maintenance to the Todoist engineers.

      2. Emacs is a cool piece of software, and I am glad others have figured out how to leverage it, in such a way they have a configuration for life. I spent a lot of time marvelling over the set up that Protesilaos had for his writing [0]. It just wasn't for me.

      3. For Emacs, if I want to use it like I wanted to, I have a couple of options. Install a package like Doom Emacs, which gives me most of what I want, with a whole lot of cruft I don't. And I have to keep that up-to-date, and worry about random community plugins breaking. Or figure out what set of plugins (after first picking a package manager) to incorporate. Or figure out the Elisp to do it myself. And my writing config would differ from my software engineering config.

      No shade on the people who want to do this, but I just... don't? I can use Zed, or VSCode, and I'm 90% of the way there. Install (or configure) the Evil mode equivalent, and I'm happy.

      4. One of the smartest engineers I worked with couldn't touch type until about 20 years into his career. The idea that everyone is ricing everything they do, is unrealistic.

      [0]: https://protesilaos.com (purely for the emacs, not anything else there)

      [1]: https://bphilip.uk/blog/2025-03-09-chase-bank-sync/

To summarize: your claim is that choosing to spend your energy on anything other than your emacs setup is a catastrophic failure in terms of ROI, a delusion, and a sort of dereliction of identity as a programmer. My rebuttal: dude, relax.

  • Are you even reading what I wrote? What's with the childish tone, someone dropped your keyboard rate when you're a kid or something? Emacs is a tool, not a religion. There are plenty of talented, accomplished programmers who can relate to what I said, and never even used Emacs. There's no "Emacs setup" for me, just like there's no "ricing my browser" - I do expect my web browser to work exactly the way I want (or at least as much I can get out of it) - that requires managing extensions, keybindings, extension settings, security options, disabling some annoying features, etc. It's an instrument, and requires the same type of "maintenance" and tweaking. Sure, it might not be as constant as for Emacs, but after all - web-browser is a targeted tool, Emacs is a universal one.

    • Whoah, whoah, whoah, you two, this is a happy post, not an angry post. Nothing to get wound up over! Part of the point is that you can both just go and do you!

      1 reply →

    • "Emacs is a tool, not a religion" yeah that's my point. You framed not investing in it as a delusion. We can all agree on the importance of tooling. I am responding to the tone of the sermon you wrote.

      6 replies →