2023年8月,Bram Moolenaar在荷兰家中去世,享年62岁。这位从未在硅谷工作过、从未接受风投、从未把Vim变成生意的程序员,留下了一个被4000万开发者依赖的工具,以及一笔特殊的遗产——他用Vim用户捐赠的资金,在乌干达资助了数千名儿童的教育和医疗。
两年后,Vim的新维护团队做了一个决定:接受某家AI公司的赞助。这笔钱将用于加速开发Vim的代码补全功能——本质上,是让生成式AI更顺畅地接入这个诞生三十年的编辑器。
一位资深Vim用户在悼念文章中写道:「我几乎每一个字、每一行代码,都经过Vim。」他把使用Vim比作「思想从大脑流向手指,再流向Vim形状的身体延伸」。这种亲密感,是很多开发者对Vim的共同体验。但正是这种亲密感,让赞助事件变得微妙——当你每天触摸的「肢体」开始与你不信任的东西联姻,身体会产生排异反应。
一个从未被质疑的捐赠模式
Bram Moolenaar在1991年发布Vim,1994年正式接管维护。他独创了一种许可模式:Vim是自由软件,但如果你「想为乌干达贫困儿童做些善事」,就被鼓励向他的慈善项目ICCF Holland捐款。这笔钱不进入他的口袋,而是直接流向乌干达的诊所和学校。
这种模式运行了近三十年。没有董事会,没有KPI,没有「用户增长」压力。Vim的更新节奏慢得惊人——版本号从1.0爬到9.0用了三十一年,平均三年半一个大版本。Bram本人住在荷兰东部小城Venlo附近,生活简朴,葬礼在他家附近举行,规模很小。
一位移居荷兰的开发者回忆:Bram去世后,他「经历了一种奇怪的哀悼」。两人从未见面,但「他深刻地影响了我的生活」。这种关系是开源世界的典型产物:创造者成为基础设施,用户成为依赖者,情感在匿名中积累。
ICCF Holland至今仍在运作。根据公开记录,该项目累计资助了超过2000名乌干达儿童的完整教育周期,并维持着数家农村诊所的运营。Bram的遗产不仅是代码,更是一种伦理示范:技术可以不为资本服务,甚至可以反向输出价值。
AI赞助引发的连锁反应
新维护团队接受AI公司赞助的具体条款未完全公开。已知的是,资金将用于开发「智能代码补全」功能,而这家赞助商的商业模式依赖于向企业客户出售生成式AI服务。
反对者的论点很直接:Vim的长期用户群体与AI行业存在结构性利益冲突。生成式AI的训练数据大量抓取开源代码,包括Vim用户编写的插件和配置;AI编码工具正在替代初级开发者岗位,而Vim用户恰恰是这群人的核心构成;更关键的是,AI行业的能源消耗、劳工剥削和虚假信息问题,与Bram生前关注的乌干达儿童福祉形成刺眼对照。
那位悼念文章的作者算了一笔账:全球数据中心为AI消耗的电力已占世界总发电量的1.5%,而与此同时,刚果(金)的钴矿工人——包括大量童工——正以健康为代价供应芯片所需的稀有金属。Bram从未公开评论过AI,但他生前唯一执着的慈善方向,让他「至少在意一些事情」。
维护团队的回应是技术性的:Vim需要保持竞争力,代码补全是现代编辑器的标配,接受赞助不等于绑定独家技术。但这些解释回避了一个问题:为什么偏偏是AI公司?为什么是现在?
开源基础设施的赞助困境
Vim不是第一个面临这种抉择的项目。2023年,Python软件基金会接受某云服务巨头赞助后,社区同样出现分裂;Linux基金会长期依赖企业会员制,被批评为「大公司游说平台」。但Vim的特殊性在于它的历史——它几乎是一个「反商业」符号,Bram的个人风格强化了这种印象。
一位参与过Vim插件生态的开发者描述了两代人的分歧:老用户把Vim视为「手艺工具」,学习曲线本身就是筛选机制,排斥自动化是身份认同的一部分;新用户则把编辑器视为「生产力管道」,AI补全是降低摩擦的自然步骤。赞助事件只是暴露了早已存在的代际断裂。
更深层的张力在于:当开源项目的原始创建者离世或退出,「社区自治」能否继承其伦理取向?Bram选择乌干达慈善作为Vim的「道德锚点」,这是一种个人偏好,还是可以被制度化的遗产?新维护团队没有义务复制Bram的价值观,但用户也没有义务接受任何价值观的漂移。
目前,Vim的代码库尚未出现实质性的AI功能合并。争议停留在赞助层面,而非技术路线。但赞助已经改变了叙事——Vim从一个「慢速、独立、有原则」的项目,变成了一个需要解释「为什么接受这笔钱」的项目。
那位在荷兰的悼念者最后写道:他从未有机会感谢Bram。现在,他有机会做的是:决定自己继续使用Vim,还是 fork 一个分支,或者彻底迁移。这些选择都不涉及对Bram的背叛——因为Bram本人从未要求忠诚,只要求「为乌干达儿童做些善事」。
但AI公司的赞助,是否还能让用户心安理得地勾选那个捐赠选项?这是Vim留给每个人的新考题。
热门跟贴