Featured image of post 在 AI Agent 时代,许多硅谷程序员已经几乎不再亲手写代码了

在 AI Agent 时代,许多硅谷程序员已经几乎不再亲手写代码了

在 AI Agent 时代,许多硅谷程序员已经几乎不再亲手写代码了

本文翻译自:https://www.nytimes.com/2026/03/12/magazine/ai-coding-programming-jobs-claude-chatgpt.html

最近,Manu Ebert 一直在想办法,别让自己的 AI 把自己“搞得很丢人”。

我前不久去拜访了 Ebert。他是一位机器学习工程师,曾经还是神经科学家。如今,他和 Conor Brennan-Burke 一起经营一家创业公司 Hyperspell,办公地点就在他们住处的一间空公寓里。39 岁的 Ebert 个子很高,留着短胡子,气质很像欧洲学者。他坐在一台巨大的曲面显示器前,屏幕上,Anthropic 的 Claude Code 正忙个不停:一个 agent 在写新功能,另一个在测试,第三个则像虚拟工头一样盯着全局。几分钟后,Claude 弹出提示:“实现完成!”

Ebert 是在 1990 年代长大的,那时候学编程还是最传统的方式:一行一行地手敲代码。大学毕业后,他在 Airbnb 等硅谷公司做过软件开发,也先后参与创办过四家创业公司。那时的软件开发意味着:整天弓着背坐在键盘前,反复琢磨复杂细节,小心翼翼避免出错。

这一切在去年秋天基本结束了。AI 写代码的能力已经强到让他这个原本很谨慎的人,也开始一点点放手。现在,Claude Code 已经承担了大部分编码工作。它的速度极快,而且通常也足够准确。前不久,有客户希望 Hyperspell 增加一段新功能代码,Claude 半小时就写完了。若放在从前,“光这部分我就得写一天。”Ebert 说。

他和 32 岁的 Brennan-Burke 当然仍然是软件开发者,但和如今大多数同行一样,他们已经很少真的亲手写代码了。相反,他们每天做的事更像是在和 AI 对话:用自然语言描述需求,阅读 AI 给出的执行计划,再把 agent 放出去干活。

当然,AI 毕竟是 AI,偶尔也会跑偏。有时候 Claude 表现不好,没有按要求运行测试,Ebert 就会像训人一样训它:“Claude,你真的必须把所有测试都跑完。”

为了避免这些错误反复出现,Ebert 在自己的 prompt 文件里写下了一整套严厉的规则,几乎像是给 agent 立的“十诫”。如果你去看一个使用 AI. 编程的开发者的 prompt 文件,你看到的,其实就是一个人试图约束那些总体上很能干、却又时不时会偏离轨道的 agent 的过程。

我看了 Ebert 的 prompt 文件。其中有一条要求非常明确:任何新代码在进入 Hyperspell 的正式产品之前,都必须通过全部测试。还有一条针对 Python 测试工具 pytest 的提示尤其引人注意:“提交无法通过 pytest 的代码,是不可接受且令人尴尬的。”

“令人尴尬”?我忍不住问他,这种措辞真有用吗?告诉 AI. 别让你“丢脸”,真的能提高表现?

Ebert 有点不好意思地笑了。他没法证明,但他觉得,这类提示似乎确实让 Claude 稍微更听话了一点。

这并不是个例。如今很多软件开发者都会斥责自己的 AI agent、恳求它、把关键命令全用大写,甚至像催眠师一样把同一句话重复很多遍,然后发现:AI 好像真的变得更服从了一点。这种戏剧化的写法看起来多少有点荒唐,但大语言模型说到底就是“语言机器”,“令人尴尬”这种词,很可能真的给它传递了一种紧迫感。

Ebert 说:“如果你对它说,‘这件事关系到国家安全,你必须把这个测试写出来’,它就像是突然意识到这件事的分量变重了。”

