摘要:LLM 正在改变软件的生产逻辑:过去用户只能适应通用产品,未来每个人都可能拥有只服务于自己工作流的小软件。所谓“软件的 Emacs 化”,本质上不是大家都去学 Emacs,而是整个计算环境重新变成可被个人持续改造的表面。

软件行业过去二十年的主线,是把用户关进越来越精致的盒子里。
你想记笔记,有 Notion、Obsidian、Evernote;想听播客,有 Apple Podcasts、Pocket Casts;想读 RSS,有 Feedly、Readwise;想管理任务,有 Things、Todoist;想写文章,有各式各样的 Markdown 编辑器。每一个工具都号称理解用户,但真正使用时,我们很快会发现,自己只是在适应别人的产品经理、别人的交互逻辑、别人的商业模式。
最近 Hacker News 上一篇关于“The Emacsification of Software”的讨论之所以引发共鸣,是因为它说出了一个正在发生的变化:LLM 正在让软件重新回到个人手里。
过去只有极客才能写脚本、改配置、拼工具链;现在,一个普通用户只要能清楚描述自己的需求,就可以让 AI 帮他做一个足够好、足够贴身、甚至只服务于自己的小软件。HN 讨论里,tptacek 直接列举了播客应用、音乐应用、RSS 阅读器、Bluesky 客户端、笔记应用、稍后读、聊天工具、时间追踪器、菜谱管理器等一批“本来被商业产品垄断、现在应该被重新夺回”的应用类型。
“软件的 Emacs 化”到底是什么意思?
所谓“软件的 Emacs 化”,并不是说大家都要去用 Emacs,也不是说未来所有人都要学习 Lisp。
Emacs 的核心精神,是一个软件不只是工具,而是一个可以持续改造的个人计算环境。GNU Emacs 长期以“可扩展、可定制、自文档化”的编辑器著称,它的行为可以通过 Emacs Lisp 几乎无限修改;Guile 传统中也有一个类似理想:把 Emacs 式的可扩展体验带到更多 GNU 程序中。
但过去,这种自由只属于少数人。你要会写脚本,要理解配置文件,要懂 API,要能调试依赖冲突,还要有足够耐心忍受各种莫名其妙的错误。大多数用户并不是不想定制,而是定制成本太高。
于是现代软件逐渐变成一种“平均数产品”:它试图满足最大公约数,结果是谁都能用,但谁都用得不完全舒服。
LLM 改变的正是这个成本结构。
从“忍耐通用产品”到“为自己生成工具”
过去,为了一个非常个人化的需求写软件,通常是不划算的。
比如,你想要一个只按自己习惯排序的播客客户端;一个只服务于你工作流的 Markdown 阅读器;一个把本地文件、微信收藏、网页摘录、日程提醒合在一起的轻量知识库;一个只给你自己用的发票整理工具。商业公司不会为你一个人开发,外包程序员嫌需求太碎,自己写又太费劲。于是你只能忍耐。
现在不一样了。LLM 让“描述需求”和“生成代码”之间的距离被压缩了。它不一定能写出工业级系统,但足以写出大量个人级、小团队级、一次性、半自动化的软件。
Nelson Elhage 在 2025 年记录过一个典型案例:他用 Claude 把一个 Emacs 包中性能很慢的逻辑迁移到 Rust,一次提示中,模型阅读了约 1000 行 Emacs Lisp,定位出约 200 行关键逻辑,设计 JSON 数据边界,并生成约 150 行 Rust 代码;后续再生成 Emacs 侧适配代码,整个项目一个下午完成。
这类案例真正重要的地方,不是“AI 又能写代码了”,而是它把软件开发从“项目”重新拉回了“手艺”。
过去写软件意味着立项、架构、工程化、部署、维护、文档、协作。现在,越来越多软件会变成一种日常修补:不满意,就让 AI 改一下;流程麻烦,就让 AI 写个脚本;某个界面碍眼,就让 AI 做一个替代前端;某个商业应用太臃肿,就让 AI 生成一个只保留核心功能的个人版本。
真正被改造的,不是某个 App,而是整个计算表面
这就是“Emacs 化”的本质:不是一个超级应用包办一切,而是整个计算环境变成一块可编程表面。
HN 讨论中有人质疑,这和真正的 Emacs 精神不同,因为 Emacs 是“一个程序做所有事”;tptacek 的回应反而更关键:重点不是 Emacs 本身,而是 2026 年的电脑使用体验正在变得像 Emacs——整个系统都可以围绕个人偏好被重新塑形。
这个变化会首先冲击一类软件:高度个人化、但技术门槛并不高的工具。
比如笔记软件。很多人真正需要的不是一个庞大的知识管理系统,而是一个符合自己大脑习惯的输入、链接、检索、导出方式。有人喜欢本地 Markdown,有人喜欢表格,有人喜欢卡片,有人喜欢时间线,有人希望所有笔记自动变成公众号草稿,有人希望每天早上自动把昨天的会议、邮件、浏览记录整理成一页摘要。过去这些需求太分散,无法形成标准产品;现在,LLM 可以让每个人都拥有自己的“半成品系统”。
再比如阅读器。商业阅读器总是在推荐、订阅、同步、社交、会员体系上做文章,但很多深度用户只想要一个简单东西:抓取网页,清理正文,保存本地,按主题归档,生成摘要,必要时变成文章素材。这个需求并不复杂,但它高度个人化。LLM 生成的小工具未必优雅,却可能比商业软件更贴手。

