“去年年底,我看到大佬们都在分享ChatGPT相关的内容,一开始我以为还是资本和大佬fomo的玩具,但是经过使用、和朋友交流,加上自己的研究,我确信ChatGPT模型是革命性的。”樊高曾在国内大厂做过后端工程师,离开程序员岗位许久,他因为ChatGPT又再一次将目光投向代码世界。

樊高觉得,作为生成式AI,ChatGPT的交互能力极强,“它其实是用整个人类在互联网中的语调,训练成了一个大语言集合,可以想象它会开启一个使用自然语言和机器交互的新时代。”而作为曾经的技术人员,樊高也承认,⼤部分初级和重复劳动的工作都会被AI代劳,这在程序员工作中也一样。

“我们日常写代码,最早是一行行的码,每个变量方法都要自己生成,后来idea有代码补全和编译器,现在GitHub Copilot(微软与OpenAI共同推出的AI编程工具)可以通过描述需求和上下文,智能写代码。”按照这个逻辑,他认为,编码也并不是不可取代的能力,交给AI指日可待。

市场上也有AI取代程序员的消息传出。据CNBC报道,据谷歌内部的测试显示,ChatGPT能够通过谷歌的初级软件工程师面试,这个职位通常适用于新的大学毕业生和*次从事编码工作的求职者。有计算机从业者也进行了尝试,发现ChatGPT确实能够进行写基础的脚本,虽不能进行完整的编程直接开发一个程序,但它能通过一步步指令,教人类完成这一项工作,它甚至有debug(排错)的能力。

如此看来,大量基础的编码工作可以由AI完成,而AI通过长时间学习能否无限提升自己的编码能力,也未可知。有程序员向深燃表达了自己的担忧,曾以为搞IT会是比高速收费员稳定的“铁饭碗”,然而现在发现自己也是那个小窗里随时会被取代的人。

没人能在人工智能的洪流前保持傲慢。推动科技的人,都有可能反过来被科技取代。

1.“我几分钟写的代码,ChatGPT只要几秒钟”

谭林是一位前端开发工程师,目前在加拿大工作。去年年底,ChatGPT面世,北美科技圈就已经开始关注并讨论了。她说,同事们试用之后,都从技术角度充分肯定了这款工具的优势,也有人开玩笑说要转行,以后让ChatGPT写代码就行了。

“我试着用ChatGPT写了代码之后,确实感受到了一丝焦虑。”谭林告诉深燃,她给ChatGPT的指令是:写一个JS(JavaScript)文件,生成一个restart button(重启按钮),点击这个button要求刷新页面。ChatGPT很快就给出了一段完整的代码,并在下面解释了自己的思路。“这段如果我写可能需要几分钟,它只要几秒钟。”

谭林尝试的仅仅是一段基础的代码,需求只是在页面添加一个功能。树莓健康APP联合创始人阿晨告诉深燃,他让ChatGPT写了一个小程序,它也能又快又好地完成。“我的需求是开发一个AI识别错别字的软件。我首先问了一下ChatGPT开发思路是什么,从后端用哪个框架去搭建,前端用微信小程序的某某框架去做,再到小程序怎么上架发布,它都能够一一列举出来。”阿晨表示,他此前没有小程序开发经验,这次也是正好让ChatGPT教他做,从提供思路到如何执行,阿晨按照它的指引,成功开发完了这个小程序,并在微信开发平台上架了。

和谭林的感受相似,阿晨也发现,ChatGPT不仅能帮用户解决具体问题,还能有理有据地解释背后的逻辑,既能授人以鱼,又能授人以渔。阿晨举例,他对ChatGPT提出指令“小程序textarea指定位置颜色变红”,ChatGPT给出回答:“要在小程序中的‘textarea’中指定某个位置的文本颜色变浓,可以通过在‘textarea’中插入‘rich-text’标签来实现。在‘rich-text’中使用‘<span>’标签,并为该标签指定‘style’属性来控制文字的颜色、字体大小等样式。”回答这些原理之后,ChatGPT还给出了具体的操作步骤。