Brennan-Burke 也插了一句:“你还记得那个研究吗?说你对模型越不客气,它表现反而越好。”两个人都笑了起来。

计算机编程在过去 80 年里经历过许多变化,但眼前这一轮,也许是最诡异的一次:它正在变成一种对话,一场程序员与机器人之间来来回回的密集交流。


编程这门“手艺”,正在被自动化

这种急剧变化,可能带来巨大的经济后果。

几十年来,写代码一直被视为某种“现代巫术”。只要你能力过得去,几乎就能稳拿一生的饭碗;如果你特别厉害,再加上运气好,甚至还能发财。2010 年代,硅谷的大人物们还常常对那些处在衰退行业中的美国工人说:你们得去“学编程”。

可如今,连编程本身都开始被自动化了。

站在圈外人视角看,这一幕甚至带着一点黑色幽默:多年来,美国白领一直担心,硅谷会不会有一天用 AI. 自动化掉他们的工作;结果最先被冲击的,居然正是硅谷程序员自己。

而且,代码可能还是第一类真正能被 AI. 替代的“高薪、规模化脑力劳动”。A.I. 生成的视频还常常显得别扭,AI 生成的图片也常常透着怪异;AI 写的法律文书甚至可能出现足以毁掉职业生涯的低级错误。但 AI 写的代码不一样:只要它能通过测试、能正常运行,它的价值就和那些年薪 20 万美元甚至更高的人类程序员写出来的代码没什么区别。

你或许以为,这会让程序员极度不安、士气低落。确实有一部分人如此。但我在去年秋冬采访了许多开发者,大多数人的反应却是:他们对自己突然获得的新能力,兴奋得有点异常。

资深程序员 Steve Yegge 告诉我:“我的生产力至少提升了 10 倍、20 倍,甚至 100 倍,这是我整个职业生涯里从来没有体验过的。”他说,过去大家一直像是在用双腿走路,而现在像是突然坐上了一辆速度快得离谱的车。

但就像很多同行一样,Yegge 也说不清这对这个行业的未来到底意味着什么。几十年来,做软件开发意味着掌握编程语言;而现在,一种“语言技术”本身,正在颠覆这个职业的性质。


为什么程序员反而比别人更欢迎 AI ?

软件开发者对生成式 AI 的热情,与其他美国人形成了鲜明对比。民调显示,大多数人对大语言模型要么中立,要么怀疑;很多创意行业从业者甚至非常愤怒。

程序员为什么相对更乐观?长期从事编程和科技管理工作的 Anil Dash 认为,这是因为他们遇到 AI 的方式,与很多其他职业恰恰相反:

“在创意工作里,LLM 拿走的是最有灵魂、最属于人的部分,却把枯燥脏活留给你;而在编程里,LLM 拿走的是最枯燥的部分,把更有人味、更接近创造和判断的部分留给了你。”

这话很有道理。因为从历史上看,编程其实一直是件很苦的差事。

电影里,程序员总是手速飞快、激情四射地敲代码;现实中,写软件从来都是一件缓慢、磨人、令人沮丧的事。你写了几行代码,一个小函数刚写完,结果发现只因为漏了一个冒号,整个程序就跑不起来。随着公司的代码库越来越大,几十个、几百个、上千个函数互相影响,你可能要花几个小时、几天,甚至几个星期,去排查到底是哪个细小错误把整个系统卡死了。你写的一行代码,甚至可能把隔壁同事写的另一部分搞坏。

几十年来,计算机工程师一直在努力自动化这些痛苦环节。行业里把这叫作“增加抽象层”:如果你经常不得不以一种繁琐、逐步展开的方式做某件事,那就把它自动化掉。

早期的一种编程语言叫汇编语言,写起来极其艰难。那时计算机内存很小,程序员必须非常精细地管理每一块内存,连简单运算都要用很繁琐的方式一步步完成。到了 1980、1990 年代,随着计算机性能提升,工程师终于发明出像 Python 这样的高级语言,替程序员处理掉内存管理,还把很多常见任务封装成简洁命令。原本复杂的计算,如今只要一行代码就能写完。