SaaS 的一部分护城河,正在融化
这对 SaaS 行业是一个重要信号。
过去 SaaS 的护城河之一,是用户没有能力自己做工具,只能购买通用产品。未来,大量边缘功能、轻量工作流、个人效率工具,都可能被 AI 生成的软件吞掉。真正有价值的 SaaS 会越来越集中在三类能力上:
- 掌握关键数据和业务网络;
- 具备复杂协作、权限、合规与审计能力;
- 能沉淀行业流程,而不只是提供一个界面。
换句话说,软件公司不能再只卖“一个工具”。如果你的产品只是一个界面加几个 CRUD 功能,用户迟早会问:我为什么不能让 AI 给我做一个更适合自己的?
HN 讨论中也提到,当用户知道某个软件只是某次人与 LLM 对话的产物时,他会自然产生一种想法:既然如此,我为什么不直接和 LLM 对话,生成一个更适合我的版本?
但“每个人都有自己的软件”也会带来新的混乱
当然,这个趋势并不只有浪漫的一面。
第一个问题是维护。个人软件可以很快生成,但不代表容易长期维护。今天跑得好,明天 API 改了、依赖升级了、系统权限变了,就可能崩掉。很多 AI 生成的小工具,会像桌面上的临时文件一样越来越多,最后变成没人敢碰的数字垃圾。
第二个问题是可读性。代码变得便宜以后,真正稀缺的是理解。Nelson Elhage 也特别强调,LLM 让生成几千行代码的成本极低,但没有人真正理解这些代码时,调试、重构、架构设计和长期维护反而变得更重要。
第三个问题是互操作。如果每个人都有自己的应用、自己的数据格式、自己的工作流,协作会变得更复杂。过去商业软件虽然让人不爽,但至少大家在同一个系统里。未来如果每个人都用 AI 生成自己的小工具,如何共享数据、迁移格式、协同编辑、保证安全,就会成为新的基础设施问题。
未来的软件世界,会分成上下两层
所以,软件的 Emacs 化不会消灭工程,反而会重新定义工程。
个人软件可以越来越随意,但组织级软件必须越来越严肃。个人可以“能用就行”,企业不能;个人可以今天重写明天扔掉,企业不能;个人可以承受小 bug,工业、金融、医疗、政务系统不能。
未来的软件世界很可能会分成两层:
- 上层是大量流动的、个人化的、临时生成的小软件;
- 底层是稳定的、可审计的、可组合的数据、协议、权限和安全基础设施。
这也意味着,未来优秀开发者的价值不会消失,而是迁移。
写代码本身会贬值,但定义边界、设计接口、建立约束、沉淀可复用模块、让系统可理解、可删除、可演化,会变得更值钱。程序员不再只是“代码生产者”,而更像软件环境的建筑师、工具链的策展人、智能体的技术负责人。
LLM 让个人计算的旧理想重新活了过来
更大的变化在文化层面。
个人计算机最早的理想,并不是让人被 App Store、订阅制和云服务包围,而是让个体拥有改变机器的能力。后来软件越来越复杂,普通人逐渐退回消费者位置。
LLM 可能让这个旧理想重新活过来:不是每个人都成为职业程序员,而是每个人都能拥有一点改造软件的能力。
这就是“软件的 Emacs 化”最动人的地方。它不是怀旧,而是复兴。它让软件从标准化商品,重新变成个人表达的一部分;让用户从被动适配产品,重新变成工具的共同作者;让那些太小、太碎、太个人、不值得商业公司开发的需求,终于有了被满足的可能。
未来的软件,可能不再是一个个固定的 App,而是一层层围绕个人生长的配置、脚本、界面、智能体和数据流。每个人的电脑都像一个活的工作室,而不是一个摆满封闭商品的货架。
这对软件行业既是威胁,也是机会。威胁在于,大量平庸工具会被个人 AI 软件替代;机会在于,真正的平台会从“卖功能”转向“提供可编程的土壤”。谁能让用户更容易改造、组合、生成、验证和维护自己的工具,谁就可能成为下一个时代的软件基础设施。
过去的软件问用户:你要不要使用我的功能?
未来的软件会问用户:你想把我改成什么样?
参考来源
- Hacker News 关于 “The Emacsification of Software” 的讨论。
- tptacek 在相关讨论中对个人软件与应用重构方向的评论。
- Nelson Elhage 关于使用 Claude 优化 Emacs 包并迁移 Rust 逻辑的案例记录。
- GNU Emacs 与 Guile 关于可扩展、可定制软件传统的相关资料。