一个用Java 1.0写的教学小程序,在浏览器早已不认它的十几年后,被AI几小时内用JavaScript重新写活了——这是陶哲轩最新博客里最扎眼的一件事。更扎眼的是他自己给出的质检结果:AI迁移过程中只留下一个小bug,却顺手挑出了原代码里两个他自己都没发现的旧bug,他称之为“net wash”,净持平。
这批applet大约有24个,是他从1999年开始给复分析、线性代数课程做的可视化教具,里面还有和数学家Allen Knutson合写的honeycomb applet。2010年代浏览器陆续砍掉Java插件支持,这些教具集体失效,陶哲轩2008年就写文章预警过这个问题。这次迁移之外,他还用AI“vibe coding”了两个新东西:一个是1999年因为代码太复杂被迫放弃的洛伦兹时空图可视化工具,一个是配合当天发布的Gilbreath猜想论文做的交互式可视化。
27年的技术债,几小时还清
Java applet曾是90年代末网页交互的主流方案,陶哲轩当年为了让学生“看见”蜂窝结构、Besicovitch集合这类抽象对象,手写了这批教具。技术迭代把它们变成了废墟,这是很多学者和教育者的共同处境:早年投入心血做的数字资产,因为平台标准变化,说没就没。
这次复活的价值不在“AI能写代码”这种常识,而在于时间尺度——从代码报废到重新上线,中间隔了将近二十年,而重写工作压缩到了几个小时。时空图项目是更直接的对照:1999年因代码复杂度太高而放弃的想法,2026年“几小时”就做出了他当年设想的样子。这不是AI比人聪明,是AI把“愿意投入的时间成本”这道门槛几乎推到了零。
两副面孔:证明严防死守,教具放手实验
真正有意思的地方在这里。陶哲轩不是第一次和AI打交道,他长期是Lean形式化证明的知名倡导者,此前公开分享过借助Lean加AI发现自己论文里细微错误的经历。在数学证明这种一步错就全盘错的场景里,他从不裸信大模型的输出,永远让Lean这类形式化验证器去把关。
这次对待applet完全是另一套逻辑:AI生成的JavaScript代码,他基本上是肉眼审查加playtest就直接上线了,没有引入额外的验证工具。他自己给出的解释也很直白——这些applet是“次要的可视化辅助”,不是论证的关键组件,出了bug代价很低。
- 结论.陶哲轩对AI的信任不是统一尺度,是按“出错代价”分层给的。
这条分层线其实比“AI又立功了”这种叙事更值得记住。技术社区对陶哲轩此前用Lean+AI做数学的讨论,一直分化成两派:认可“AI加严格验证器”组合可靠,但普遍怀疑裸用大模型生成的东西,而且强调这种可靠性高度依赖使用者本身有没有专业审校能力。陶哲轩这次的applet实践,恰好印证了后半句——他敢裸信AI,前提是他自己看得懂每一行JavaScript,能亲自playtest挑bug。普通开发者复制这套流程,未必有这个审校能力垫底。
值得多说一句的是,“一个小bug对两个原有bug、净持平”这个结论,目前只是陶哲轩的自述,没有第三方代码审计佐证。alpha版的时空图工具他自己也承认还有粗糙的地方,邀请读者反馈bug。这类由作者本人评估AI代码质量的说法,在传播中很容易被简化成“AI写代码零失误”,读起来痛快,但离事实还有一步验证要走。
信任AI从来不是全有或全无,是先分清哪块代码错了会死人。
谁会跟着这套逻辑走
这套“低风险放手、高风险死磕”的分层思路,对两类人有直接参考价值。一类是手里攥着大批因技术过时而失效的数字资产的学者和教育者——旧applet、旧Flash课件——现在有了低成本复活的路径,前提是接受它们本来就不是关键论证。另一类是数学和科研社区里正在观望要不要给论文配交互式可视化的人,陶哲轩已经表态可能把这套做法常态化,如果扩散开来,后续要面对的问题会是代码质量参差、可复现性和长期维护成本,而不是“会不会用AI”这种已经过时的问题。
接下来最该盯的,不是这批applet好不好看,而是alpha版时空图工具收到的bug反馈会不会推翻“净持平”的自评——那才是检验这套风险分层逻辑到底站不站得住脚的地方。
