“哼。”
瑞恩的嘴角挂上一丝嘲笑,整个硅谷都在抢着研究的新范式,远在中国的一家小公司还想抢首发吗?未免自不量力了。
他觉得莎拉有点儿过于大惊小怪了,还大半夜的给他发信息。
也可能莎拉只是为了发这个信息,只是为了证明自己晚上在加班。
瑞恩以前也当过员工,太清楚这些小心思了。
但是既然已经打开了这个页面,他也愿意花点时间看看,看看中国的团队能做到什么程度,看看他们离世界顶尖的团队还有多大的差距。
瑞恩大概浏览了一下御风的产品落地页,什么自动拆解任务、自动生成代码、自动运行测试。
说实话,这些描述乏善可陈,全硅谷走在前沿的那几家都在研究这个。
说的都简单,难的是把东西做出来。
真想把这套能自主运行的工具做出来,要解决的工程问题,要绕开的大模型能力边界,远远不是写几句产品介绍就能搞定的。
只有自己下场做过的人才知道这里面的水有多深。
页面上每一句话都说得头头是道,可正因为太头头是道了,瑞恩反而彻底看穿了:这家中国公司是在玩噱头。
产品根本没做出来,先把行业里讨论出来的范式拿过来,包装一下说自己已经实现了。
瑞恩回忆了一下视频会议中侃侃而谈的韩路一。
中国人,就喜欢搞这些花里胡哨的东西。
瑞恩耐着性子找到登录页,把工具下载下来。这个叫御风的工具暂时只支持命令行(CLI,Command Line Interface)一种用法,启动之后,要输入用户名和密码验证,才能开始使用。
这是一个用Go写的小型分布式调度器,半是手写,半是用水星模型生成的代码,复制粘贴过来的,代码质量不高,但是勉强能跑,也没花多少时间,前前后后不到一个星期吧。
这个项目基本没有文档和注释,一般的程序员来了恐怕得懵逼半天。
正好,瑞恩心想,试试你的成色。
他敲了一行英文,让御风给这个项目加一个功能。
任务超时之后的级联取消。
这个功能他自己想做没做,因为它牵扯到至少四个文件、两个goroutine的生命周期管理,还要兼容他之前写得乱七八糟的事件总线。
最麻烦的是,这个项目里有一段历史包袱。一开始写的时候他偷懒,把一个本该解耦的模块直接塞进了主循环里。
Nexus内部那个还在打磨的类似工具,叫Nexus Ats (地图集),瑞恩也会用这个项目来测试Ats,每次测试都栽在这个耦合里。
他想看看御风在这段逻辑里会犯什么错。
回车。
终端开始滚动。
可以看到,御风先是扫描了一遍仓库结构。
这步不算什么,瑞恩挑了挑眉,心想。
接着御风开始读代码,标出了几个它认为相关的文件。
瑞恩往前凑了凑。
不对。
它怎么知道事件总线是相关的?落地页里没提“事件总线”,他敲的命令里也没提。
而且它居然很快就略过了那几个名字里带“task”(任务)、“timeout”(超时)的文件,知道那里的逻辑和这次要求的改动毫无关系。要知道,那些是新手最容易上钩的假相关文件。
它像是真的读懂了这个项目,知道哪个模块是核心,知道哪段代码是历史包袱。
就好像这程序本来就是它写的一样。
瑞恩的冷笑慢慢从脸上消失了。
终端里继续在输出文字。
御风给出了第一版改动方案,它没碰那段历史包袱,而是在事件总线上加了一层信号广播,把级联取消挂在了广播那一层。
瑞恩盯着屏幕。
这正是他自己想到过的,但因为懒得动事件总线所以没做的那个方案。
别慌,这只是个巧合。
瑞恩在心里默默告诉自己。
他重新往椅背上靠了靠,强迫自己想了一个合理的解释:事件总线在这个项目里本来就是核心模块,文件体量最大,被扫描到只是概率问题。如果这个团队,它在扫描文件的逻辑上格外花了精力,做到这一步也不是不可能。
他们可能就只是擅长干这个。
这个解释站得住脚。
御风继续工作,开始动手写代码。瑞恩盯着终端,等着它在历史包袱那里犯错。那段耦合进主循环的模块,Ats每次都在这里翻车。
然而,御风有出一点错,耦合逻辑被清理得干干净净。
御风甚至在重构之后先补完了单元测试。
旧的代码被小刀阔斧的删除了,新生成出来的代码结构浑浊。
广告位置下