程序员会消失吗?这些互联网大佬们的观点怎么看

news2024/9/20 9:38:05

日夜敲代码开发出大模型的那群人,要被大模型颠覆了?

“基本上说,以后其实不会存在程序员这种职业了。”不久前百度董事长李彦宏在一次电视节目中大胆预测。

类似地,近日英伟达 CEO 黄仁勋也在公开场合再次提起“编程无用论”,“你只需要看看YouTube,看看所有使用提示工程(prompt)的人,所有孩子正在用它(AI)做出惊人的事情。”

360董事长周鸿祎对此并不认同。他很快反驳并预测:程序员热十年内不会减弱。“尽管未来人人都会用电脑,所谓人人都是程序员,但不同的人用电脑创造的产品完全不一样,AI 时代更需要计算机专家和程序员,他们可能是各行各业最有发言权的。”

就在业界展开辩论之际,3月12日晚的大洋彼岸,初创公司Cognition发布了首个AI软件工程师Devin,它目前尚未公测,但根据官方的报告,只需一句指令,就可端到端地处理整个开发项目。

加速发展的AI,或许某一天真能替代程序员?

第一财经记者采访了中美多名身处一线的程序员。他们普遍表示,尽管未来的危机感隐隐出现,但目前并不强烈。一些程序员认为,目前体验的AI离解决复杂问题还差得远,他们更多地将AI视为一个高效的“搜索引擎”。

“现在AI还没有到那种程度,等到什么时候百度不招程序员了,或许AI就可以(代替)了。”大厂程序员徐天对第一财经记者说。

程序员革程序员的“命”

李彦宏的观点并非没有依据。用AI生成代码已经应用在百度的工作流程中。去年11月的一次公开场合,他曾透露目前百度有20%的代码是由AI来完成,并且这个比例正在不断增加中。

黄仁勋也从技术演进角度做了进一步解释:在未来的10年里,英伟达将会把深度学习的计算能力再提高100万倍,从而让AI计算机不断训练、推理、学习、应用,并持续改进,未来不断将超级AI转变为现实。

ChatGPT推出至今,AI究竟能帮助人类程序员做什么?

多名程序员告诉第一财经记者,以往用谷歌等搜索引擎寻找解决方案,但问GPT3.5或GPT-4,可以在一分钟内解答,并且很多答案质量比搜索引擎搜索更好。自ChatGPT推出,大模型就开始替代人工检索。

作为大厂一线的程序员,徐天现在每天都会用AI。“写代码的时候会用到很多库,有时候一些库忘了,这个时候可能懒得搜,就用比较大白话的自然语言先和AI说一下,我再从它的结果里找一些关键词去搜索引擎搜,就比较省力。”他解释,用比较白话的叙述去问搜索引擎,可能问不到结果,但大模型已经可以做到。

从业8年的游戏程序员郑嘉也会在每周使用几次AI,他将其当作一个新型的搜索工具,能提高一些效率。

“比如之前我有一个功能会用到一个算法,要把一个公式写成代码,不想自己去再去推演一遍或者去查,就直接问AI能得到结果,可以节省很多时间。”郑嘉解释,搜索可能效率更低,这个功能很少人做可能网上不会有,而问AI可以直接得到一个最优解,就非常大地提高效率。

“在知识性问题上,GPT-4有不错的上下文理解能力,可持续追问,而不用反复用搜索引擎检索。引擎中的函数实现也能直接丢给GPT-4,GPT-4大概能理解并给出意见,数学运算也能给出精确解释。”周闻涛告诉记者,他是一名游戏开发者,自去年ChatGPT推出后就常用大模型辅助工作,并试探大模型能解决代码问题的边界。

据周闻涛判断,GPT还能协助方案设计,但无法解决技术细节的问题。方案设计后续还要跟各方对齐需求,这部分GPT无法介入。长文本理解能力也有问题,一个项目的代码库可达几百万行,新发布的Claude 3三个模型支持100万token上下文输入。若长文本理解能力不足,意味着AI无法完整给出适配于项目的代码。

“程序员的工作自上而下包括业务需求分析、架构设计、功能开发、测试、性能优化、安全性等。现在功能开发和测试已经能看到AI的影子,主要起到辅助作用,性能优化方面,大模型输出的很多代码便已经过优化。” 陈斯对记者表示。

陈斯在国内头部互联网公司工作,工作内容包括研究大模型应用落地,工作约6年来,所做工作从产品侧如何接入AI功能,到如今关注大模型应用, “或许未来有一天大模型能理解整个项目的代码也说不定。”

他认为,大模型在认知层面体现出来的水平,已经能辅助程序员和文案人员做很多工作了,例如写前端UI甚至写项目框架,广告文案素材也能生成具有吸引力的图片。