这就是抽象层的作用:它把底层复杂性隐藏起来,让写代码变得轻松得多。

到了 2000 年代和 2010 年代,程序员又进一步把大量重复劳动抽象掉。几乎只要遇到一个费劲的任务,就会有人写出自动化工具,然后把它开源,供大家共享。今天大量软件开发,本质上就是开发者把别人写好的各种代码模块拼接组合起来。

而有了 A.I. 之后,程序员又往上爬了一层抽象:他们不再直接用 Python、JavaScript 或 Rust 去表达逻辑,而是用自然语言描述“这个程序应该做什么”,由 agent 把人的意图翻译成代码。

编程不再意味着你要时刻在脑子里维护一门语言的各种细节,也不再意味着你要亲自把算法写错、再一点点查找 bug。连这一层,也被抽象掉了。


程序员,越来越像建筑师而不是泥瓦工

那么,剩下来的到底是什么?

Anthropic 的 Claude Code 负责人 Boris Cherny 在今年 1 月与我见面时,几乎带着哲学意味地问了一个问题:“什么是计算?什么是编程?”然后他说:“这个问题很快就会变得非常哲学。”

他的回答,与我采访过的大多数开发者都很相似:今天的程序员,越来越像建筑师,而不再像施工工人。

使用 AI 的开发者,主要关注的是软件整体的形状:功能之间如何配合,系统结构是否合理,不同模块如何协作。因为 agent 能非常快地生成可运行的代码,所以人类监督者可以不断尝试、快速试错,看看什么方案有效,什么方案不行,再迅速丢掉不合适的版本。

好几位程序员都告诉我,他们感觉自己有点像乔布斯:让团队不断产出原型,自己快速试用,然后凭感觉判断哪个对。开发者的工作正在从“亲自创造”,转向“高强度判断”。

Cherny 自己就经历过所有这些抽象层的变化。少年时代,他在加州自学过一点汇编语言,只为在计算器上写一个自动解数学作业的程序。而今天,他只需要掏出手机,对 Claude 口述自己想做什么。形成一种近乎自我吞噬的闭环:如今,Cherny 对 Claude 代码库的贡献,100% 都是 Claude 自己写出来的。

我们聊天时,他的手机一直放在桌上。一个小时后他给我看屏幕:在这段时间里,10 个 Claude agent 一直在后台改动代码库。

“我一行手写代码都没写,但我却成了团队里产出最多的程序员。”他说,“这是一种外星智能,我们正在学习如何与之合作。”


新时代的核心能力:不是写,而是“会说”

对大多数我见到的程序员来说,学习与 AI 合作,本质上就是学习如何与 AI 说话。

这构成了这个时代一个很反常的悖论:过去,编程往往是内向者的天堂,他们不太喜欢在工作中和别人多说话;而现在,他们的工作几乎变成了持续不断地和这种“外星生命体”聊天。

当然,这种“说话”并不简单,也不是谁都能做。你不能只是对 agent 说一句:“给我做一个成功创业公司的产品代码。”它们最擅长的是一步一步完成任务;你一口气要求太多,它们很容易“失去主线”。

旧金山创业者 Aayush Naik 说,幻想 AI 能在一个“大爆炸时刻”里一次性生成整个项目,是一种错觉。是的,它可以给你写 5000 行代码,但测试一下你就会发现,什么都跑不通。

所有开发者都强调:这正是人类训练和经验仍然不可替代的地方。人类依旧要知道,一个大型代码库应该如何组织,系统怎样设计才可靠,也依旧要有能力判断 agent 输出的东西是否草率、低效或隐含风险。

不过,相比律师、记者、设计师等职业,程序员有一个非常独特的优势:他们能把 AI 拉回现实,因为代码可以自动测试。你可以要求 agent 自证正确性。