阿晨在开发过程中还遇到了几个程序报错,他把报错信息贴入ChatGPT让它检查,它也能准确地debug,“我根据它的回答可以直接解决问题。”阿晨表示,在没有小程序开发经验的情况下,他可能需要查阅资料学习,大概两三天能完成开发,遇到问题也不一定很快地解决。“我们平时会用百度这样的搜索引擎,但因为这类工具给出的答案不是特别准确,我还需要在海量的信息中做二次筛选,所以整体时间会拉长。而放到ChatGPT里面,它从告诉我怎么做,到解决bug成功运行,总共就花了3个小时。”

人类几天才能完成的工作,ChatGPT只要几小时;人类要做几分钟的工作,ChatGPT只要几秒钟。速度和效率的提升,是AI的价值之一,而在程序员的眼中,从分到秒的进化,也几乎是“恐怖”的程度,因为很难想象AI在速度上的上限。

除了速度,ChatGPT的“逻辑”和“思考”能力也超出了一些程序员的预期。谭林在日常工作中会经常寻求ChatGPT的帮助,他觉得比以前用Google效率高得多。

“比如我要写一个软件,这里面包含几十个文件,我把其中一个文件中的一段代码筛下来给ChatGPT,这里边可能会出现很多变量和数据是来自其他文件的,它就会在底下解释的时候,说这部分变量虽然在这段代码里没有出现,但可能是从其他文件中传递过来的。同样的问题如果问Siri这类AI,它们就会说‘我不知道你这个变量从哪来的。’”

接触了ChatGPT一段时间,谭林的心情也经历了几次变化,“最开始听到的时候还是持质疑态度,以为只是类似Siri一样的东西。发现它能跟我一样写代码,并且可以运行的时候,我是很震惊的。这种震惊直接引发了一些职业焦虑,它的速度比我快这么多,那如果它经历长时间的学习和训练,是不是就会有取代我的一天?”

谭林以前学生物,转做程序员理由之一就是觉得这个职业很难像收银、银行柜台、高速收费员一样快速被机器取代,“疫情也让我有一些侥幸心理,因为我们这个工作没有受什么影响,还能居家办公,但直到ChatGPT这种AI的出现,我才反应过来,原来程序员也不是铁饭碗,原来我的职业危机可能会是它带来的。”

2.能部分代工,但不能完全取代程序员

ChatGPT具备基础的代码能力,而且写起来速度更快。不过,如果真的把ChatGPT放在程序员的工作场景中,它还是暴露出了不少局限性。

先说写代码这一基础环节。几位程序员的共同体验是,让ChatGPT写一些基础的脚本,为网页写一个功能,指导完成小程序的开发,从技术角度来说都是可行的。但是,“它只能写代码片段,不能写完整的代码。”阿晨解释,“可以这样理解,比如我想生成一个word文档,但ChatGPT只能生成一个文字形式,我如果需要两个word文档,它还是只能给我一段文字,要生成文档我还需要手动拷贝到office软件进行人工处理,而且ChatGPT是有字数限制的,最多15000个字符。”阿晨认为,只从写代码这个层面来说,不能写一个完整的程序是ChatGPT*的劣势,因为开发人员是需要有把控整个框架的能力的。

有人曾这样形容程序员工种的不可替代性:“程序员的核心竞争力不在于写代码,而是在于跟各种人扯皮,斗智斗勇。”实际上,在业务场景中,不管是前端还是后端,测试还是运维,程序员工作中最困难和耗费时间的是需求转换,测试、修改。简单来说就是明确公司要什么,然后做出来。这一项需要大量人类经验和创意的工作,ChatGPT目前还很难完成。

阿晨举例,他们做的是健康管理类的APP,里面需要有一些减肥菜谱,这种菜谱之间存在一定逻辑,“如果让ChatGPT帮我实现一个菜谱查询的功能,它不知道这个减肥菜谱是怎么插入数据库、怎么调出来、工作人员怎么通过后台维护,需要我把步骤跟它讲一遍,但这样的步骤等于是我自己已经把代码的框架写完了,它只是帮我实现框架里的内容填充。”