不过在写底层代码方面,AI目前能发挥的空间还十分有限。在硅谷工作多年的程序员Jason接受第一财经采访时说,自己负责的是较底层的算法代码,AI代码还很难提供工作上的辅助。

Jason认为,相比AI,人类更能够对于代码的结果把关,例如,在排查代码错误时,自己亲手编写的代码往往能够更快地定位问题所在,而试图理解并修复AI生成的代码中的问题,常常是一项令人头痛的任务。此外,他对使用大型AI模型编写代码持谨慎态度,还出于对安全因素的担忧。在借助第三方大型模型编写代码时,他担心可能会不慎泄露企业的商业机密。不过他依然认为,长远来看程序员这个职业确实有可能会因AI而消失。

火石控股董事长、风险投资人吴渔夫

火石控股董事长、风险投资人吴渔夫也在思考程序员的职能变化,他投资或孵化了一些互联网和游戏团队,也做过游戏制作人。

他对记者举例,在游戏研发技术小组里,有三个等级的程序员,初级程序员会负责游戏中的活动和宠物系统等小系统编写,很多代码已经能用AI生成,低级程序员会被取代掉一部分。中级程序员会写战斗系统、经营系统、核心玩法等,难度较大,AI还做不到。而高级程序员做核心引擎优化,以提升游戏运转效率,例如游戏同服超2万人时如何优化运转,程序员有时还要通过汇编语言优化内存,AI难以替代程序员优化内存、优化引擎和代码的工作。

“程序员需要会用AI快速辅助写代码,形成自己的工作流,并将自己的精力放在更高等级的编码上,这是程序员的必经之路。如果做不到这样,公司会请能达到要求的程序员去替代他。”吴渔夫表示,就像20年前会开车的人不多,司机相对稀缺,如今会开车的人越来越多,市场需要的则是专业的司机。“未来市场需要的是程序员去完成更难的代码。”

无法替代人类同事

如果把AI想象成同事,能够替代人类程序员,郑嘉、徐天等程序员们认为现在的AI还远称不上合格。

例如,作为观点的另一方,周鸿祎认为,自然语言没有办法做到精准描述。他举了个例子,“我们人跟人之间沟通,比如产品经理将需求告诉程序员,程序设计师将想法告诉工程师,老板布置一个任务给公司CTO,这里面语言上还经常出现误解,理解得大相径庭,做的东西也不是所要的。”

他认为,当人真的要准确地和计算机打交道、要准确描述做一个什么东西时,可能最精准的还是一种严格符号化的语言。这也意味着懂编程的程序员同样重要。

郑嘉对此深感认同。“拿你的想法和人类沟通,人类都不一定能知道你心里面想要什么,更何况机器?”他表示,如果是问AI一个公式或者一个理性的问题,它或许能给出一个最优解,但是非确定性的问题,AI给的不一定是你想要的,很有可能是大相径庭的结果。

“比如做游戏,你要写代码去展示这个游戏怎么玩,部分地方要带给玩家不一样的感受,要通过代码去触发一些东西,让整个游戏不管从视觉还是听觉上,整体给人一种很惊奇的感受,AI理解不了你想表达的意思。”郑嘉认为,现在的AI还完全不能替代编程,尤其是大部分编程都是和业务紧密嵌合在一起,AI理解不了。

退一步来说,即便某个策划能够理解游戏的视觉、听觉或玩法的一些创新,想要AI去执行完成这些创新,也并不简单。

徐天则认为,大模型虽然对AI编程有帮助,但离解决复杂问题还是有很长的距离。

“就像造房子一样,不是只拿着榔头在那锤,首先得把怎么造的设计图构思好,然后第一步造什么,第二步造什么,怎样造它不会塌,要造多久都想清楚了,然后再一步一步地去敲。”

徐天表示,直接提一个比较宽泛的事情让AI做,那AI能做到应该还差得很远,但如果自己已经有很清楚的思路和步骤,可以试着一步一步翻译给AI听,没准可以搭积木一样慢慢搭起来,“前提是你有需求,而且你已经把这个问题拆得很细了,其次你需要想好每一步怎么向AI表达可以让它听懂。”这个搭起来的过程其实也需要程序员本身有一定能力,并且最终是人来判断AI的回答是不是准确的,AI只是变成了解决问题的工具。

在他看来,虽然现在很多人都在用AI,但用好的人少之又少,目前阶段来说, “我感觉大部分人来说可能还是偏新鲜感多一点,甚至更像是玩具的一个存在。”

程序员职业未来会消失吗?

虽然不能解决复杂问题,但AI会不会能够取代一些基础编程的程序员?当记者问到这一问题时,郑嘉表示,“放心吧,AI还没出来,这种程序员就会被淘汰了,因为现在行业里‘卷’的程度也和AI差不多了。”