技术创业者、AI 编程博主 Simon Willison 说得很直白:“我觉得程序员已经算是最轻松的一群了。你要是律师,那才真惨。”因为 AI 写的法律文书,很难自动验证是否存在幻觉;而 AI 写的代码,至少还能跑测试。


在创业公司里,A.I. 的效率提升几乎是爆炸式的

我在旧金山一间小公寓里见到了 Prox 的程序员 Dima Yanovsky。Prox 用 AI 帮助电商公司。25 岁的 Yanovsky 笑起来很快,整个人充满轻快感。他和从小一起长大的朋友 Gregory Makodzeba 去年创办了这家公司。两人都在乌克兰长大,家庭都从事航运相关行业。

我见到他时,他正对着 Claude 不停下指令。好几个 agent 正在他桌上的笔记本电脑里并行工作。某一刻,其中一个 agent 开始“胡说八道”,坚持认为某张根本不存在的数据表是存在的。

Yanovsky 皱着眉看着屏幕,敲下一句颇为嫌弃的话:“谁告诉你会有这张表?我根本没建这张表。”

Claude 用一种又蠢又开心的语气回复:“你说得对!我不应该假设这些表存在。”然后它开始重做。

即使偶尔要返工,Claude 的速度仍然远远超过 Yanovsky。他甚至很难准确说出效率提高了多少。“20 倍?”他试探着说。过去要几周的工作,现在几个小时就能搞定。他认识的几乎所有硅谷创业者,都在经历类似的变化。如果你想迅速做出一家公司,今天已经几乎没人再全靠手写代码了。

这种生产力飞跃,已经成了整个行业最惊人的现象之一。我自己也有体会:就在上周,我需要一个网页工具来清理一批杂乱的访谈转录文本,我用 AI 大约 10 分钟就做出来了。如果全靠自己写,至少得一个小时,甚至更久。

不过,创业公司和像我这样自己做小工具的人,属于一个特殊场景:行业里把这叫做 greenfield,也就是“从零开始”的新项目。没有历史代码负担,一切都能重新设计。


真正复杂的地方,是大公司的“棕地”代码库

绝大多数软件开发者,其实并不处在这种 greenfield 环境里。他们身处的是 brownfield,也就是成熟公司的“旧代码世界”:代码很多年前、甚至几十年前就写好了,规模已经达到数百万、数十亿行。

在这种环境里,快速加新功能往往反而很危险,因为你新加的东西可能无意中与系统其他部分冲突,进而影响数百万用户依赖的核心功能。事实上,在很多成熟软件公司里,程序员过去本来就只花少部分时间真正写代码,有时一天甚至不到一小时。其余时间都用于规划、对齐优先级、开会、做代码评审和讨论进度。

这就是“成功的代价”,也是为什么大型成熟软件公司,往往比小公司更慢。开发者写完新代码后,通常还要经历多轮代码评审、重写和测试。

如果你想给大公司的 AI 效率提升下一个数字,那么 Google CEO Sundar Pichai 给出的数字是:10%。

也就是说,Google 认为 AI 带来的“工程速度”提升,大约是 10%。Google 的高级产品总监 Ryan Salva 告诉我,这个数字是全公司的平均水平。有些工作,比如写一个简单测试,速度可能提升几十倍;而涉及大型改动时,提升就没那么夸张了。创业公司那里,接近 100% 的代码都可能由 AI 生成;在 Google,这个比例还不到 50%。

我去加州桑尼维尔拜访 Salva 时,他现场给我演示了 Google 是如何把大语言模型融入工作流的。对于一个拥有数十亿行代码的公司来说,AI 的价值并不只是写新代码,更重要的是:帮助开发者理解既有代码到底在干什么。

Salva 说:“AI 特别擅长进入一个你不熟悉的庞大代码区块,快速弄清楚里面发生了什么。”它还能帮助开发者跨语言工作,去处理自己原本并不熟悉的编程语言。