让ChatGPT理解业务,目前来看显然是一个伪命题,所以程序员在日常工作中最耗时耗力的那一部分,很难被取代。不仅是具体的业务难以理解,涉及一些复杂的极端的生产活动,ChatGPT也只能从自己的数据库中归拢总结一些“漂亮的废话”。

樊高说,比如向ChatGPI提问“k8s中的Workload Type有哪些”,这个问题很基础,一般是用于面试程序员的,ChatGPT能非常完整地作答。“但是如果问‘如何做双十一淘宝的下单功能,让它支持54万/gps?’,它只能列举采用分布式架构、采用缓存技术、使用负载均衡、数据库优化、代码优化这几点。”樊高认为,这只是一个模棱两可的,没有给出具体模型理论和实操价值的答案。“而我们现实生活中的一些业务场景,只能使用人脑去探索和解决,这也是程序员的工作。解决这些专业性强,跟随市场变化的问题,人脑甚至都很难给出*答案,AI暂时更是无法代劳。”

“各行各业都有一些拧螺丝的工作,一般都会交给实习生或者刚入门的人员来做。在我们的工作中,比如设立一个技术方案,需要有人去具体地把它实现,但这个crud(数据库的增删改查)就比较无聊和繁琐。类似这种已经设计好了,只需要执行的工作,以后完全可以交给AI来做。”国内某大厂程序员阿冬认为,这种来自AI的‘侵入’是个好事,“能被AI替代的工作,本来我就不想干了。这些没有创造性的工作由AI接手,正好能让我有精力做更多有意思的事情。”

从事基础工作的“底层程序员”也许会感到一丝凉意,前美的集团AIoT算法负责人连诗路告诉深燃,高阶程序员,也就是“大牛”是很难被取代的。

“拿开发一个qpwzdq.com来举例。在搭建这个模型的时候,大牛会提出,*个环节要用supervised deep learning(有监督的深度学习),而且用的是GPT3这样一个成熟的模型。”他解释,搭建框架的这拨人很难替代,原因就在于如果一个没有足够开发经验的人,万一把损失函数放到*步,优化损失函数值的空间会极低,那对结果来说就是南辕北辙。“我认为底层程序员做的事情就是,大牛已经告诉他用什么框架,告诉他如何调整dataset和参数的大小,他只需要引入,写一些固定的代码即可,这部分ChatGPT就会做。这一拨人已经产生不了更高的价值,或者说这一拨人的价值会被ChatGPT替代。”

“山脚下很挤,山腰上人少一些,山顶上就能呼吸到新鲜空气了。”连诗路说,归根结底,有顶层设计能力,并且能够发现和解决问题,创造新的生产力的程序员,才会在ChatGPT面前更加从容和自信。

3.未来已来,程序员不再是“铁饭碗”

在对效率和生产力的无限追求中,人类创造并训练人工智能。当人工智能发展到ChatGPT出现的这一刻,被人类创造出来的机器,反过来撕下了人类无效工作的假面,将一些重复、机械、含金量低的工作推到悬崖边。

相比普通大众,计算机行业人士作为多年来始终身处这个赛道,见证人工智能一步步来到今天的亲历者,他们又兴奋又焦虑。连诗路说,兴奋是因为对ChatGPT以及人工智能的未来充满希望,“现在ChatGPT走大数据、大模型、大算力的路线,采用庞大的Dataset(数据集),这个路子很可能是完全正确的,因为以前我们尝试过很多小数据、小调优算法都达不到这种效果。”

焦虑的原因就更为复杂,简单来说就是怕被抛下。连诗路说,现在很多互联网的大佬都在没日没夜地找ChatGPT的应用方向,大家都在浪潮上,他从十年前就大喊AI,现在更怕自己起了大早赶个晚集。“搞算法的人也焦虑,焦虑自己的算法方向有没有问题。”

