00:00:00今天我醒来看到 Wurzel 首席执行官 Guillermo Rauch 发的一篇很有意思的帖子,
00:00:06我想聊聊这个话题,以及它带来的启示,还有我关于代码角色、
00:00:11以及实际代码在今天和未来的重要性的看法。
00:00:16Guillermo 在帖子里说:"代码是输出,大自然正在自愈。
00:00:21长期以来,我们一直把代码当成输入。
00:00:23我们美化它、手动排版、将其精简化,并对其过度痴迷。
00:00:28我们构建了复杂的图形界面(IDE)来编写代码。
00:00:31我们搞语法高亮、树状结构、缩略图,还有键盘触发、行内自动补全、
00:00:37幽灵文本。
00:00:38追求这是什么配色方案?
00:00:40我们彻夜争论 API 和函数体的理想长度。
00:00:44纠结这个 API 对其他人来说读起来是否足够漂亮?
00:00:48而现在,我们将注意力转向了真正的输入:需求、规范、反馈、设计
00:00:54灵感,以及至关重要的生产环境输入。
00:00:58我们的编程代理需要理解用户是如何体验你的应用的,你遇到了什么
00:01:04错误,并将其转化为代码。
00:01:07我们不可避免地会减少对代码以及程序员的崇拜。
00:01:12我合作过最优秀的工程师总是把代码视为达成目标的手段,
00:01:17是一种很快注定会被再次转换的输出。"
00:01:20哇,这篇帖子的信息量真大!
00:01:23对此我有很多想法。
00:01:27显而易见,我想大家都能感受到,编程的整个角色
00:01:35或者说整个领域都在飞速变化。
00:01:38发生了太多的事情,尤其是我,我想业内很多人也都能
00:01:46感觉到,自去年 12 月以来,随着 Opus 4.5 和 Cloud Code,还有现在的
00:01:53Codex 的出现,这种变化再次加速,几乎每周都有新模型和新工具问世。
00:01:58事物变化得非常快。
00:02:01就个人而言,我也在努力跟上节奏,包括我创作的
00:02:06内容、制作的课程,当然还有我工作的方式,这是所有这一切的基础,
00:02:10这就是为什么我发布了关于 Cloud Code 和 Codex 的新课程,顺便说一下,
00:02:16我现在正在搞大型促销活动,你可以以超低价格获得我的年度会员,
00:02:21从而访问所有课程。
00:02:24但这一切都在影响着我们每一个人。
00:02:27这就是我的观点。
00:02:28它正在改变我们所做的事情、我创作的内容,当然还有我们构建软件的方式。
00:02:35然而,我不确定我们是否真的在远离代码,
00:02:42对我来说,这篇帖子读起来像是“代码不再重要”,但我对此持相当大的保留意见。
00:02:50当然,我承认过去确实是这样,显然我们曾经过度痴迷于
00:02:58API 设计、变量和函数的命名,以及代码的美感。
00:03:07但我认为这些部分在今天仍然很重要,而且很可能
00:03:15在未来也是如此。
00:03:17因为即使人类的角色从编写代码转向审查代码,
00:03:24什么样的代码更容易审查呢?是一个包含 10,000 行冗余、
00:03:33过于复杂、函数命名和形态都很诡异的乱七八糟的库,还是一个整洁的代码库?
00:03:41哪一个更容易审查?
00:03:44即使未来审查过程的大部分甚至绝大部分都转向机器和 AI,
00:03:50这当然是有可能的,但我仍然不相信在那个世界里,
00:03:59代码质量会变得完全无关紧要。
00:04:02哪怕仅仅是因为你需要为你生成和审查的所有 Token 付费,
00:04:09如果某个东西能构建得更整洁,那么无论是在生成
00:04:17还是审查该代码时,它都很可能会消耗更少的 Token。
00:04:19Token 成本在未来看起来将非常非常重要,因为
00:04:25目前我们都在使用 Anthropic 或 OpenAI 提供的补贴方案。
00:04:30我们付出的并不是真实的 Token 成本,你我支付的 20 美元或
00:04:37200 美元的订阅费,
00:04:39并不代表这些厂商一定能从中赚到钱。
00:04:44真实的 Token 成本比这更高。
00:04:47而且在未来,当这些公司需要开始盈利时,
00:04:54我们支付的费用很有可能会上涨。
00:04:57诚然,也许由于技术进步,成本只会在整体 Token 成本
00:05:02下降一点之后才开始上涨,但我们现在还无法确定。
00:05:07我们不知道未来的市场会是什么样子。
00:05:10而且即使理论上成本会下降,如果公司能向你收取远高于
00:05:16实际价格的费用,那么,他们会很乐意赚取那份利润。
00:05:22不过,那又是另一个话题了。
00:05:23但 Token 效率在今天很重要,未来也很可能很重要。
00:05:25而这当然与代码质量有关,因为通常来说,
00:05:31好的代码、整洁的代码,是那种不允许无止境增长、
00:05:39变得极端复杂和难懂的代码。
00:05:47当然,有一种观点认为,过去的程序员有时也会
00:05:55倾向于写太多的代码,也许在某些方面,为了追求
00:06:02整洁的 API 和一些不必要的抽象,而这些在当时
00:06:08其实并不需要。
00:06:09我们可能都有过这种经历:在一个用户数为零的个人项目中,
00:06:15我们决定实现数据库访问层,以便能轻松更换数据库,
00:06:22尽管我们从未打算真的去换。
00:06:24于是,我们写了一些适配器,它的复杂度当然
00:06:29远超实际所需。
00:06:30我们都经历过这些。
00:06:31这很棒吗?
00:06:32不,它并不好。无论是你写的还是 AI 写的,在今天或未来
00:06:37都不会变得更好。
00:06:39而且就目前而言(当然情况可能会变),根据我的经验,
00:06:45像 Codex、Cloud Code 这种 AI 模型和工具,它们倾向于把事情复杂化,
00:06:54引入不必要的复杂性,建议一些实际上没什么道理的更改,
00:07:02这些更改往往过于复杂。尤其是现在的 Codex,有一种从不删除代码的倾向,
00:07:10只是不断地添加、添加、再添加代码,增加回退逻辑和遗产处理。
00:07:15你必须几乎强迫它去删除代码,并放弃旧的 API。
00:07:22所以,虽然这些以后可能会改变,但这些是你今天必须去争取的。
00:07:30这也就是那篇帖子所说的不再重要的事情。
00:07:35但我认为,这确实很重要。
00:07:37作为开发者,你必须坚持这些原则,你必须关注实际的
00:07:43代码和代码质量,无论是在今天还是在未来。
00:07:49显然,没人知道未来会怎样,但拥有一个不会因为各种原因
00:07:56而变得异常复杂的代码库总是很重要的,Token 效率
00:08:01就是其中之一。
00:08:02另一个原因,当然,顺便提一下,还有审查环节。
00:08:08此外还有一个原因,那就是代码会对应用的性能产生影响。
00:08:18我也不是在分享什么惊天动地的真理或新闻,
00:08:26但这确实是很容易被忽视的一点。
00:08:28你可以说,随着 AI 生成代码,实际的代码不再那么重要了,
00:08:34因为它很容易重构、重新生成、甚至被替换。
00:08:38如果不考虑 Token 成本的话,这确实是对的。
00:08:43但是,生成的代码确实会对你应用的
00:08:51性能产生直接影响。
00:08:53查询数据库有很多种方式。
00:08:56你可以运行嵌套查询,或者不必要地运行多次查询,因为嘿,结果是一样的,
00:09:04你拿到了你需要的数据。
00:09:05但是,一个未经过优化的数据库查询,一旦你有
00:09:12大量的用户,其真实的代价就会显现出来。
00:09:15同样地,嵌套循环或各种潜入代码库的东西
00:09:20都会导致性能下降。
00:09:23这就是为什么代码质量和优化代码仍然至关重要。
00:09:30你当然可以说未来的 AI 模型和工具会非常擅长这些,
00:09:37未来的模型从一开始就能生成更好的代码,
00:09:43也能对其进行评估和改进。
00:09:47这完全是有可能的。
00:09:50但这仍然没有驳倒我的观点:代码质量很重要,
00:09:55无论是由未来的模型生成的,还是由你这个开发者生成的。
00:09:58现在,最大的不同在于,在一个 AI 能够
00:10:04处理这一切的世界里,我们人类就被排除在流程之外了。
00:10:08我想这也是 Guillermo 想要表达的观点。
00:10:13但我们并不知道那个未来具体会是什么样。
00:10:16关于这篇帖子我想说的是,我理解,这就是当今
00:10:23互联网的现状。
00:10:24你必须表现得具有挑衅性。
00:10:25你必须表现得有点犀利,这样像我这样的人才会为此制作视频。
00:10:30我完全理解。
00:10:31但在帖子里,听起来好像我们过去做的所有事情都很愚蠢。
00:10:37对吧?
00:10:39建立专用工具、让代码编写更轻松的图形界面、讨论 API 设计。
00:10:45那太蠢了。
00:10:46不,那说明你在乎。
00:10:51作为一个人类,你想去在乎你的手艺,在乎你的工作。
00:10:56这就像是说:噢,设计师以前先在纸上打草稿,
00:11:02然后使用 Photoshop 之类的专用软件将其转化为数字艺术,
00:11:07这真蠢。
00:11:08不,这一点也不蠢。
00:11:10这正是让一个热爱自己手艺和工作的人,
00:11:17区别于一个不在乎的人的地方。
00:11:19把这种追求描述为某种愚蠢、古怪,或者是永久消失的东西,
00:11:29这只是一个糟糕的观点。
00:11:30这一点也不酷。
00:11:32当然,顺便说一下,我们现在也在开发新的软件。
00:11:36我们正在为智能体工程世界构建新软件,比如 Codex 应用,
00:11:43以及我们现在拥有的所有这些 AI 代理、智能体应用和图形界面。
00:11:49这是我们正在构建的新型软件,而且我们会继续做下去。
00:11:54我们当然会发明新的方式来讨论,比如一个写得好的
00:12:01智能体技能应该是什么样的,或者如何设置一个好的 agents.md 文件等等。
00:12:07我们会一直讨论下去,直到我们完全退出这个环节,
00:12:14直到人类什么都不需要做。
00:12:16但我认为那一刻不会到来,我也当然不希望那一刻到来。
00:12:22但在那之前,对你所从事的工作有自己的见解并在乎它,
00:12:29这绝对是一件好事。
00:12:31我认为这真的很重要。
00:12:33所以,我认为代码及其结构将依然重要。
00:12:41唯一的问题是 AI 是否能够独立完成所有工作并生成完美的代码。
00:12:47我不知道,现在也没人能知道。
00:12:50你无法预知未来。
00:12:53但总的来说,作为一个人,你应该在乎你所做的事情。
00:12:57我认为,这正是那些能获得巨大成功并享受工作的人,
00:13:03与那些不能的人之间的区别。