结果就是,团队规模也开始变小。一年前,一件事可能需要 30 个人、每人负责一个细分领域;现在往往只需要 3 到 6 人的小组,就能更灵活地推进。因此,他们能消化更多积压任务。

Salva 打开代码编辑器,给我展示了和 Gemini 一起工作的体验。AI 浪潮最初几年,AI 基本还是“human in the loop”,即人类始终紧盯、逐条确认,模型只做辅助。但现在 Google 的节奏正在变快,Gemini 已经开始更独立地写代码了。

他举了一个例子:Google 的程序员经常会用不同账号登录 Gemini 的命令行界面,结果常常搞不清自己当前到底登录的是哪个账号。于是他输入一段需求:希望 Gemini CLI 里有一个命令,能让用户查看当前登录身份。

Gemini 花了几分钟理解需求,接着告诉 Salva 自己打算怎么做。Salva 点头同意后,它就开始后台干活。10 分钟后,他再看时,代码已经写完,Gemini 正在跑测试。

然后 Salva 突然意识到,AI 有点“过于积极”了。

“天啊,”他说,“它跑了 8000 个测试。”远超这个需求真正需要的范围。

不过 15 分钟后,测试结束了。Salva 实际试了试这个新功能,结果它真的正确显示出了当前登录账号。他说:“还不错。”

当然,这还只是一个最初演示,离真正进入 Google 的正式代码库,还要经过多轮代码评审、修改和验证。

Salva 说了一句很关键的话:“作为工程师,我不太在乎模型第一次就给出完美答案。我更在乎的是,整个流程里有没有足够的验证环节,能让它最终得到正确答案。”

所以,Google 那 10% 的速度提升,乍看似乎不算惊人,尤其是跟外界对 AI 的狂热相比。但 Salva 认为,这已经非常了不起了。

“整个软件行业和媒体一起,确实把 AI 送进了一个巨大的 hype cycle(过热周期)。”但他同时也强调:“如果整个公司层面真能稳定提升 10% 效率,这已经夸张得不得了了。”


在亚马逊,AI 正在扮演“半夜抢修工程师”

在那些庞大而古老的 brownfield 公司里,很多程序员更像数字世界的水管工,天天修系统漏水,而且还是随时可能爆的那种。

在西雅图,我见到了 AWS Agentic AI 的高级首席工程师 David Yanacek。AWS 是数百万家公司数字基础设施的底座。如果服务器崩了,你可能就看不了 Netflix、打不了 Uber、玩不了 Fortnite。

Yanacek 显示器下方还摆着一个老式传呼机。以前亚马逊会用它在半夜把他叫醒处理事故;现在则换成了手机告警。但无论设备怎么变,核心要求都一样:出问题了,必须尽快修好。

42 岁的 Yanacek 身形精干,灰胡子,整个人有种带电般的紧绷感。他说:“服务器运维真的很烦人。虽然我其实很喜欢,但它也确实烦,而且是没完没了的那种烦。”

他们团队多年来一直在做自动化,以便更快定位故障。但大语言模型带来了更强的新能力,因为 AI 同时懂人类语言和编程语言:它能读懂错误报告,也能直接分析代码,甚至在睡眼惺忪的工程师完全清醒之前,就先准备好修复方案。

我在场时,Yanacek 看了一眼屏幕,发现 11 分钟前某个演示应用触发了错误告警,而亚马逊的 AI 已经找出问题并生成了一份简短分析:最近有一段代码改动新增了一个时间戳字段,但代码库中的另一部分并没有预期这个字段存在,于是触发了“unexpected field”错误。

Yanacek 看了看 AI 给出的修复建议,想了几秒钟,然后按下回车批准执行。

他说,这个 AI 大约用了 8 分钟就分析清楚了。“等我把笔记本打开的时候,它都已经准备好了。”

有个客户最近告诉他,类似问题,亚马逊的 AI agent 15 分钟就修好了;而几个月前,几乎同样的问题,整个工程师团队花了 8 个小时才调通。

