本文为 澎湃号·湃客 × 码客人生 联合出品
作者 | 杨淼
编辑 | 王恒婷
“我预测,最迟到2027年,AI就能代替50%的程序员。”
藏青色的猫在硅谷干了七年。他说根据内部消息,连谷歌这样的科技公司都在计划裁员,身边8年经验的senior(高级工程师)都找不到工作。整个行业的价值在快速塌缩,需求变少,涌入行业的人却越来越多。
程序员苦练技能,做到了主管、高级工程师、部门经理,免去了年龄设置的失业危机。
但他们没想到,2022年,会有一个名为“ChatGPT”的应用横空出世。
“现在写代码完全离不开GPT-4了,直接提需求,让它完成初稿。Review一下,稍微改改就可以使用,基本帮我解决掉了80%的无聊代码任务。它真是独立开发者的福音,一度让我有种错觉:GPT+一个全栈=小型开发团队。”
说出这段话的人感慨,自己说不定也要被优化了。
1024作为2的十次方,是约定俗成的程序员节日。
但今年这个节日,开发者们可能不太好过。
截至2024年10月24日,据Layoffs.fyi网站统计,英特尔裁掉约15000人,特斯拉裁掉约14000人,谷歌裁掉约12000人。
世界头部科技公司落下了AI兴起后的裁员第一刀。
生成式AI的火爆,意味着,继40岁中年裁员危机后,另一座大山——“被AI抢饭碗”的危机在缓缓向开发者们袭来。
谷歌裁掉一万人
AI兴起的风从谷歌刮来,AI失业的风也在硅谷兴起。
根据Layoffs.fyi网站统计,2022年生成式AI兴起后,1064家科技公司裁掉165269名员工。2023年,1193家科技公司裁掉264220名员工。截至2024年10月3日,这一数字为141145。
首先开刀的是谷歌。
根据谷歌最近向美国证券交易委员会提交的文件,截至2024年3月31日,谷歌拥有180895名员工。
与2023年3月底的190711名员工人数相比,减少了近10000人。
谷歌裁员,意味着大型科技企业在人工智能时代的降本增效。
在国内,就算是一个几十人的中小型科技公司,招聘需求也打上了985、211的硬性标签。
曾经高考志愿被偏爱的理工科计算机、大厂眼里的王牌专业成为了潮水退去后的裸泳者。
一个常年驻扎硅谷的资深程序员表示:“AI现在已经可以完成三个普通程序员的工作量了。”
曾经需要在搜索引擎不断检索的运行环境问题,现在用AI基本就可以生成具体的指令。
GPT有多强?一张手绘的草图也能进行深度分析。
知乎答主平凡做了一个实验,把手写的指令上传到GPT-4V上,并且让它根据这个生成html,从结果上看,它能读懂,并生成了html代码。
图源:知乎平凡
渲染后,得到了下图。
这意味着,AI已经可以像初级程序员一样识别、运行、生成代码。
同时,AI集合了搜索引擎和自动化生成的功能。以前程序员用搜索引擎,是撒网式寻找答案,需要自己在各个网页社区里去检索、整理。而AI可以针对特定问题和具体场景去提供一对一的解决方案。
比如,代码运行报错后,一般只给一些简单的提示,程序员不知道是什么原因导致这个错误,也不知道解决这个错误的办法。传统的路子就是用搜索引擎来搜索答案。但不同的运行环境给出的解决办法不具有通用性,有时候一周都可能困在一个bug上。
使用AI后,AI可以系统学习开发语言的各种原理和细节,基于提示词给出具体的解决办法。虽然不一定100%可用,但是比搜索引擎效果更好,通常只需要花费几分钟就能解决问题。而使用搜索引擎,这个时间则从几分钟到几周不等。
AI解放了码农的双手,也带给码农另一种危机。
随着技术不断精进,程序员将何去何从,成了智能涌现下一道难解的谜题。
写代码的人,被代码代替
“Prompt工程师的时代已经降临了。”
微博高级工程师胡波最近做了一个实验,尽量一行代码不写,仅仅通过提示词,让AI完成一个相对简单的业务需求。只要给出的文档足够明确清晰,几经迭代,还真实现了。
AI解放了程序员的双手,成了一种嵌入式的习惯。
不少受访开发者表示,与其说是担心AI会不会代替他们,倒是他们担心AI会不会突然消失。
毕竟解决那些简单重复的代码与bug,在AI的帮助下,效率直接提高了50%。
某互联网科技公司技术总监说,AI是躲不开的,现在不拥抱,就会成为遗老遗少。
比如有一次他有100个PDF的发票,要制作一个表格,列出每一个发票的日期、事项和金额。
手动操作的话,需要至少1小时,写个代码的话,也需要半个小时。
这时候他把这些文件扔给AI,并在prompt处提出自己的需求,1分钟内AI就自动生成了表格,并给出了总数,他仅需要核对一些表格即可。
除了辅助代码,AI agent也在向我们招手。
2024年,Cognition Labs推出了全球首款具备独立端到端开发能力的AI软件工程师Devin。这是由一个奥林匹克大满贯的华人团队设计研发出来的。
一经出世,就引发了巨大的波澜。
据悉,在SWE-bench测试中,Devin 在没有人工指导的情况下独立解决了13.86%的案例。相比之下, Claude 2只能解决4.80%,SWE-Llama-13b和GPT-4可以分别处理3.97%和1.74%。而且,后面这些模型都需要人类告诉它哪些代码有问题。
我们采访了将近十位有着十余年经验的资深程序员,看看他们是怎么定义Devin的。
“这是一位天才级别的程序员,其有的知识超过了以往所有的AI程序员。”
“全栈技能和自主学习能力这个还是非常惊艳的,应该达到人类中高级程序员的水平了。”
“Devin解决问题的能力高达13.86%,远超当前最先进的模型。”
确实如此,作为第一款端到端的全栈人工智能工程师,Devin不仅通过了国外一家AI公司的业务面试,还能够在upwork平台上扮演人类开发者自动接单,基本满足了所有客户的需求。这也警示着,AI和普通程序员一样,在就业市场有着同等的竞争力。
随着技术的开源与发展,越来越多的企业会选择降本增效,将不具稳定性的人力成本投入到可控的机器成本上。
尽管现在离真正的AI agent还很远,但是随着各种生成式AI产品的出现,一个人机共生的开发者时代,正在向我们招手。
开发代码的人,被代码代替。码农与AI的大战,也一触即发。
人类与AI的博弈,还在继续
程序员的世界里总流传着一个恐怖的传说,名为“代码屎山”。
祖传代码被称作屎山,其本质是一个抽象概念。这种概念指的是那些从上一代开发者那里继承来的处于完全混乱状态的代码。这些代码中包含了大量的累加、冗余和完全没有用的代码,使得这些代码几乎看不懂。
屎山代码牵一发而动全身,各个部分之间的耦合度非常高,改动一处就可能出现更多未知或棘手的bug。就单个代码而言,类似于GPT一样的AI很有可能无法准确理解业务场景和调整诉求,而多个代码的堆叠又可能超过大模型token的承载数量,无法输出符合预期的内容。
蜂鸟网CTO认为,在面对庞大又无序的代码bug时,人类的经验和思维尤为重要,这是机器智能目前无法做到的。
“软件开发不仅仅是编写代码,它还涉及需求分析、系统设计、用户体验、业务逻辑处理等多个方面,这些都需要人类的直觉、经验和创造性思维。”
机器的思维是片段式的,切面的,没有人类逻辑的连贯性和一致性。让机器去处理代码屎山,无疑是让盲人摸象、愚公移山。
AI不仅难以处理代码屎山,甚至自己也在制造。
今年4月,一家名为GitClear的公司分析了2020年到2023年近4年的1.5亿行代码,发现GitHub Copilot加入后,代码流失率(即代码被返工修改、删除的情况)出现了显著上升:在2020年至2022年期间,每年只有3%-4%的代码流失。相比之下,到2023年,这一数字增长到平均5.5%。
GitClear认为,程序员在短时间内无法被代替,现在AI的算力和逻辑还不能达到自主决策、设计、修改的效果,只能写一些重复性强的简单代码。
也有很多程序员表示,当你给ChatGPT一段复杂的指令时,它甚至会为了完成任务而制造幻觉,虚构一段根本就不存在的API函数。
这意味着,在AI达到agent能力之前,人类程序员还有很大的优势。
在新西兰开发者杨中科看来,AI替代程序员不过是杞人忧天。他认为,AI最多就是一个更智能的搜索引擎罢了。就目前的科技,连人脑都没研究明白,我们不必去畏惧一堆代码和大语言模型。
“因循守旧者,才会恐惧AI。”
作为程序员,最基本的素养就是拥抱变化。
当蒸汽时代走向电力时代,马被汽车替代,马夫被驾驶员替代,但是这个职业背后的需求并没有消失。
未来的世界不是一个AI代替程序员或程序员博弈AI的世界,而是一个人类积极认识AI、拥抱AI的世界。
人工智能也许会替代一些程序员的工作,但是也会诞生更多的其它工作,这些工作的核心逻辑并没有变化。
程序员如果能主动拥抱AI,或许可以借助AI来产生比以往更大的价值。
还没有评论,来说两句吧...