他同时承认,AI确实会让行业门槛变低,提高工作效率,“我觉得如果真的会被AI淘汰,应该不是说被AI给取代了,而是因为不会用AI被淘汰了。”

周闻涛认为,业务逻辑的代码并不难写,像这种堆人力而不依赖创造力的工作,AI最容易替代。但程序始终需要有人负责,特别是监督AI不要犯错或纠正AI的错误,这部分工作依然依赖人类程序员。”

陈斯则判断,功能开发、测试和性能优化三个环节的工作,未来极大可能会被替换掉,但业务需求分析、架构设计仍是复杂工程,至少在现阶段,AI难以满足业务实际需求。而AI本身的开发者,仍有改进AI的职责,则不会被替代。

当记者把“未来程序员职业会消失吗?”这个问题抛给ChatGPT,它给出的答案是:这个职业的未来可能会发生变化,但不太可能完全消失。AI大模型的出现可以帮助简化某些编程任务,特别是在自动生成代码、自动化测试和优化等方面。这可能会减少一些传统编程工作的需求。

ChatGPT同时认为,程序员的角色不仅仅是编写代码。他们还负责设计软件架构、解决复杂问题、与团队合作以及理解客户需求等任务。这些任务需要创造性思维、逻辑思维和人类智慧,而目前的AI技术尚不能完全取代这些方面。因此,虽然AI大模型可能会改变程序员的工作方式,但是程序员仍然会继续发挥关键作用,并且需要不断适应新技术的发展。

“未来的世界是一个软件世界,但再怎么强的大模型,背后都是程序员在开发。设想到了《黑客帝国》,其母体矩阵也是程序员用源代码写的。”谈到AI与人类程序员时,吴渔夫这样说。

对于程序员之于未来的重要性,周鸿祎也给出了三个理由。一方面,未来这个世界将会被软件重新定义,需要更多计算机专家和程序员来实现。其次,大模型爆发,对程序员人才的需求会越来越大,AI时代意味着更多计算机人才、数学人才的缺口。另外,未来一定是跨学科、跨领域的跨界人才带来更多想象力和冲击力,他认为,最佳组合是人工智能+生物学。

陈斯认为,程序员的很多工作被AI替代,并不意味着整个行业没有好工种。在很多案例中,新生事物未必替代传统时代,就像移动互联网并未替代传统行业,而是提升了效率,程序员可以拥抱AI并适应改变。

周闻涛则表示,未来或不是只有AI替代程序员这个趋势,对留下来的程序员而言,更应该面对的是越来越高的要求。当AI能完成更多工作、加快更多流程,人类程序员更应该做上层的思考和设计,凸显自身价值。AI提升效率也不意味着人类程序员的工作会更加轻松,市场竞争会加快业务迭代速度,程序员的工作仍面临挑战。(郑嘉、徐天、陈斯、周闻涛为化名 来源 第一财经)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1516382.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大语言模型:Query Rewriting for Retrieval-Augmented Large Language Models

总体思路 作者首先指出大语言模型虽然取得了很好的效果,但是仍然存在幻觉和时间顺序混乱的问题,因此需要额外知识库和LLM内部知识库相结合,来修正;因此优化传统的retriever-reader的方案成为需要;目前的研究方案当中使…

记录电脑运行jar包及其他部分软件弹窗显示中文乱码的解决思路(可参考解决其他中文乱码问题)

问题:发现java运行jar包显示内容中文乱码,几天时间没有解决问题,在用电脑的过程中,也遇到了其他软件中文乱码的问题,但是从窗口复制出来的文字放到文档里面是中文 开始运行jar包,显示中文乱码,于…

alibabacloud学习笔记09

讲解SpringCloud Gateway架构流程 讲解Gateway内置的路由断言 我们在配置文件中配置的断言。 这是我们的实现类,我们在写配置文件的时候,只需要写它的前缀就可以了。 Gateway内置的路由接口定时下线实战 在这个时间之后的时间就不能再通过路由去转发了。…

【海贼王的数据航海】栈和队列

目录 1 -> 栈 1.1 -> 栈的概念及结构 1.2 -> 栈的实现 1.2.1 -> Stack.h 1.2.2 -> Stack.c 1.2.3 -> Test.c 2 -> 队列 2.1 -> 队列的概念及结构 2.2 -> 队列的实现 2.2.1 -> Queue.h 2.2.2 -> Queue.c 1 -> 栈 1.1 -> 栈的…

devops-git【部署及配置】

1、安装Git Linux做为服务器端系统,Windows作为客户端系统,分别安装Git: 【服务器端】 输入git --version 若出现 -bash:git:command not found则需要安装git;服务器端:输入yum -y install git安装完后,…

蓝桥杯(1):python排序

