26 ms·
The Emacsification of Software
- simoesd 5mo agoI know the article is mostly about making stand-alone software, but this type of thing is why one of the things I value most when looking workflow tools I will be using heavily is extensibility. I can try put someone's neovim plugin for a second, figure out if it's something I actually need, and if so make my own personal version that matches my mental model perfectly, adds all the dumb little bells I want, and removes all the useful features I don't personally care about. Plus I no longer need to worry nearly as much about supply chain issues. Over the years I've replaced 90% of the plugins I used when I started. Plus I get a nice outlet from any pesky NIH symptoms.
- disinterred 5mo agoI'm the same. In all honesty, when you start up emacs for the first time with a blank config, it looks terrible. But then you start building it up with plugins and adding code to support your own quirky workflows and slowly it becomes too powerful in your life to ignore. I have not been able to drop it for 13 straight years. With AI taking over the development experience, emacs and neovim have only become even better, because now you can get AI to bake your custom workflows into the config for you. Emacs/neovim should be the gold standard for all workflow tools.
- phyzix5761 5mo agoI did the same. I started with Doom Emacs and then a year later decided to start from scratch and build the computing environment I wanted. But I think the experience of Doom showed me what was possible, what I liked, and what I really had no need for. I make small config changes every day and its super fun to use my computer this way. I wish everything was configurable like Emacs.
- tptacek 5mo agoIt is! That's the post!
- finaard 5mo agoI'm currently polishing one of my packages for publication, and for that do a lot of testing in a vanilla Emacs. It's shocking how many of even (to me) absolute core functionality is actually customization I did a decade or two ago, and then forgot about.
- empath75 5mo agoI love this and I have a handful of tools like this that I built for myself (I had claude write me a TUI crossplane kcl function renderer, for example -- something whose total addressable audience in the world is probably 20 people). "Content creation for an audience of one" is really the revolutionary change that is happening right now because of AI. Disposable apps, disposable books, disposable movies, disposable music. Things that are made for a single person, used once or a handful of times and then thrown away. The entire economic model of content creation and distribution is going to explode in the next 3 or 4 years, and very few people are prepared for it.
- ElevenLathe 5mo agoI'm with you on purpose-built disposable tools, but who wants to read a disposable book, or watch a disposable movie?
- applfanboysbgon 5mo agoSetting aside the fact that good content is more enjoyable than bad content, experiences are meant to be shared. Humans are a social species, and a very large part of media consumption goes beyond the actual consumption and into sharing that experience with other people. People build communities around the media they like, and even integrate their favorites as part of their identity, wearing branded clothes or cosplay, decorating their rooms with merch, setting wallpapers, and so many other ways to signal what they enjoy to others. "Content creation for one" rather misses how humans work. Heck, not only media but even tools are subject to this -- people legitimately make emacs or vi part of their personality. > The entire economic model of content creation and distribution is going to explode in the next 3 or 4 years I think this is also inherently self-contradictory. What's the point of distributing content made for one? This gets into the same fallacy that people engage in w.r.t. "applications for one" displacing software developers. Yes, LLMs can pump out buggy software that suits one person's needs, and it doesn't need to be reliable enough to deploy at scale. It serves real utility here, because there was a gap between "the value of such software" and "what software developers are willing to work for", which meant that this software wasn't being created because there wasn't economic value in it. But then, how does one suppose software that has no economic value is going to replace all the professional software developers who were being paid to produce software that has economic value? LLMs filled a gap software developers weren't being paid to do, but given that they were not paid to do it, their jobs are not contingent on the existence of this niche. It simply doesn't follow that being able to produce content with zero economic value, whether that's applications or content for one, will cause an 'explosion' in the existing economic models.
- applfanboysbgon 5mo agoI feel as though the author really missed an opportunity here: "The Emacsulation of Software"
- shaokind 5mo agoI've absolutely engaged in making personal software [0] thanks to the age of LLMs. But to be honest, my time using Emacs didn't teach me to "build personal software". My Emacs set up was extremely brittle, and it was a nightmare when I tried to use it across Windows & macOS. My university project was written using an unholy combination of org-mode & some workflow to create a beautiful LaTeX file, and I couldn't tell you how to recompile it (if I were to try, I'd probably get an LLM to literally translate it to LaTeX). I want my life to have as little maintenance as possible, and making my own software for everything isn't always compatible with that. [0]: A rewrite of a NETFX application in Rust, simply because the 20 minute installation time irked me: https://github.com/bevan-philip/wlan-optimizer https://github.com/bevan-philip/wlan-optimizer
- deleted 5mo ago[deleted]
- TacticalCoder 5mo ago> I want my life to have as little maintenance as possible, and making my own software for everything isn't always compatible with that. So LLMs are good enough to make personal software, but not good enough to maintain them?
- MrJohz 5mo agoIt's usually easier to build something that maintain it for extended periods of time, particularly if that maintenance requires adding new features.
- virgil_disgr4ce 5mo ago> So LLMs are good enough to make personal software, but not good enough to maintain them? I mean... yes? Maintaining software means looking at issues opened on github, keeping your own list of feature requests and bug fixes, deciding if and what to fix, deciding when to fix, and if you're lucky/cursed, reviewing PRs from randos. ANY of this means diverting attention from your day job/client work/kids/???. Can some of this be theoretically automated by an LLM? Uh, maybe? But I'm not sure how much that would help.
- SoftTalker 5mo ago"Personal Software" i.e. programs that one writes for oneself, was the original vision of home computing back in the 1960s. The PC wasn't really anticipated, but the thought was that everyone would have a computer terminal at home, and write programs to do whatever was needed. It was imagined that programming would become easy enough that anyone could learn to do it. We're not there yet but with LLMs we're getting closer.
- lobf 5mo agoIt’s exactly what I use LLMs for as a non-computer professional.
- munk-a 5mo agoLLMs are great for problem exploration. Especially with the decline of Google I think we're at a point where it's less difficult to get an LLM to spit out something that'll accomplish a task sorta compared to actually finding that on the internet. But if the task is going to be repeated or modified then I think LLMs are at a permanent disadvantage to prebuilt software. Even if that prebuilt software is just someone else running an LLM and then passing the output through acceptance testing most people just don't want the headache of debugging weird edge cases and the novelty of "I'm a developer too!" wears off pretty quickly. I'm excited that the weird grey-zone of excel sheets with business critical logic is likely going to disappear as LLMs slowly make the logic driving those too complex to be comprehended and managed and those get foisted off onto actual engineering resources. It'll be painful but probably for the best... but for actual tools people need to use day-to-day I think the assurance that the tool will work has a lot more value than the AI hype has comprehended.
- TFNA 5mo ago> Especially with the decline of Google Oddly enough, Google’s LLM is the only one that has been answering my questions well on a research project these last weeks. I’m getting information from scanned text files that exist on the internet but were never adequately OCRed by other LLM companies (i.e. both OCRed at all, and moreover OCRed as the specific language in question that picks up all the diacritics). Google search results may be disappointing and polluted for years, but the company is still offering a useful product in another tab of its interface.
- j2kun 5mo ago> You want a good Markdown viewer more than you think you do. > monospaced and thus fatiguing to read. Monospaced text is fine. I don't see how people who read code (and code comments) all day care that strongly about this. Plaintext is king
- jsw97 5mo agoThere is a real use case for a viewer if you have a lot of formulas. Yes you can read the raw latex but you go cross-eyed after a while. Maybe I am a softie though.
- deleted 5mo ago[deleted]
- j2kun 5mo agoI agree, but I don't think the author of this blog post is coming from that perspective, and markdown renderers of the sort described in the post tend to do pretty poorly with math typesetting.
- tptacek 5mo agoThere's a reason we're not reading monospaced here, and a reason we do read monospaced code. But the beauty of this moment is that if you want a really good SwiftUI monospaced Markdown reader, you can have it before dinner. This is exactly what I'm talking about. You have an idiosyncratic personal preference, and it's now reasonable to expect software to shrink-wrap around that preference.
- applfanboysbgon 5mo ago> a reason we're not reading monospaced here Legacy decisions as a remnant from a time when taking more space on paper cost pages and therefore resources, remaining as a default from centuries of inertia in how text is printed?
- tptacek 5mo ago
- selectively 5mo agoNo, I don't. I don't want anything that has to do with John Gruber, ever.
- natex 5mo agoCurios. What are you responding to?
- selectively 5mo agoMarkdown is a Gruber thing.
- chotmat 5mo agobut what did Gruber do?
- swiftcoder 5mo agoHad a public argument with some other guys about whose version of markdown could use the name "standard markdown", apparently?
- selectively 5mo agoPR work for Apple
- BeetleB 5mo agoI suggest you switch to Org mode, then :-)
- aledem 5mo agoI remember how just 5 years ago the majority of speakers were saying how absolutely everyone should learn computer programming. Already many years ago VBA was built to bridge the gap between engineers and other professions. Well, the gap is completely closed now, everyone can do what has been talked about for decades: programming computers. And I suspect even markdown will become obsolete very soon, eliminating this very last remnant of what programming used to be.
- ogogmad 5mo agoMaybe it's a good idea for SWEs to consider using LLMs to train themselves into new careers -- just in case. Most other "knowledge" professions -- by which I mean teaching, programming, some engineering, and the arts -- are even further along into obsolescence. That said, you can still use the knowledge gained in a knowledge profession to convert into a more hands-on profession. We might have a bit longer before humanoid robots destroy all hands-on job opportunities as well. Once that happens, every person will be equally poor and destitute.
- RickS 5mo agoI agree, experience this, love it, etc. The "0% product hunt, 100% show and tell" bit is one of the benefits of an ecosystem with painfully high upfront entry costs. Does anyone know of an active forum of any kind (discord, reddit, phpbb, mailing list, whatever) for people who are building personal applications like this for love of the game, which takes hardline stances about desirable vs undesirable motives and behaviors, and enforces high entry/participation costs in exchange for unusually low quantities of transient grifters and self-interested status seeking by day-old accounts?
- argee 5mo agoIf you’re building for the "love of the game", aren’t you unlikely to post an artifact that is produced towards the end of your project and targeted towards a publication (e.g. hacker news)? I recall Mitchell Hashimoto was saying he used to browse GitHub as if it were a social media (which it is) - perhaps that’s your jam.
- dogleash 5mo ago> Suddenly, I realized: a good Markdown viewer was a dumb thing to waste time looking for. It’s 2026. I can just have one extruded for me. If this is the starting thought, I don't know how you wrap back around to publishing and advertising the generated code. Either you create the best possible mac markdown viewer and should share it as that, orthogonal to any statement of AI use. Or you're just adding to the noise of tools available online. Where other people should ignore your work, and go slopcode their own markdown viewer.
- tptacek 5mo agoThe post talks about this.
- rgoulter 5mo agoThe post talks about it as a good thing. "With LLMs you can just make your own". I read dogleash's comment as emphasising the bad parts of that. If everyone's just sharing their half-baked slop, it becomes harder for people to discover the good programs which are worth using, and harder for those quality programs to get social proof (or good direction).
- tuo-lei 5mo agoi've made maybe 20 personal LLM tools this year. 3 survived past the first week. not because the rest weren't useful, just wasn't willing to debug them when something broke.
- tptacek 5mo agoWhat were the three?
- ctrl4 5mo agoNot OP: - One shotted script that I schedule through cron that sends me a message when a new one piece manga chapter releases. - Also a simple script that moves my cursor one pixel every 30 seconds. Cannot disclose why I need this.
- rmnull 5mo ago>> Also a simple script that moves my cursor one pixel every 30 seconds. Cannot disclose why I need this. Hehe. Definitely not to avoid the company micro time tracking their employees.
- tuo-lei 4mo agoI built a vibe coding replay/inspection tool https://vibe-replay.com/ https://vibe-replay.com/ I built a co-work for cursor, I haven't publish that yet I also built something combined activity watch and screen pipe, that provide `what did I do` context to LLM, this one didn't end up very well, still an interesting exploration though
- alex_smart 5mo agoWhich is where the "emacsification" analogy breaks for me. The reason people who like emacs write their one-off program in emacs is that it is an extraordinarily introspectable and debuggable programming environment. There is no "code, compile, run" loop - you just write code against the live running environment. Devoid of that fast feedback loop, writing code just isn't as much fun.
- malicka 5mo agoSpeaking of which, Emacs’es markdown-mode is pretty good. :^)
- tptacek 5mo agoEmacs is an editor! God help you if you do something to my computer where when I click on a Markdown file something changes in my Emacs window setup.
- KaiShips 5mo ago[flagged]
- morpheuskafka 5mo agoThis article hints at what I feel is one of the not-yet-realized transformations that LLM coding brings: can we finally drop Electron/React Native and just have LLMs automate the work of transforming Figma/wireframes and behavior specs into truly native apps for each platform? For CRUD apps, the API spec and UI mockups -- or even a photo of how it looks on the already coded platform -- would go a long way. That's exactly the kind of well defined task work LLMs do well with. It should be possible to automate a lot of the equivalence testing too. Is there still an excuse for "maybe we'll add Android someday" or "not enough Mac/Linux users"? And is there still a justification for not building those less-used flows like password reset into the iOS app instead of throwing up random WebViews? For those apps that do have non-trivial logic on device, LLMs have shown a lot of promise at rewriting to cross-compiling-is-easy languages like Go or Rust.
- tptacek 5mo agoYes. You can do that. It works right now. It works really well. My original spicy take is: why learn SwiftUI at all at this point? It's a skill that, for most tasks, falls into the same kind of bucket as "learning Microsoft Word really, really well". I appreciate people who take the time to do that, but the outcomes are within millimeters of each other whether or not we do that. I don't think that's true of programming generally. But I think there are languages now where the rationale in specializing in them has gotten, hrm, more complicated.
- TheNightman 5mo agoI’m a SwiftUI developer at $DAY_JOB so maybe biased but while Claude can make things that look right it’s still not exactly perfect. Especially from designs. I used Claude design to mockup a monitoring app for my talos cluster and Claude code totally freestyled it. What should have been as simple as `List { Section(“title”) { … } }` got morphed into whacky DIY `VStack {}.background(.gray)` nonsense. It looks off and it’s suboptimal performance-wise. It was, I’d say, 80% of a proper SwiftUI app (which is really fantastic given it was basically a one-shot). Actually knowing SwiftUI meant it was trivial for me to just close out that remaining 20% by hand and have an actually *nice* cross platform (iOS, iPadOS, macOS) app. I’m sure I could have prompted it to get it done right but without proper knowledge on the subject I wouldnt even know what was wrong and Claude doesn’t do so hot with “that just feels wrong”. Beyond that it was quicker to do it myself, but maybe I just need to prompt better /:
- kettlez 5mo agoEnjoyable article. I've had the same feeling about native software becoming more accessible with the help of llms. However, I tried the app and opened a large-ish markdown file and immediately had scroll hangs and then the app crashed. Making a small proof of concept is easy, but performance and reliability are still hard. edit: typo
- noelwelsh 5mo agoOk, not the article I thought it was going to be. In fact it's the complete opposite of what Emacs means to me. For me, the point of Emacs is that I use one program to do everything. Why would I want a special bit of software just to view Markdown? I can view it in Emacs, and then it works with everything else I do. Developing lots of custom applications, AI assisted or not, is not replacing how I use Emacs.
- tptacek 5mo agoThe point of the article is that the whole gestalt of what you do on a computer is now one big programmable surface, and in that regard everything feels a lot more like Emacs. It's not "about" Emacs, it's more about the vibe of personalized software in 2026 to someone who does a lot of Emacs stuff.
- skydhash 5mo agoNot really the same. Emacs focus a lot on compatibility and common modules (even if there may be some different takes on those common things). So you got big systems like helm, consul, ivy, company,… and the. everyone building on top. Another thing is configuration (which also ties to the previous statement). You have to be able to split the idea of the program (what it aims to do) and your personal preferences. Emacs make that easy by having a framework for user preferences. That makes for an extendable program. The closest, but not as user friendly is unix and suckless philosophy combined. Small programs, easy to understand, configure, and extend.
- jr_isidore 5mo agoOP is trying to say Home Depot let normies do their own small repairs, and you're protesting saying "No, no, that's not how we pros do it."
- skydhash 5mo agoNormies can do their own repairs when they want and how they want. But I was just pointing out a difference in behavior, not the true way of doing.
- dang 5mo agoThis is so exactly right and I've been saying it to whoever will put up with me...(and now am embarrassed I have no link to show for it. oh well, shame is good for writing. envy too!) Software production is now so easy that everything is a .emacs file (pronounced "dot emacs" btw): meaning, each individual has their own entirely personal, endlessly customizable software cocoon. As tptacek says in the OP, it's "easier to build your own solution than to install an existing one" - or to learn an existing one. Another good analogy, not by concidence, is to Lisp in general. The classic knock against it—one I never agreed with but used to hear all the time—is that Lisp with its macros is so malleable that every programmer ends up turning it into their own private language which no one else can read. Tangential to that was Mark Tarver's 2007 piece "The Bipolar Lisp Programmer" which had much discussion over the years (https://hn.algolia.com/?query=comments%3E0%20The%20Bipolar%20Lisp%20Programmer&type=story&dateRange=all&sort=byDate&storyText=none&prefix https://hn.algolia.com/?query=comments%3E0%20The%20Bipolar%2...). He wrote about the "brilliant bipolar mind" (BBM) - I won't get into how he introduces that or whether fairly or not, but it's interesting given how "AI psychosis", in both ironic and unironic variants, is frequently mentioned these days. From Tarver's article (https://www.marktarver.com/bipolar.html https://www.marktarver.com/bipolar.html): The phrase 'throw-away design' is absolutely made for the BBM and it comes from the Lisp community. Lisp allows you to just chuck things off so easily, and it is easy to take this for granted. I saw this 10 years ago when looking for a GUI to my Lisp [...] No problem, there were 9 different offerings. The trouble was that none of the 9 were properly documented and none were bug free. Basically each person had implemented his own solution and it worked for him so that was fine. This is a BBM attitude; it works for me and I understand it. It is also the product of not needing or wanting anybody else's help to do something. Sounds pretty 2026, no? He goes on: The C/C++ approach is quite different. It's so damn hard to do anything with tweezers and glue that anything significant you do will be a real achievement. You want to document it. Also you're liable to need help in any C project of significant size; so you're liable to be social and work with others. You need to, just to get somewhere. And all that, from the point of view of an employer, is attractive. Ten people who communicate, document things properly and work together are preferable to one BBM hacking Lisp who can only be replaced by another BBM (if you can find one). --- When production is so easy, consumption becomes the bottleneck [1], and suddenly sharing is a problem. This is why the Emacs analogy is so good. A .emacs file is as personal as a fingerprint. You might copy snippets into yours, but why would you ever use another person's? (other than to get started as a noob). You just make your own. The more customized these cocoons get, the harder they are for anybody else to understand—or to want to. It isn't just that another's cocoon has too high a cognitive cost to bother learning when you can just generate you own. It's also uncomfortable, like wearing someone else's clothes. The sense of smell somehow gets involved. I would call this, maybe not AI psychosis, but AI solipsism. In software it's fascinating how configuration management (that boringest of all phrases) is becoming the hard part. How do you share and version the source? What even is the source? Is it the prompts? That's where the OP heads at the end: "share it somewhere — or, better yet, just a screenshot and the prompts you used to make it." But when I floated a couple trial balloons about whether we might use this for Show HN—i.e., don't just share the code you generated, because that's not the source anymore; instead share the prompts—we got a lot of pushback from knowledgeable people (summarized here: https://news.ycombinator.com/item?id=47213630 https://news.ycombinator.com/item?id=47213630). These dynamics can only be what's behind the pipe-bursting pressure that Github has been under. What a Github successor would look like is unclear, but as a clever friend points out, there will have to be one. Projects and startups along these lines are appearing, but we seem to be in the horseless carriage phase still. Even more importantly, what happens to teamwork? If we are all a BBM now—or rather, if we all have personal armies of BBMs, locked in a manic state, primed at all hours to generate things for us-and-only-us—how do we work together? How do cocoons communicate, interoperate? What does a team of ai solipsists look like? It sounds oxymoronic. My sense is that a lot of software teams, startups and so on, on the cutting edge of AI-driven / agentic development, are currently contending with this, not (only) philosophically but practically, e.g. how does my generated code compose with your generated code. With these frictions we presumably end up giving back some portion (how much? who can say?) of the productivity gains of generated code [2]. One would expect such effects to show up over time, as the systems being built this way grow in complexity and maintenance/development tradeoffs become things. I don't see many talking about it publicly yet though, which is a pity. No one wants to be the first to stop clapping and sit down during an obligatory standing ovation, but it's a bummer if you can't (yet) tell interesting stories about downsides and instead have to pretend that this is the first free lunch, the only downsideless upside that ever existed. It makes the discussion performative and probably slows evolution, since the experiments, ironically, are happening in silos. These are the people doing the most serious and real and advanced work with the new tools (edit: I mean in the field of software dev), so it sucks if all talk of downsides is left to the cynical/curmudgeonly contingent, who for whatever good points they may, er, generate along the way, are obviously wrong about AI having no value for software dev. It's easier to talk about AI wiping out the human race than, say, bug counts going up or productivity levelling off after a while. Mostly I just want to know what's really going on! and how people are dealing with it and how it is developing over time. Do I have to like go to meetups or something? [1] That's why a recent paper used the title "Easier to Write, Harder to Read" - https://papers.ssrn.com/sol3/papers.cfm?abstract_id=6726702 https://papers.ssrn.com/sol3/papers.cfm?abstract_id=6726702 [2] Ran across this saying the same thing, a bit more strongly, the morning after I posted the above. https://x.com/fchollet/status/2054917282015445076 https://x.com/fchollet/status/2054917282015445076. Maybe we'll get the conversation after all!
- tolerance 5mo agoI came here to recommend Marked: https://marked2app.com https://marked2app.com But...I like MDV.
- khalic 5mo agoVery cool read, kudos
- iLemming 5mo agoEhmm, weird, I can't be the only one in the room. You guys didn't know about gfm and gfm-view Emacs modes?
- TacticalCoder 5mo ago> Ehmm, weird, I can't be the only one in the room. You guys didn't know about gfm and gfm-view Emacs modes? I'm using Emacs since last century and I've got 3 000+ lines of custom Elisp code I wrote (with maybe only a few hundred lines copy/pasta'ed from other configs). I'm always using a recent Emacs compiled from source and now with LSP, org-mode, Magit, tree-sitter, ivy/avy/counsel/swiper with ripgrep (thanks burntsushi) integration etc. I had zero frigging idea what gfm and gfm-view for Emacs were. But I'll look into it now!
- iLemming 5mo agoI know, right? You'd be like "using Emacs like a boss", going with your keyboard "frrrrrrrr" (well, no, that's not Emacs, Emacs would be like "C-c C-c C-c C-c C-x 8 and only then frrrr"), managing entire k8s clusters, building it from the source using most esoteric build options, --with-fries-n-ketchup, and all. And then some jerk comes out of nowhere and tells you about fancy-pangolin-mode that's been sitting quietly in core Emacs since the Prohibition and you're like: "goddammm... I've been using it wrong, my life is meaningless..." :) We're old people. I mean, an eleven-year-old who opens Emacs becomes old in an instant. We have invented doom-scrolling. We've been going through the M-x menu way before twitter and reddit made it a thing.
- noctuid 5mo agoTerrible analogy. Emacs has always had comparably fewer major options for packages compared to other tools, there is often an obvious option based on your needs, and it has never been my experience that people decide to just roll their own versions of everything. The author has clearly never used neovim or now pi. NPM packages in general would have also been a way better example. Edit: Sure there is some small overlap here, but it's really not comparable and definitely not like the way the author describes things. User personalization in Emacs has normally been on a much smaller scale than rewriting entire packages. Configuration is generally smaller tweaks or things on top of existing packages because Emacs provides cohesive extensibility to the point that it often doesn't require "rolling your own." Most packages are already extremely configurable and tailorable. You don't magically get that sort of environment with LLMs. Emacs is much more cooperative/generalized. The scale and type of custom/personalized software we're seeing now with AI is completely different from how things have been in Emacs. I'm not saying that's a good or bad thing (I think it's both), but it's very different from Emacs and definitely more comparable to something like vim/neovim where (in part just because of the sheer popularity) you constantly have people "rolling their own" packages and a billion versions of everything. Even that is not a great analogy. This is something completely new.
- jr_isidore 5mo agoAre we reading the same article? OP is saying LLMs let normies tweak their personal workflows in the same way we emacs nerds had been doing for decades. Contrary to the old saw about it being an OS, Emacs is really just a shell but with lisp as its command language instead of unwieldy bash. Once Claude magicked an English to bash translator, raw shell has caught up to emacs in its ease of use.
- noctuid 5mo agoThe new thing where everyone just vibe codes their own versions of everything is not at all like personalizing Emacs. Specifically the idea that people generally just ignore existing versions of packages and make their own has never been the case, especially compared to other editors (even VSCode). > There are popular elisp packages lots of people use. But except for Magit, nerds are alarmingly apt to replace them with their own shinier versions (and then to show them off, transitioning to the spore-forming phase of the elisp lifecycle). Everything in Emacs is malleable. > Until now, the Achilles heel of Emacs culture has been that, except for Magit, its packages tend to be wretched user experiences. Ugly, slow, and discoverable only after inflicting years of elisp cortical injuries on yourself.
- bananamogul 5mo ago"the terminal itself, which is almost always monospaced and thus fatiguing to read" It is? Why? I read monospaced text all day long. I don't find it fatiguing in the least. In fact, I think I might prefer it to non-monospaced text.
- nemoniac 5mo agoInteresting article. When my Emacs opens a markdown file it immediately converts it into OrgMode format. I find that more readable, more navigable and more editable. Now I'll have to go and meditate about Emacsification.
- iLemming 5mo agoI know, right? Org-mode is soooo much more practical. imenu works great, sparse-trees are awesome, you can edit pretty much any part¹ in an indirect buffer and all. These days I try to consume anything that can be fit into an outline, in org-mode - hackernews², reddit³, slack⁴, jira boards and tickets⁵, wiktionary entries⁶, etc. Fun anecdote - I once needed to sort some nested items in a big yaml file. After spending three minutes trying to understand sort-regexp-fields (or some other function), I cheated - I ran org-mode, and then org-sort and then went back to yaml-mode. So stupid, yet so brilliant. Why the heck would I ever want to use "first-class IDE" or "intuitive, plebeian editor" if Emacs has anything I could possibly imagine? Right at my fingertips. ___ ¹ https://github.com/agzam/org-edit-indirect.el https://github.com/agzam/org-edit-indirect.el ² https://github.com/thanhvg/emacs-hnreader/ https://github.com/thanhvg/emacs-hnreader/ ³ https://github.com/thanhvg/emacs-reddigg https://github.com/thanhvg/emacs-reddigg ⁴ https://github.com/agzam/slacko.el https://github.com/agzam/slacko.el ⁵ https://github.com/agzam/go-jira.el https://github.com/agzam/go-jira.el ⁶ https://github.com/agzam/wiktionary-bro.el https://github.com/agzam/wiktionary-bro.el
- frumiousirc 5mo ago> When my Emacs opens a markdown file it immediately converts it into OrgMode format. I want that. Can you give some details? A search finds modeverv/markdown-to-org which looks 80% there but activates based on a yank or converting an already loaded markdown buffer. Perhaps it can be made to apply on opening a .md file.
- dawnakle 5mo ago[dead]
- codazoda 5mo agoLots of interesting takes that I think I disagree with here, although I mostly write Markdown rather than read it: > they’re hamstrung by the terminal itself, which is almost always monospaced and thus fatiguing to read. I recently re-built Blue, a minimalist text editor inspired by the Turbo Pascal and Turbo Basic editors of the late 1990's. It uses a fixed width font, because I prefer it. https://github.com/codazoda/blue https://github.com/codazoda/blue
- deleted 5mo ago[deleted]
- killerstorm 5mo agoUnfortunately ~all software stacks in use now lack stability. They are all optimized for commercial software shops where weekly update of dependencies is just the routine.
- syngrog66 5mo agowhoosh goes the point of Markdown over some youngster's heads
- tptacek 5mo agoSoftware that today is overwhelmingly prepackaged and usually professional, which I think at this point the nerds should reclaim: * Podcast apps * Music listening apps * Feed readers * Bluesky clients * Note-taking apps * Desktop bookmarking/read-later apps * Chat and instant messaging * Time trackers * Recipe managers These are all things that you can get better-than-replacement-grade results from Claude on --- not necessarily the best, not necessarily the most globally competitive, but certainly an application more closely tailored to exactly what you want it to do for your own idiosyncratic work style. Music.app is a miserable experience, and I can just tell as I use it that it's miserable trying to serve me. But Apple long ago factored all the meaningful bits out of Music.app into MusicKit. Why am I still using Music.app? MusicKit is the real product now. This is new.
- bo1024 5mo agoThe common denominator: the data needs to be owned by you, or at least made accessible. Companies love to create walled gardens where they own the content and control how you access it, making this kind of personalized interface impossible. Hopefully we can push back more now.
- tptacek 5mo agoI mean, hold up, if that thought lights you up I'm happy, but I don't actually think that's the common denominator. I used Things.app to track projects for a long time and ultimately fell out of love with it. Things.app didn't own my data; it's a pure UI app. But now it occurs to me: I know precisely how I work, I know what patterns are valuable to me, I know when and how I need to remind myself of things. I don't know why I haven't already started building my Things.app replacement. But I'd guess I have it to a place where I'm happy by this time Saturday. Honestly, it's harder for me to think of daily-driver apps where this wouldn't be the case. I guess vector graphics editing? I'm not going to vibe up a vector editor. But I'll bet all the money in my pocket that 5 years from now, the real value in vector graphics tools will be their API/SDK, not the packaged application experience.
- 5mo ago
- melonpan7 5mo agoThe barrier to entry for writing personalized software is lower, but you still need expertise for instruction and maintenance. I don’t think we’re at the point where any random stranger on the street can get Claude to make a perfect Electron app for their use case.
- __MatrixMan__ 5mo agoIf you were building it for yourself would you ever chose Electron?
- melonpan7 5mo agoMerely an example but I would not, one of my gripes with LLMs is the training on general sentiment and trends, so they tend to recommend whatever is popular.
- tptacek 5mo agoThis is an article about nerds writing nerd software.
- monk_grilla 5mo agoI can’t be the only one for whom `vim README.md` is perfectly good. I’ve never considered the monospaced font a limitation, I prefer it. Coloured rendering works great and is all the visual aid I need to parse quickly. I can see a table of contents being useful though. Perhaps if `:Toc` doesn’t exist yet, it should.
- QuercusMax 5mo agomarkdown tables are the only thing that's really rough to read, IMO
- ngriffiths 5mo agoWow, this really changes how I think about working with software and with LLMs. Sharing ideas and amateur remixing and setting up something weird for you and your friends is so much easier now. Things you had to have lots of time and expertise to do before are just widely accessible now.
- Pelllegrini 5mo agoI just use Silverbulletmd...
- noosphr 5mo agoIt is rather funny that the article talks about markdown when everyone who uses Emacs uses org mode instead. My .emacs file is init.el which is actually init.org, which isn't an Emacs file but a literate program that's half a guix installation script and half a regular .emacs file. Also kill all markdown. Replace it with xml or better yet SXML.
- tom_ 5mo agoI've always found it easier to collaborate using markdown. It's much more popular than org-mode! And you can get org to export text as markdown, so interop isn't necessarily even all that difficult. And as per the general theme of the post anyway: whatever. Because you can just work around it, whatever it is, by cobbling together some code, one way or another.
- rgoulter 5mo ago> What matters are the ideas, the observation that “yeah, you can do that, and it’ll work well”. > > For the kinds of software I’m talking about, you want the prompts more than you want the source code. Right. In a broad sense, programming is about managing complexity/information. Constructing interfaces/abstractions in order to choose which details are useful for an interface (& which can be ignored). The 'magical' parts of LLMs is being able to get useful output from unstructured/messy inputs. It's kindof surprising that this has an impact on programming: it changes a lot ("write me an app that does this" becomes feasible for 'small' things), but in some sense, the fundamental problems remain.
- ketan_around 5mo agoEmacs was the first vibe-coding.
- rirze 5mo agoIt was also the most prominent ecosystem for "software-for-one". Lots of custom-bespoke, "it works for me" packages that were only created for personal use.
- hona_mind 5mo ago[dead]
- bandrami 5mo agoThis anecdote may be the key to the productivity mystery of LLMs: the output is appearing in the form of software that wasn't ever economical to make before so kind of by definition won't appear in productivity metrics. Though at least in my professional life since we have a configuration control protocol I probably will continue not seeing any impact from AI (for better or worse).
- tombert 5mo agoI've done some similar stuff. I wanted to reference some TLA+ community stuff. I was initially just copy-pasting the specs into mine, and that worked well enough, but it was a little tedious and I was kind of afraid I might accidentally forget to give attribution to someone if I used their spec. So I got Claude to build a TLA+ package manager for me. It's just a basic thing in Rust that allows me to plop a deps.json file into my TLA+ folder, and put a git repo url and commit hash, and then I use tree-sitter-tlaplus [1] to rename the modules to have a basic namespace to avoid collisions. It took about 30 minutes of fighting with Claude, but then it worked fine. As AI gets better and better and cheaper and cheaper, I suspect it will be easy to have tons of custom apps for everything. It's a brave new world. [1] https://github.com/tlaplus-community/tree-sitter-tlaplus https://github.com/tlaplus-community/tree-sitter-tlaplus
- andrew_kwak 5mo ago[flagged]
- deleted 5mo ago[deleted]
- 152334H 5mo ago> For the kinds of software I’m talking about, you want the prompts more than you want the source code. Please do not do this. Per OurWorldInData, >50% of the world lives below $10/day in 2026. A $200/mth AI subscription costs ~66% of that. Generation costs still exceed distribution costs by a wide margin. Uploading costs you nothing, and it can help the poor.
- 0xpgm 5mo ago> Uploading costs you nothing, and it can help the poor. Could you expound more on this? Are you suggesting that less energy use in data centers would help the world's poor?
- jen20 5mo agoI read the suggestion as being that the world’s poor aren’t paying for AI tokens (or subscriptions) to generate software from prompts, and that sharing the _output_ is more beneficial to people. The reduction in energy waste is secondary, and benefits _everyone_.
- jzer0cool 5mo agoAny good md viewer and open to customize some formatting to pdf?
- internet_points 5mo agoemacs + pandoc
- lxgr 5mo agoMarkdown syntax highlighting is nice, but at this point I’d be very happy if software could just consistently open .md files as plain text. I have my Obsidian vault synced to Google Drive, and it’s completely impossible to just look at the files in it via the web interface. iOS support is also more than lacking.
- LAC-Tech 5mo agoI know this is a bit beside the point of the article, but I also got sick of reading markdown on a terminal... So I asked my agent to write typst, ran "typst watch", and now I can look at a nice pdf file. it even auto-refreshes when the clanker changes it.
- 001110101111 5mo agoPrescriptions include lisinopril 20 mg, amlodipine 2.5 mg, metformin 500 mg, and aspirin 81 mg.
- theletterf 5mo agoHad somewhat related thoughts on this here: https://news.ycombinator.com/item?id=48035796 https://news.ycombinator.com/item?id=48035796 (Most vibe-coded tools are not for you)
- hiq 5mo agoI was looking for a good markdown / file editor on Android available the Play Store on a device where I can't install F-Droid / arbitrary apks, as I had been using https://github.com/gsantner/markor https://github.com/gsantner/markor which is not available there. My conclusion was that there's basically none, to the point that it looks like the best solution would be for me to publish a version of it there, just so that I have access to it.
- LadislavSopko 5mo ago[flagged]
- t_mahmood 5mo agoYour Emacs (or my VIM) config was simple text file, that you can open in a simple text editor, and customize it as needed, and you know where is what. My VIM config is 20 year old. A year or 2 ago, I just dumped the manual package management, and started using a plugin manager. There are no gatekeepers, no dependencies! This, require you to have pay $20-$200 to a 3rd party corporation, or have a kind of beefy GPU (to run locally), run some instructions on text file, keep editing till it might does what you intend it to. You are knowingly adding a dependency, which probably will become a hard dependency when everything goes jumbled up for human reviews, either on a beefy GPU or sending your data to a shareholder pleasing corporation. Let's distinguish, how these are not the same, and the real price we pay
- tptacek 5mo agoYou mean no gatekeepers besides whatever the people who build the UI applications decide the limits should be.
- teddyh 5mo agoEmacs has this property because it uses Lisp. The general tendency for programmers to start writing everything themselves was noted, for Lisp, but was named “The Lisp Curse”¹. It is a curse because programmers stop collaborating. Everyone becomes their own wizard in their own tower, and overall progress stops, and a dark age sets in. 1. <https://www.winestockwebdesign.com/Essays/Lisp_Curse.html#main https://www.winestockwebdesign.com/Essays/Lisp_Curse.html#ma...>
- Antibabelic 5mo agoIs you actually look at the Lisp ecosystem as it exists today (even just Emacs by itself) you'll quickly realize that none of this is true in practice. Other people have pointed this out.[0] [0] https://applied-langua.ge/posts/lisp-curse-redemption-arc.html https://applied-langua.ge/posts/lisp-curse-redemption-arc.ht...
- vinceguidry 5mo agoThe curse actually feels more relevant to me to ruby rather than lisp.
- Joker_vD 5mo agoAnd if then you compare it to e.g. Python (or JS) ecosystem, well. It's all very relative, isn't it?
- Antibabelic 5mo agoIt's not clear to me what you mean, can you elaborate?
- xigoi 4mo agoPython and JS have more libraries because they are more popular, not because their users are somehow more inclined to collaborate.
- musebox35 5mo agoI wonder what will be the effect of this on open source software. I do not mean the technical aspects, easy of coding, documenting, explosion of PRs, .. Social aspects scare me a bit more. If everyone is building their own version, will people stick around to contribute to the same project for years. I guess the dedicated ones will do so maybe it is a good thing, a filtering out of the disinterested.
- rbanffy 5mo agoThe author highlights an interesting point. There are a couple variables in action: A- The difficulty to publish the tool B- The difficulty to create the tool C- The usefulness of the tool to others D- The social reward for publishing the tool E- The negative incentive of adding a dependency Difficulty to find a canned solution goes up with A (because someone needs to create it) and B (someone needs to figure out how to publish it), but, the more useful it is to the community (C), the easier it gets to find it, because people will tell you. If A and B are substantially different, if A is much higher than B, people will tend to write their own and forget about it. If B is lower, there will be fewer solutions to your problem. If A and B are low, and the social reward (C) for A is higher than the price of depending on something else (E), you'll have a leftpad situation. A lot of NPM is made of packages with high C and D and low E. In the case of Emacs Lisp, A used to be high, but now is low, B (once you climb the learning curve) is low, C, D, and E aren't high either way. This can lead to a scenario where you build the tool before you even look if there is a tool that does it (unlike it is with VSCode, and with Eclipse before it - both have a high B). I see a thesis someone younger than me will want to bring out to this world.
- lacymorrow 5mo ago[flagged]
- drewg123 5mo agoThis really resonates with me. The ability to quickly writing one off, personalized apps really seems to be the strong suite of GenAI. A month or so ago, I had claude write a visualizer for some data. There is an existing python viewer, but it bogs down & is painfully slow at the scale I need. So I asked Claude to port it to a compiled language. After 2 hours of iterating, I had the tool that I wanted. Note that its throwaway, dumpster fire code. But for a one-off tool like that, its fine.
- beshrkayali 5mo ago> But they’re hamstrung by the terminal itself, which is almost always monospaced and thus fatiguing to read. Not related to the main point of the article, but I find reading long form contnet in a mono font much easier.
- ezekiel68 5mo agoYeah, that quote was definitely cringe for me. But I'm glad they made something that made them happy.
- flossly 5mo agoI used Claude last week to build a tool for builds/deploys/etc. I had done this before with a bunch of scripts (sed+awk+ducktape+aws-cli+terraform+jq+gosh...). But now it is a Kotlin-written, GraalVM-to-native, super fast running, proper software project. Took me 2 days to complete, did not even spend the whole day on it (more like a bit here'n'there while doing other work. Claude's a game changer for these small greenfield projects (probably for more types of prjects, but this is a really sweet spot).
- cestith 5mo agoThere’s an old saying in the software industry. When you’re a product manager or business analyst, the hard part is building the application. When you’re a developer, the hard part is knowing the customer’s needs. I think what we’re seeing quite a bit lately is developers are stepping back a bit from the development themselves because the AI does much of that part. So they’re managing the products for themselves, even when they are the only customer. The best people at doing this are going to be people who really understand what needs to be done, because that’s what the product manager/product owner/business analyst/customer liaison type of role has always been.
- mcookly 5mo agoI've often wondered when Emacs would become the term used to describe hyper-personalized software. While it is true that LLMs give access to software that fits like a glove, it seems to me that there is still a glaring difference -- at least when one looks at GNU Emacs: a shared software tradition. To my knowledge [1], LLMs don't provide that. Maybe it's best to call this movement in LLM-generated software "software individualism" rather than "personal software"? [1] I don't know much as I haven't vibecoded before, and my .emacs is painfully crafted by hand.
- skybrian 4mo agoFor personal software, I'm using Linux VM's in the cloud that host personal websites. Using exe.dev has convinced me that's the way. For example, in this particular case, a native app limits you to viewing Markdown on your laptop. If you work in a remote Linux VM, you can render to HTML and view Markdown on any device that has a web browser. It's authenticated by default, making public websites is easy too.
- traderj0e 4mo agoI still don't like Markdown. Basic things like newlines and bullets are tricky. Even the LLMs get it wrong often. It's hard to read without a viewer. The default viewers usually render it with tons of whitespace for no reason. Will use a .txt unless there's a very clear reason not to.
- hyperpallium2 4mo agoWhat does clocks mean here? A new usage? “Emacsification” clocks that everything now works this way, not just baroque text editors.
- zrail 4mo agoIt's not a new usage by any means. Like almost all slang it originated with Black drag and LGBT+ subcultures and only semi-recently (within the last 10-15 years maybe?) broke containment in the US. As a verb, "to clock" means something like "to notice" or maybe in this case "to highlight, with specificity".
- tempaccountabgd 4mo ago[dead]
- solarity_studio 4mo agoGreat article, and super cool app. You've inspired my to build a side project I've been toying with for a while. My own Obsidian. Obsidian is great, BUT I want some specific features + stuff to make my own. I already have the .md files on my personal server and I already have local LLMs that perform actions on them for sorting, tagging etc. I already build custom web apps to view these markdown files (like my own janky database). Obsidian as the main client for editing them is fine, but I really want to make my own custom to address a few specific needs. AND now? I'm going to fork your app + customize it to my needs (if you're okay with this of course). I'm excited about this, so thanks a lot for pushing me to take the plunge!
- brunellus 4mo agoHello! I recently released a paid macOS Markdown reader for this reason. You can learn more here: https://terramar.dev/products/filo/ https://terramar.dev/products/filo/ (Please excuse my self-promotion.)
- graceful6800 4mo agoI think there's something important in the fact that we've spent the last ten years or so making software as locked-down, unfriendly, unusable, and outright user hostile as possible. And now suddenly everyone has the ability to make software. Why should I use your software with oceans of padding and unlabeled hieroglyphic icons from which you've removed 99% of features? I can just do it myself now. Ostensibly, yes, the software is "worse" in some technical sense, but better in the ways that actually matter: it can be used it can do a job. It no longer exists as a stage for the author's minimalism fetish or as a vehicle for some pointless middle-manager's promotion package. Software is a tool, it's supposed to be useful and do tasks to help the user. We've spent so much time, money, and brainpower this past decade making software as unusable and unhelpful as possible. Is it any wonder that when computer literacy has hit a huge low that people immediately and with gusto jump onto the "make your own software the way you always wanted it to be" machine? Whether good or bad, this is a pretty natural reaction to the previously-modern state of software. The industry decided to only publish software that can only be used One Correct Way, and physically prevented any use other than the single happy path by stripping out any feature that wasn't absolutely critical. If a user wanted something other than the author's personalized emacs file, fuck them, that's their problem. We decided to only publish UIs that cannot be understood by humans and HOW DARE anyone suggest ultra-minimalist UIs that are 85% whitespace are bad, what are you a Luddite?! And the huge crew of self-entitled "well just fork it if you hate it so much" crew. We did this to ourselves. We made software exclusive, elitist, and are shocked when the masses go "okay, I'll make my own"