一位开发者,没写过一行Rust,却在一个月内把10万行TypeScript项目完整搬到了Rust上。没有教程,没有查StackOverflow,全程只对着Claude说“帮我改写”。
他靠的完全是那套被很多人看不起的验证手段——差分模糊测试。不是跑几个单元测试,而是直接用230万场战斗模拟,把随机输入灌进新旧两个版本,比对输出结果。测试几乎全绿,代码完工,互联网直接炸锅。
一边是“能跑通就行,纠结代码怎么写有毛病吗”;另一边是“你连Rust是什么都没搞明白,就是拿了个高级影印机”。
两边看似都有理,却都不愿意承认自己漏掉了最关键的地方。以下是我从这件事里拆出的几个痛点,每一条都让人越想越烦。
1. 测试通过 ≠ 真懂代码
我得承认,用230万次差分模糊测试来验证移植,这个思路聪明得不像话。它不是偷懒,是把工程上的巧劲儿押在了验证端。但问题在于:验证行为和理解行为,在根儿上是两回事。
一个简单的问题:如果凌晨两点线上崩了,Claude不在手边,这位开发者能自己揪出borrow checker报错的原因吗?能压得住unsafe块和生命周期标注里的隐患吗?能做出一套Claude给不出的架构取舍吗?
如果答案都是“不能”,那当230万次模糊测试都没覆盖到的边缘情况冒出来时,他拿什么兜底?到时候坐在工位上的,不是工程师,而是一条带了个昂贵编译器的QA流水线。
2. “能用就行”是个陷阱
肯定有人反驳:我们用StackOverflow抄代码时也没人要求先理解事件循环,工具从来都是工程的一部分。
这没错。但用工具增强理解和用工具顶替理解,是两码事。木匠用电钉枪,是因为他知道墙里龙骨的位置;现在的情况更像是让人指挥机器人把房子盖好,然后只检查门能不能打开。门开得挺顺滑,但地震一来,就是另一套验收标准了。
3. 真正被证明的东西并非“AI能移植语言”
这不是新闻。真正浮出水面的信号是:测试基础设施的分量,可能已经超过了语言专精本身。
这个结论,看你站在哪个位置解读,感受天差地别。如果你是花了几年把Rust所有权语义吃透的人,会觉得像被抽了一巴掌;如果你是明天就要拿到可用移植版本的创始人,会觉得这是神迹;如果你是个在思考职业保质期的工程师,你会听见火警在响。
4. 两种彻底分叉的技能
这位开发者没有学Rust。他学的是“怎么保证Rust输出结果是正确的”。这是两种截然不同的专业技能,前者在积累领域直觉,后者在构建验证体系。而现在整个行业还没吵明白,到底哪一个更值钱。
5. 作者那句没说出口的话
原文末尾,作者写到“我不会称这位开发者……”然后硬生生打住了。他没补完,但意思已经很明显:既没法说这不是工程,也没法坦然承认这就是工程。那个吞回去的评价,恰是整件事最让人尴尬的诚实时刻。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.