1 基础 1.1 输出 1.1.1 去掉输出的空格 print("Hello","World",123,sep"") print("hello",world,123,sep) print(hello,world,123) #输出结果 #HelloWorld123 #helloworld123 #hello world 123 1.1.2 以不同的方式结尾 print(&quo…

【刷题训练】Leetcode415.字符串相加

字符串相加 题目要求 示例 1: 输入:num1 “11”, num2 “123” 输出:“134” 示例 2: 输入:num1 “456”, num2 “77” 输出:“533” 示例 3: 输入:num1 “0”, num2 “0”…

JavaScript中的Hoisting

概要 本文在Javascript的Execution Context文章基础上,从代码执行的角度来谈谈变量提升,已经为什么let和const的变量不能进行变量提升。 代码分析 var 关键字定义的变量 下面的代码并不会报错,可以正常执行。 console.log(a) var a 0;代…

陪诊小程序开发:暖心陪伴,就医无忧

在繁忙的生活中,就医往往成为了一件让人头疼的事情。挂号、取药、排队……一系列繁琐的流程让人应接不暇。为了让您就医更加便捷、舒心,我们推出了陪诊小程序,为您提供贴心、专业的陪诊服务。 陪诊小程序致力于为用户提供全方位的陪诊体验。…

FreeRTOS操作系统学习——中断管理

中断管理介绍 嵌入式实时系统需要对整个系统环境产生的事件作出反应。这些事件对处理时间和响应时间都有不同的要求。事件通常采用中断方式检测,中断服务例程(ISR)中的处理量应当越短越好。ISR是在内核中被调用的, ISR执行过程中,用户的任务…

校园生活信息平台:Java+Vue+MySQL全栈实践

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…

【linux深入剖析】操作系统与用户之间的接口:自定义简易shell制作全过程

🍁你好,我是 RO-BERRY 📗 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油 目录 1.shell2.自定义shell的准…

单据分页的实现

单据分页的实现 1. AceWzcgfkjtMaintainProxy.java package nc.ui.jych.wzcgfkjt.ace.serviceproxy;import nc.bs.framework.common.NCLocator; import nc.itf.jych.IWzcgfkjtMaintain; import nc.ui.uif2.components.pagination.IPaginationQueryService; import nc.vo.jych.…

从政府工作报告探计算机行业发展(在医疗健康领域)

从政府工作报告探计算机行业发展 政府工作报告作为政府工作的全面总结和未来规划,不仅反映了国家整体的发展态势,也为各行各业提供了发展的指引和参考。随着信息技术的快速发展,计算机行业已经成为推动经济社会发展的重要引擎之一。因此&…

如何在Linux系统部署APITable容器并实现无公网IP远程管理本地数据

文章目录 前言1. 部署APITable2. cpolar的安装和注册3. 配置APITable公网访问地址4. 固定APITable公网地址 前言 vika维格表作为新一代数据生产力平台,是一款面向 API 的智能多维表格。它将复杂的可视化数据库、电子表格、实时在线协同、低代码开发技术四合为一&am…

PMP成绩判定标准是什么?

2024年3月10日的PMP考试已经结束,不知道大家考得怎么样,对于考试难度有没有值得分享或者吐槽的?可以发出来大家交流一下~ 一、3月PMP考试成绩什么时候出? 按照往期考试成绩发布时间,基本在考后6-8周会出成绩&#xf…

OSCP靶场--Astronaut

OSCP靶场–Astronaut 考点(1.CVE-2021-21425getshell 2.suid php提权) 1.nmap扫描 ┌──(root㉿kali)-[~/Desktop] └─# nmap -sV -sC -p- 192.168.163.12 --min-rate 2500 Starting Nmap 7.92 ( https://nmap.org ) at 2024-03-14 01:24 EDT Nmap scan report for 192.16…

1个二维码能包含多个视频吗?制作视频二维码的方法

二维码在生活中现在随处可见,除了用于支付之外,展示内容也可以通过二维码来展现,比如常见的视频、图片、文件、音频等内容都可以通过二维码来展现。那么当我们需要将多个视频存入一个二维码中展示时,该如何利用二维码生成器的工具…

【超图】导入txt文件至udbx数据源中

作者:taco 最近在支持的过程中,有客户遇到了txt类型的数据导入到udbx中,不知如何导入。本身以为是客户不会用产品,直接叫嚣着客户,数据拿来我看看。 好家伙数据一拿来我直接蒙了。这啥破数据啊。咋一行一行的一点不规整…

【2024-完整版】python爬虫 批量查询自己所有CSDN文章的质量分:附整个实现流程

【2024】批量查询CSDN文章质量分 写在最前面一、分析获取步骤二、获取文章列表1. 前期准备2. 获取文章的接口3. 接口测试(更新重点) 三、查询质量分1. 前期准备2. 获取文章的接口3. 接口测试 四、python代码实现1. 分步实现2. 批量获取文章信息3. 从exce…