2026年,AI编程工具成了每个开发者的日常,关于“程序员会不会消失”“自然语言就是新编程语言”的论战席卷技术社区。就在这时,一条发布于2013年、播放量达百万级的演讲视频,被开发者们一遍遍重新翻了出来——《The Future of Programming》(编程的未来),演讲者是前Apple界面原型设计师Bret Victor。
这条视频的特别之处在于:演讲者全程伪装成一位1975年的“数据专员”,用打孔卡时代的语气,向观众展示当时那些“疯狂的未来编程构想”——用手写指令编程、用图形直接操纵程序、让孩子靠画乌龟学会几何——然后在最后五分钟揭晓谜底:这些1970年代就已经实现的激进思想,四十年后一个都没有成为主流,我们今天仍然在一个字符一个字符地敲代码。
这篇文章把这条演讲完整拆开:它讲了什么、背后是哪些真实的计算机史、哪些主张站得住脚、哪些被浪漫化了,以及它对身处AI编程时代的你,到底意味着什么。
| 项目 | 内容 |
|---|---|
| 视频标题 | The Future of Programming(编程的未来) |
| 演讲者 | Bret Victor(前Apple人机界面原型设计师,worrydream.com站长) |
| 上传频道 | Bret Victor(据频道页面,官网worrydream.com同步存档) |
| 发布时间 | 2013年1月(据频道页面) |
| 播放量 | 百万级(约150万+,撰写时约数,未经实时核验,据频道页面) |
| 场合 | DBX技术大会主题演讲(据worrydream.com存档) |
| 时长 | 约27分钟 |
说明:本文撰写时无法实时抓取频道页面,以上数据以Bret Victor个人网站worrydream.com的公开存档及频道页面为准,播放量为撰写时的量级估计。
要看懂这条视频,必须先看懂它的形式。因为在这条演讲里,“怎么讲”比“讲什么”更狠。
视频开场,观众看到的是一套刻意做旧的幻灯片:等宽字体、老式IBM风格的排版,Bret Victor把自己包装成1975年IBM的“数据专员(Data Processing Specialist)”,穿着那个年代的衬衫,用一种“电子计算机行业即将迎来黄金时代”的口吻开场。他说,他将向各位介绍计算机编程领域的最新进展,并且大胆预测1975年之后25年的编程未来。
这个装置的戏剧性在于:台下坐着的,全是2013年的程序员——一个个正用MacBook敲着Python和JavaScript的现代人。他们即将以“未来人”的身份,观看一位“1975年的人”预测他们所生活的“未来”。
接下来的二十分钟里,这位“数据专员”一本正经地介绍了几项“离经叛道”的编程新思路。台下不时发出笑声——因为观众认出了那些系统:它们全部是真实存在过的工程杰作,而且全都诞生于1960年代。笑声在最后五分钟戛然而止:演讲者摘下1975年的人设,告诉所有人——你们刚才笑了的每一样东西,没有一个成为你们今天的现实。你们今天编程的方式,和1975年没有本质区别:把字符敲进文本文件,再让机器去猜你想干什么。
这就是这条视频最高明的地方:它不是一个“关于编程历史”的讲座,而是一台让每个程序员当场照见自己思维局限的镜子。形式即论点——你以为你在嘲笑1975年的人缺乏想象力,其实是2013年的你在被1975年的想象力嘲笑。
按照演讲的叙事顺序,那位“数据专员”介绍了四种当时的激进编程方式。它们全部真实存在,全部有案可查,也全部没能进入今天的主流。
第一个演示来自MIT的Ivan Sutherland。他在1962-1963年完成的博士论文《Sketchpad: A Man-Machine Graphical Communication System》,是人类历史上第一个交互式图形系统:工程师用光笔直接在屏幕上画图,系统理解你画的东西——你画一条线段,说“这两条边相等”,之后无论怎么拖动,它都保持相等。这就是史上第一个约束求解系统;你画一个图形作为“母版”,然后可以复制出无数个实例——这是面向对象和实例化思想的雏形,比Simula和Smalltalk早了近十年。
“数据专员”用1975年的口吻调侃:这听起来像科幻小说,计算机怎么能“看懂”图画呢?台下观众笑,因为观众知道:Sketchpad是真实的,Sutherland后来拿了1988年图灵奖,这段演示影像至今在YouTube上就能看到。但笑完之后扎心的问题来了——今天的你,画过一次“程序”吗? 你还是在敲代码。
第二个演示是Seymour Papert的LOGO语言。Papert是数学家,曾在日内瓦与儿童心理学家皮亚杰(Jean Piaget)共事五年,后来去了MIT。他相信:孩子不是通过被灌输知识来学习的,而是通过建造来学习的——这后来发展成“建造主义(Constructionism)”教育理论。LOGO就是这套理论的载体:屏幕上有一只小乌龟,孩子输入"FORWARD 100, RIGHT 90"这样的指令,乌龟就往前走、转弯,画出各种图形。孩子为了“让乌龟画出漂亮的图案”,主动去理解角度、循环、过程分解——几何和编程同时学会了。
演讲进行到这里,2013年的观众笑得最响——乌龟画图嘛,是不是有点幼稚?但Papert 1980年的著作《Mindstorms》里有一句更锋利的话:他批评的恰恰是学校把数学变成“纸笔符号操练”,而不是计算机太幼稚。四十年后,儿童编程教育遍地开花,可有多少课程只是把Scratch当成了新的“纸上操练”,而没有继承Papert“孩子在建造中理解世界”的核心?
第三个演示是最让现代程序员震惊的:GRAIL系统,1969年由美国兰德公司(RAND Corporation)的团队开发。用户用触控笔在屏幕上手写指令,系统能识别手写字;用户手画一个流程图的菱形判断框、方框、箭头,系统把整个手绘流程图当作可执行的程序,还能直接在流程图上修改、单步调试。
请注意年份:1969年。手写识别、手绘流程图、可视化执行——这三样东西,2013年的主流开发环境里一个都没有,2026年依然没有。我们有了触摸屏和Apple Pencil,但程序员的工作界面,仍然是那个从打孔卡一路继承下来的字符文本框。“数据专员”在1975年不敢相信的东西,我们到今天也没敢相信。
第四个演示指向Alan Kay和Xerox PARC的Smalltalk。Kay在1968年构想了Dynabook——一台为每个孩子准备的便携式个人电脑,比iPad早了四十二年。Smalltalk是这个构想的软件部分:对象、消息传递,以及同样重要的一点——即时性。在Smalltalk环境里,程序不是“写完—编译—运行”三段式的,程序是活的:你改一个对象,正在运行的系统立刻改变。 Kay因此获得2003年图灵奖,他有一句流传甚广的话:"The best way to predict the future is to invent it"(预测未来最好的方式就是发明它)。
今天的开发者对“热重载(hot reload)”、REPL交互式环境津津乐道,觉得这是现代工程福利。但Smalltalk在1970年代做到了整个操作系统级别的“活的编程环境”——我们今天只是在单个网页应用层面,追回了它的一小块。
四个演示讲完,“数据专员”总结说:以上这些思想“需要根本性的新思维,短期内恐怕难以实现”。然后灯光变了——Bret Victor走出1975年,对2013年的观众说了这段演讲被引用最多的话:
"The most dangerous thought that you can have as a creative person is if you think, 'the users will know what to do'... the most dangerous thought you can have as a young person is that the things you know are all there are."
(作为一个年轻人,你能有的最危险的想法,就是以为:你已经知道的东西,就是世界上全部的可能性。)
他接着指出一个更冷的事实:上面那些系统,全部诞生于1962年到1969年之间——那是这个行业的“可能性大爆炸”年代。而此后几十年,主流编程反而收敛到了唯一的一条路上:文本编辑器加编译器。不是因为没有别的路,而是因为后来的从业者已经意识不到还有别的路。工具塑造了使用者的思维,而使用者的思维又固化了工具——这是个自我强化的闭环。
演讲结尾,他没有给答案,只给了两条行动建议:第一,培养对这些问题直觉性的反感与敏感(学会对“反人类”的工具说不舒服);第二,相信这些问题是真实存在的问题,相信它们可以被解决——因为唯一让编程思想停滞的东西,就是所有人都默认“现在这样就是编程该有的样子”。
这条演讲的可信度,建立在一条经得起任何核查的历史线上。以下每一项都是公开可查的真实工程与真实人物:
演讲者本人的背景同样真实:Bret Victor曾在Apple参与人机界面原型设计(iPad时代前后),2012年他做过另一场著名演讲《Inventing on Principle》,提出“创作者需要与作品之间即时的连接”,随后发起Light Table IDE的众筹并获得远超目标的支持,后来创立了研究“实体计算”的非营利实验室Dynamicland。也就是说,《The Future of Programming》不是孤立的观点输出,而是他一整套工具哲学的其中一环。
一篇负责任的深度解读必须指出:这条视频的修辞力量,一部分来自真实的洞察,一部分来自精心构造的叙事。两者要分开看。
第一,“缩短反馈回路提升学习与创作效率”,有坚实的学习科学支撑。 从斯金纳的操作性条件反射开始,“即时反馈强化行为”是行为心理学最稳固的结论之一;搬到工程领域,REPL、热重载、单元测试、时间旅行调试器(timetravel debugger)之所以能显著提升开发体验,正是因为它们压缩了“行动—看到结果”之间的延迟。Victor把这条心理学规律提升为工具设计哲学,是成立的。
第二,历史事实全部准确。 演讲中提到的系统、年份、人物没有任何夸张或虚构,这在“讲历史”的技术演讲里是少见的干净。Sketchpad、LOGO、GRAIL、Smalltalk的成就,都是保守陈述——真实历史甚至比演讲里讲的更惊人(比如Sketchpad的约束求解,今天的CAD软件仍在沿用同一思路)。
第一,“文本编程是历史惯性”的归因,回避了工程权衡。 图形化编程、手写编程四十年未能主流化,未必(只)是从业者想象力枯竭。文本作为程序载体有几个图形很难替代的工程属性:可diff、可版本控制、可代码评审、可全文检索、可精确引用——现代软件是几百人协作几千万行的工程,"git diff"一行行看变更的能力不是审美偏好,是协作基础设施。可视化编程领域几十年的学术研究(可视化语言与视觉编程方向的多项综述)给出的结论也是混合的:在小规模、特定领域(如音频合成Pure Data、游戏蓝图系统、Node-RED)表现优秀,但普遍在规模化时遭遇“连线地狱”。也就是说,主流选择文本,可能有一部分是文化惰性,但也有一部分是理性收敛。演讲对此几乎不做讨论,这是它最大的论证缺口。
第二,修辞装置本身是导演出来的。 台下观众的“笑声”预设了一个前提——2013年的观众真的不知道这些历史吗?未必,但演讲的形式强迫大家扮演“没见过世面的1975年人”,情绪被形式带走了。把“简化过的历史对比”当作论据,严格说是一种幸存者偏差叙事:1960年代同样有大量失败的激进构想,演讲只展示了赢家。这不是说结论错了,而是说——观众被说服的过程,比结论本身更值得警惕。 恰恰符合这场演讲自己反对的“被工具塑造思维”:被演讲塑也是一种被塑造。
第三,Brooks的反驳值得放在桌上。 Fred Brooks在《No Silver Bullet》里的论证是:软件困难的根源在于其“本质复杂性”(需求本身的复杂、不可见、可变性),表示法(编程语言是图形还是文本)属于“次要复杂性”,无论怎么改进表示法,都只能优化10%-25%的那部分。Victor的隐含主张与此正面冲突——他认为表示法革命能释放的远不止于此。谁的判断对,今天仍然没有定论;但一个只看了演讲的观众,大概率不知道存在Brooks这一整条反对阵线。
有意思的是,2026年重看这条视频,它的批判对象升级了。当“用自然语言编程”成为现实——Copilot、Claude Code、各种Agent替你写代码——很多人宣称“编程的未来终于来了”。但用Victor的框架看,这里有一个刺眼的讽刺:我们仍然是把自己的思想,压进机器能接受的输入格式里,只不过格式从打孔卡换成了提示词。 “行动与理解之间的回路”并没有被缩短多少——你写下提示词,Agent跑十分钟,回来一大坨代码,你看不懂、改不动、不敢删。反馈更慢了,理解更浅了。十三年前那句“最危险的想法”,在AI时代不是过时了,而是加倍成立:你以为“会写提示词”就是编程的未来,这个念头本身,可能正是2026年最危险的想法。
把“反馈回路长度”作为评估开发工具的第一指标。同样一件事,热重载的框架比冷启动的框架好,毫秒级返回的REPL比“改完重启看日志”好,本地能跑的测试比等CI排队的好。当你在两个技术方案间犹豫时,别只比参数和流行度,比一比:从“我改了一行”到“我看到结果”,各需要几秒? 这一个数字,长期乘以你每天的修改次数,就是工具间真实的效率差距。
那条“最危险的想法”值得变成制度而不只是金句。可操作的做法:每个季度花半小时,写一份《我的默认假设清单》——列出你当前技术栈里“理所当然”的选择(“服务端就该用无状态REST”“数据库就该是关系型”“代码就该是文本文件”),然后强制为其中至少一条找一个反例、一次替代方案的认真调研。不求切换,只求确认你是重新选择了它,而不是继承了它。这就是把Victor对整个行业的警告,压缩成你个人的季度例会。
如果你写库、写框架、做内部平台:记住演示里那些系统共同的品质——它们让不可见的抽象(约束、对象、控制流)有了可直接操纵的身体。落到手边的小事:给你的库做一个可视化 playground;让报错信息带上下文快照而不是一行文字;让你维护的流水线在网页上画出来而不是写在一堆配置里。用户不关心你的架构多优雅,他们关心的是“我的思想到你的工具之间,隔了几层翻译”——把层数砍掉,就是你作为工具作者的第一性原理。
flowchart TD
A[伪装设定<br/>1975年数据专员] --> B[官方叙事<br/>编程=敲字符]
B --> C[演示一<br/>Sketchpad 1963<br/>光笔画图+约束求解]
B --> D[演示二<br/>LOGO 1967<br/>孩子造乌龟图形]
B --> E[演示三<br/>GRAIL 1969<br/>手写笔迹编程]
B --> F[演示四<br/>Smalltalk<br/>活的即时环境]
C --> G[反转揭晓<br/>都是真实历史]
D --> G
E --> G
F --> G
G --> H[核心论点<br/>最危险的想法<br/>以为已知即全部]
H --> I[机制<br/>工具塑造思维<br/>思维固化工具]
I --> J[行动建议<br/>培养敏感+相信问题可解]
J --> K[AI时代新问<br/>提示词是不是<br/>新的打孔卡]
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