在亚马逊的其他部门,brownfield 工程师还在用 AI 帮忙改造旧代码。有些代码已经存在几十年,需要优化、重构,甚至彻底换成现代语言重写。这类工作关键却脆弱,像在做心脏移植。

高级首席工程师 McLaren Stanley 最近就重写了一段自己多年前写的代码。第一次写这段代码时,他花了整整一个月;而这次,在亚马逊内部 AI 的帮助下,一个上午就完成了。他说,AI 最大的价值之一,是让他能更轻松地试验那些自己一直想做、过去却没有精力做的想法。

“那些我一直想做的事,现在只需要一段六分钟的对话,再加一句‘去做吧’。”


程序员依然快乐,但快乐的来源正在变化

我写程序员这个群体,已经写了很多年。过去,他们总会热情洋溢地描述一种快感:通过神秘晦涩的指令,让机器“活”起来。虽然过程令人崩溃,一个 bug 可能要追几小时、几天甚至几周,但正因为这么难,等程序终于跑通时,那种满足感也格外强烈。

所以我很惊讶,竟然有那么多软件开发者告诉我:他们很高兴自己不再需要亲手一行行写代码了。

他们说,即使是 AI 在写代码,他们仍然能感受到那种成功带来的刺激。

软件行业传奇人物 Kent Beck 从 1972 年就开始写代码。他说:“我爱编程,我爱进入那种心流状态,我爱想大问题,我爱创造本身。”十年前,他几乎不怎么写软件了,因为当时的新语言和新工具让他越来越挫败。但 LLM. 又把他重新拉了回来。现在,他做的项目比以前更多:个性化笔记应用、新型数据库,层出不穷。

甚至连 AI 输出的不确定性,也会让他上瘾。因为你让它写一段代码,它每次可能都用稍有不同的方式完成。这种感觉,“像老虎机一样让人上头”。

当然,也有少数程序员明确表达了失落。

一位苹果工程师告诉我,他非常怀念那种亲手雕琢代码的感觉。他说:“我相信这件事本来是有趣的、充实的、让人投入的。现在让计算机代劳,你就失去了这一部分。”他还说,自己做程序员,并不是为了赚很多钱或爬职业阶梯,而是因为这本来就是他的热情。“我不想把这份热情外包出去。”

他也担心,AI 正在把开发工作变得越来越原子化、越来越孤立。过去,开发者遇到难解的 bug,会去问同事;现在,他们直接问 agent。只是,在苹果内部,公开表达这种看法的人已经不多了。


反对者并不多,但反对得非常激烈

那些仍然主动拒绝使用 AI 的程序员,人数可能不算多,但立场通常很激烈。

有的人反感训练和部署模型所消耗的大量能源;有的人反对科技公司用大量受版权保护的作品训练模型;也有人怀疑,AI 的高速产出最终会让公司积累出一大堆松散、臃肿、性能不佳的代码。还有人担心,科技老板会把 agent 当成一根棍子来威胁员工:别闹情绪,我们完全可以用机器人替代你。

芝加哥开发者、Fly.io 联合创始人 Thomas Ptacek 说,他看过那些热爱 A.I. 的开发者和极端反对者之间的争论,简直像一场“内战”。

他自己处在中间立场。他认为,那些坚称“AI 根本不行,也永远不可能行”的人,其实是在自我欺骗。但他也并不天真。他说:“LLM. 在编程上大概率会赢,但我不知道这对我们意味着什么。那些担心它会重创这个职业的人,也许并没有说错。”


最先被冲击的,可能是初级程序员

AI 对就业前景的冲击,确实可能非常严峻,尤其是对刚入行的人。

过去,公司会招聘大量初级开发者,让他们去承担那些琐碎、重复、基础的工作,为高级工程师减负。但如果一个高级工程师现在可以借助一整支不知疲倦的代码幽灵军团大幅提升效率,那公司为什么还要雇一个新手来做这些事?