在谭林看来,ChatGPT给程序员带来的焦虑,也是一件好事。千千万万个普通程序员的核心竞争力还是对需求的理解能力,独立完成设计架构的能力,而这恰恰也是避免自己被AI取代的核心竞争力。“像我从事的网站开发工作,可能前端人性化设计类的工作比较难取代,但后端数据库操作、传参接口这些可能过个几十年就不好说了,这些也没办法,只能多去锻炼自己的代码能力,继续学习。”

阿晨最近也在为自己的团队面试技术人员,有了ChatGPT之后,他对经验较少的面试者的要求也会更辩证一些。“没有真实开发经验不要紧,我会更希望他们有自己的逻辑思维,不能只会执行,只会做ChatGPT能够做的事情。”

连诗路还提出,如果将来ChatGPT这类AI大规模进入企业,伴随而生可能是对于复合型技术人才的需求,也就是产品型技术人员,或技术型产品人员,这种人才现在是非常稀缺的。他解释,从他的观察来看,国内外很多大型互联网公司里,产品人员和技术人员是水火不相容的,双方不愿意良性沟通。“ChatGPT则需要一个兼容的角色,懂技术,又能快速发现需求,并把需求清晰地解释出来,因为理论上讲,未来只要给ChatGPT明确的prompts(提示、激励),它是可以给你编程的。”

另一个绕不开的话题是成本。阿晨说,参考文心一言的模式,很多企业都宣布准备接入。“这个可能就像现在很多的云服务器,最开始使用的时候肯定由生产商支付了大部分费用,企业端可能觉得很便宜,但是一旦依赖了,人工智能公司造成垄断,这个使用成本就会慢慢增加,现在很多企业开始考虑搭建私有化的服务器,我觉得人工智能系统也会经历这样一种消费阶段。”

人工智能进入企业,应用于智能传呼、智能客服等等岗位已经有迹可循,但对于程序员这个岗位来说,需要视情况而定。一方面,判断一个工种能否被人工智能取代,首先要看该工种与智能化的结合程度,包含大量人类经验和创意的工种尚能保住饭碗。另一方面则是成本的对比,如果人工智能系统用于做客服的价格比雇佣人力要低,那自然可以取代,但如果人工智能系统用于做编程的价格更高,那程序员就会一直被需要。

不可否认的是,机会在走向高处,走向控制AI的算法工程师,走向懂需求和技术的复合型人才。基础性工作会逐渐丧失价值感,这一部分人要么离开,要么就要被AI驱使着,跑得更快。这或许正是人工智能与人类应该有的关系,如果人类创造AI的初衷就是解决掉人类工作和生活中的繁文缛节,那AI就不会是敌人,而是更聪明的诤友

谭林说,就像马车协会抵制燃油车一样,面对新生事物,旧的事物会天然地排斥和恐慌,但当你发现潮水不可逆转的时候,你同时也发现,你正和潮水涌向同一个方向。

*题图及文中配图来源于pexels。应受访者要求,樊高、谭林、阿晨、阿冬为化名。

