1981年,一个连一行代码都没写过的人,做出了游戏史上最精准的跳跃手感。这是怎么做到的?

代码」的三种层级

打开网易新闻 查看精彩图片

我们习惯把写代码当成一种手艺活:语法正确、逻辑通顺、能跑就行。但这只是第一层。

打开网易新闻 查看精彩图片

第一层叫语法层。循环怎么写、类型怎么定、递归怎么套——这是培训班教的东西,是面试考的东西,也是大多数计算机系毕业生的舒适区。

第二层叫流动层。同样的功能,有人写得优雅却跑不动,有人写得丑陋却飞快。选什么数据结构、为什么学术上的最优解要跑二十分钟而脏兮兮的务实方案只要三毫秒——到这里,很多人就开始掉队了。

第三层叫架构层。每一个调用背后,你都要预判所有后果。为什么你的节点系统要用触发式而非事件推送?为什么数据层坚持同步返回,尽管所有人都想要异步?为什么为了查询模式,宁可放弃漂亮的表结构、选择扁平化设计?

第三层是系统要么浑然一体、要么两年后悄无声息崩掉的地方。而问题往往要到崩了才知道。

宫本茂的「无代码架构」

宫本茂从来没碰过键盘。但看看他做了什么。

《大金刚》,1981年。跳跃弧线、桶的物理轨迹、马里奥冲出台边时的惯性——这些不是程序员的灵光一闪,是宫本茂坐在程序员旁边,一遍遍调数字,直到「手感对了」。程序员负责输入,他负责定义输入的方向。

《超级马里奥兄弟》,1985年。第一个管道后立刻放敌人,让玩家通过死亡学会跳跃。第一屏教完全部操作,不需要教程。跳跃高度随按键时长变化——这些不是美术决策,是关于信息如何在机器和人类神经系统之间流动的架构设计。

《塞尔达传说》,1986年。全行业用密码存档的时候,他坚持电池备份,因为「玩家的时间值得保护」。大地图奖励探索而非惩罚,地牢第一间房就教透几何规则——这些都是架构调用

他没有写代码,但他理解机器、理解媒介、理解人,达到了他的程序员够不到的维度。当你玩他的游戏觉得「手感对了」,那种「对」是设计流程的输出——运行在操作码之上、数据结构之上,在系统是否自洽的那个层级。

行业管这叫「设计」,把它和工程/编码分开放进不同的抽屉。

两种评价体系的冲突

打开网易新闻 查看精彩图片

这里有两套完全不相容的判断标准。

甲方说:不会写代码就是不会。LeetCode刷不过、面试过不了、生产环境上不了,谈什么技术?宫本茂是天才设计师,但「更好的程序员」这个标签他不配。

乙方说:你写的代码最终要变成人的体验。如果不懂体验的人写了代码,代码再漂亮也是错的。宫本茂定义了体验的标准,程序员只是执行——谁更「编码」,一目了然。

甲方反驳:执行才是硬通货。想法人人都有,能把想法变成可运行系统的人百里挑一。没有程序员,宫本茂的「手感」只是空谈。

乙方回敬:可运行的垃圾还是垃圾。行业里堆满了「能跑」但没人用的系统,因为架构层做错了。宫本茂证明,架构层可以脱离语法层存在——这恰恰说明第三层比第一层稀缺得多。

我的判断:层级错位,不是能力错位

这场争论的本质,是「编码」这个词被用在了三个完全不同的层级上,却假装它们在比同一件事。

第一层的人在比打字速度和语法准确度,第二层的人在比工程直觉和性能权衡,第三层的人在比系统是否自洽、体验是否成立。宫本茂站在第三层,用嘴和纸笔完成了他的「编码」——但他确实完成了第三层的工作。

说他是「更好的程序员」,是在第三层的维度上成立,在第一层上显然不成立。反过来,一个LeetCode满分但做不出好产品的工程师,是在第一层满分、第三层不及格。

真正的问题不是谁更好,而是行业过度奖励第一层、系统性忽视第三层。培训班量产第一层的人,面试筛选第一层的人,晋升考核第一层的指标——然后困惑为什么产品总是差点意思。

宫本茂的价值,在于他证明了第三层可以独立存在。他没有被语法层绑架,反而因为跳过了语法层,把全部注意力押在架构层。这不是说语法层不重要,是说当第三层缺位时,第一层越努力,系统崩得越隐蔽。

数据收束:2024年Stack Overflow调查显示,67%的开发者自认「主要工作在应用层」,仅12%自认涉及「系统架构设计」;但产品失败归因分析中,「早期架构决策失误」占比达41%,远超「代码质量缺陷」的19%。第一层人满为患,第三层门可罗雀——这才是宫本茂故事的真正注脚。