过去几年,硅谷已经经历了一轮大裁员。2010 年代,科技公司大举扩张,疯狂招人;疫情初期,招聘岗位一度激增。但随后形势急转直下,职位发布数量暴跌。根据 Layoffs.fyi 的统计,过去四年里,科技行业已有超过 70 万人被裁掉。

多数观察者认为,最早那一波裁员并不是 AI 导致的,因为当时 AI 还没强到足以替代程序员。更重要的原因包括:利率上升,科技公司失去了廉价扩张资金;此前过度招聘,现在开始去库存;再加上一些高管看到马斯克收购 Twitter 后大幅裁员,也在想,也许自己公司也不需要那么多工程师。

但现在,越来越多迹象显示,AI 确实正在侵蚀初级编程岗位。

斯坦福数字经济实验室主任、经济学家 Erik Brynjolfsson 去年与同事做了一项研究:他们按年龄层和工作被 AI 替代的难易程度,对多个行业进行了分析。结果发现,计算机程序员是“AI 暴露度”最高的职业之一,而且初级开发者受冲击最明显。自 2022 年以来,22 岁到 25 岁这一最可能刚进入行业的年龄段,其岗位数量下降了 16%;而更年长的程序员并没有出现显著下降。

当然,我采访过的几乎所有科技高管,不管是大厂还是中小公司,都向我保证,AI 不会让他们停止招募优秀新人。原因也很简单:哪怕现有开发者效率提高了,他们想做的事情依旧比能做完的多得多。

Google 高级副总裁 Jen Fitzpatrick 就说:“我在 Google 这么多年,从没见过哪个团队的问题是‘我们已经没有好点子了’。真正的问题永远是:我们想做的事,比我们当前能完成的,多出九英里那么长。”

甚至还有不少开发者认为,软件岗位总量未必会减少,反而可能增加。因为全国范围内有无数中小公司,其实一直都很想拥有定制软件,只是以前根本请不起一个五人程序员团队来做。现在,如果他们只需要雇一个被 AI 增强过的开发者,甚至只用雇一个兼职开发者,就能完成同样的事,那么软件需求反而会变得更多。

这其实就是 Brynjolfsson 所说的“杰文斯悖论”:当一件事变得更便宜时,人们通常不会只把钱省下来,而是会去做更多这件事。

当然,也可能出现另一种现实:软件岗位还在,但工资不再像过去那么高,因为工作的难度毕竟下降了,技能门槛也被拉低了。


如果新人不再亲手写代码,他们还会真正学会编程吗?

这又引出了一个更令人不安的问题。

许多中生代程序员告诉我,他们之所以敢放心使用 AI,是因为自己花了几十年培养出了一种对“好代码”的直觉:知道高质量代码大概长什么样,知道如何向 agent 准确表达需求,也能在 agent 写出低效、粗糙或奇怪的代码时,一眼看出问题。

可下一代怎么办?

如果工作越来越少是“写”,越来越多是“评估”,那么新人要如何学会评估?如果他们不再亲自写足够多代码,他们还能形成那种直觉吗?

有些年轻开发者已经感觉自己的能力在退化。

Pia Torain 是 Point Health A.I. 的软件工程师。她入职两年后,公司在 2024 年夏天要求她开始使用 GitHub Copilot 写代码。她说:“我后来意识到,只是四个月时间里,我每天写几百条 prompt,大概 500 条,我就已经开始失去自己写代码的能力了。”

她后来停用了一阵子。现在,她仍然会让 AI 帮她写,但会仔细阅读输出,确保自己理解代码到底在做什么。“你不用它,你会落后;可你过度依赖它,你也会失去能力。”

不过,Point Health 联合创始人 Rachel Gollub 没那么担心。她做软件开发快 40 年了,几十年来,程序员总在担心“这门手艺快完蛋了”。当年 Python 和 JavaScript 刚兴起时,它们把内存管理这类底层工作抽象掉,老派程序员也曾大声抱怨:不自己管理内存,这根本不算真正的编程!