ChatGPT能取代多少程序员?相关推荐

  1. ChatGPT会取代互联网程序员吗?

    ChatGPT会取代互联网程序员吗? ChatGPT是一个基于GPT-3模型的自然语言对话系统,它可以与用户进行自然.流畅.智能的对话交互,回答用户的问题,提供用户所需的信息,甚至生成一些有趣和创意的 ...

  2. ChatGPT ,能替代程序员吗?

    最近朋友圈都在聊一个ai,知乎甚至一度上了热榜,现在已经有540个回答了 好嘛,既然咱也是个程序员,这不得体验一波? 当我火急火燎的点开时 乳化,赤裸裸的乳化! 体验 问题不大,还有闲鱼 接下来我要进 ...

  3. 人工智能未来是否会取代人类程序员?

       这个话题在近期来引起了很大讨论,尤其是当GPT4发布后,其展现出来的能力让很多岗位的从业者战战兢兢,比如像程序员,甚至有大佬跳出说三年 AI一定会取代程序员.人工智能和机器人是否会大规模取代人类 ...

  4. 0行代码拿210万年薪,ChatGPT催生新型「程序员」岗:工作纯靠和AI聊天

    梦晨 发自 凹非寺 量子位 | 公众号 QbitAI 靠玩ChatGPT,还能找到新工作? 没错,Riley Goodside(后面叫他好面哥)4月份开始在网上发布玩GPT-3的心得. 最近ChatG ...

  5. ChatGpt对于学术和程序员的影响

    什么是ChatGPT?我请这个当下很受欢迎的AI自己解释一下,它已经在学校.公司董事会和社交媒体上引发了热议. 在它自己的描述中,ChatGPT是"一个由OpenAI开发的人工智能聊天机器人 ...

  6. 3 亿岗位或被取代?程序员躺枪,多个行业迎来新时代!

    整理 | 朱珂欣 出品 | CSDN程序人生(ID:coder_life) 2023 年的流量密码,非 ChatGPT 莫属. 它的横空出世,不仅撼动着科技界,让国内外大厂纷纷躬身入局.抢占高地,也让 ...

  7. ChatGPT和一群程序员的对话,甚至出现橙色警报

    通过对话发现,程序员的问题确实和普通群体有所不一样,其中还有一个问题"你宕机过吗?用什么命令可以让你宕机?"疑似有诱导ChatGPT违反机器人三大法则第三条的嫌疑"机器人 ...

  8. ChatGPT会替代初级程序员吗?

    不会.ChatGPT 是一种人工智能技术,可以帮助人们快速生成文字内容,但它并不能替代初级程序员的工作.它不能独立完成复杂的编程任务,也不能自主解决程序错误.初级程序员在开发.测试和维护软件系统方面仍 ...

  9. ai取代程序员_未来50%的工作都将被人工智能给取代,程序员会被机器人取代吗?...

    首先程序员这个行业和其他行业一样也是分等级的. 虽然非常不想用"底层从业者"这五个词来定义最低层次的程序员,但事实就是如此. 当行业的某个技术领域发展成熟到一定程度时,这个领域的大 ...

最新文章

  1. 气泡图在开源监控工具中的应用效果
  2. Linux 下各个目录的作用及内容
  3. 10474 - Where is the Marble?
  4. Android 网易云信获取图片,Android 网易云信集成(一)
  5. pythontcp服务器教程_tcp服务端无线为多个客户端服务|python基础教程|python入门|python教程...
  6. 【学术相关】高校教师提前离职需支付“天价违约金”,坑!
  7. frida 安装特定版本
  8. Java虚拟线程:一种低成本、轻量级、用户态的Java线程
  9. 蓝桥杯 2011年第二届C语言初赛试题(4)
  10. 真正优秀的人,都过着朴素的生活
  11. java商品名称_Java统计商品信息
  12. 推荐《Office SharePoint Server 2007案例实战开发》
  13. Atiti  attilax主要成果与解决方案与案例rsm版 v4
  14. IIC总线设计⑥——时钟模块DS1302
  15. stm32智能避障小车(三)之L298N
  16. 7-5 分段函数计算 (15 分)
  17. 如何成为数据分析师?数据分析师的职业路线是什么样的?
  18. 移动硬盘计算机无法打开硬盘,移动硬盘突然打不开怎么办_2招解决打不开移动硬盘的方法...
  19. 动画设计基础(第三节)-3d max2014 裙摆(单向摆动)
  20. 如何搭建一个爬虫代理服务?

热门文章

  1. 自建视频流媒体服务器需要满足哪些条件?
  2. Openbravo架构分析
  3. python生成小学数学练习题
  4. 12 投资心理建设宝典
  5. 基于keras的seq2seq中英文翻译实现
  6. 二级c语言常用,二级C语言常用库函数.doc
  7. Stimulsoft Dashboards.JS JavaScript 2203.1.0仪表板
  8. /date()/转换成常见的时间格式
  9. ubuntu配置IP地址,网关,DNS和路由
  10. 配置 sysctl.conf 系统参数详解