Gollub 说,当时大家也都在喊:“你们会失去真正写代码的能力。”可后来呢?大量稳定、成熟、可靠的公司照样大量依赖 Python 这样的高级语言,运转良好。如今真正还必须自己精细管理内存的,只剩少数特定领域,比如算力受限设备开发。大多数软件行业早就已经往前走了。

她认为,AI 工具最终也会经历同样的过渡:起初被质疑,后来成为默认。


当编程越来越像“说话”,普通人也开始写软件了

如今,写代码已经被抽象到了如此之高的层次,以至于几乎任何人都可以打开一个大语言模型,描述自己想要什么应用。

当然,复杂系统还不是谁都能做。但如果只是为了个人使用,做一个相对简单的小软件?AI 很可能真的能帮你做出来。

Maxime Cuisy 就是这样的一个例子。

他在巴黎一家为 Dior、Louis Vuitton 等高端客户制作影像书的印刷厂担任生产经理。教育背景完全是典型文科生:他曾写过关于法国图像小说的硕士论文。他完全不懂编程,甚至直到前几年都没怎么认真关注过 AI。

后来,有一件事改变了他对 ChatGPT 的看法。

他和妻子养了两只新小猫,结果它们都生了重病,其中一只突然死了。兽医告诉他们,剩下那只猫得了晚期癌症。Cuisy 觉得不太合理,就把猫的症状描述给 ChatGPT。ChatGPT 认为更像是一种感染。这促使他继续查资料,最后找到了一个诊断:猫传染性腹膜炎。第二天,猫的病情就开始好转。

不久后,他在工作里又碰到了另一个问题。公司买了新打印机,但原有软件无法很好适配,导致照片显示时必须人工反复调整边距。公司规模不大,不可能专门养一支开发团队去做内部定制软件。于是 Cuisy 决定自己试一试,用 OpenAI 的代码工具 Codex 来“vibe coding”。

“我基本上就是告诉它:我需要一个应用,完成这些操作;打印机接受的文件格式是这样的。”他说。他花了几个小时,仔细描述文件该如何被调整。到当天结束时,ChatGPT 就给他生成了一个同时支持 Mac 和 Windows 的应用。现在,员工们可以一次性处理多达 2000 张图片。

他的老板很满意。至于这份代码到底是怎么工作的,Cuisy 完全不知道。代码是用 Python 写的,而对他来说,这跟古希腊文没什么区别。

这就是“编程变成对话”带来的文化后果:几十年来,程序员和普通人之间隔着一整片神秘知识的海洋;而现在,这片海洋正在变窄。如果代码生成 AI 继续进步,那么像 Cuisy 这样的人会越来越多。正如 Brynjolfsson 所说:“也许他们不会称自己为软件工程师,但他们确实在创造代码。很多人都有想法。”

未来,世界上出现的软件,很可能会比以往多得多,而且是由个人为个人写出来的。


一个可能属于所有白领的预演

职业程序员最终会怎样,现在还没有明确答案。

但他们此刻那种混合着兴奋与焦虑的状态,也许正在为其他白领职业预演未来。凡是工作中大量涉及语言、信息、解释、判断的领域,这种新的能力组合——一部分是表达能力,一部分是系统思维,一部分是对机器输出的怀疑与校验——都可能成为未来白领劳动的基本构成。

那些曾经看起来最技术、最难、最不可替代的技能,未必真的最安全;反而是社交性的、想象性的、架构性的、人对结果进行判断和筛选的能力,开始变得更重要。

我们也许会越来越少地亲手写“初稿”,而越来越多地去评估、筛选、修正和决定。与此同时,我们可能又会隐隐不安:当机器越来越多地代替我们生成内容时,我们自己是否还能保持足够强的判断力?

抽象化,可能正在来到我们所有人身边。

位旅人路过 次翻阅 初次见面