Redian新闻
>
程序员「求生宝典」!AI大发展下的程序员求生指南,干货满满

程序员「求生宝典」!AI大发展下的程序员求生指南,干货满满

公众号新闻



  新智元报道  

编辑:拉燕
【新智元导读】程序员「求生指南」来了。

前几天Stability AI的CEO刚刚放下豪言,说AI在5年内将会彻底取代人类程序员。

今天「求生宝典」就来了!

国外网友梳理总结了程序员如何跑赢生成式AI的一些技巧,包教包会,拿来就用!

赶快学起来!拒绝AI取代,从我做起。

基础知识学习和实践两手抓


虽说有无数基于AI的编码助手可以帮助程序员们生成代码,但编程的基础仍然存在——阅读和推理自己和他人的代码,以及理解编写的代码如何适应更大的系统。

这些能力亘古不变,是编程的地基。

Priyan Vaithilingam是哈佛大学工程与应用科学学院的一名博士生,他主要研究人机交互和编程语言的交叉领域。

他表示,「我相信AI可以显着提高软件开发人员的生产力,但软件工程不仅仅是生成代码——从用户需求到调试、测试等等,都是他们的工作。」

实际上,任何技能落实到最后都是四个字:解决问题。

而如何找到问题所在(这个问题并不是某个具体的问题,而是抽象的需求),如何找到最佳的解决方案,仍然是人类程序员的核心竞争力。

Python软件基金会研究员、软件公司Explosion联合创始人兼CEO Ines Montani表示,解决问题的许多技能比实际的语言或工具更重要。

「程序员们应该专注于AI和自然语言处理的开发工具,但不要陷入将自己与AI进行比较的陷阱,作为开发人员,我们的工作并不仅仅是写代码这么简单。」

此外,有效率的软件工程实践比以往会更加有价值。

这些实践包括规划系统设计和软件架构,这些实践可以给基于AI的工具提供良好的环境,更有效地预测接下来需要完成那些代码。

「人类程序员必须弄清楚一段代码的结构、组织代码的方式,以及满足不同的要求。这些才是软件工程的核心,而这并不会很快被AI取代。」

找到符合需求的工具


第二,对于人类程序员来说,找到适合自己的AI编程工具非常重要。

每个工具都有自己的交互方式,并且可以通过不同的方式将每个工具合并到的程序员的开发工作流程中,无论是自动创建单元测试、生成测试数据还是编写文档,都是如此。

例如,GitHub Copilot和其他AI编码助手可以增强编程能力,在开发者写程序的时候提供建议。

而ChatGPT和Google的Bard更像是对话式的AI程序员,可用于回答有关 API(应用程序编程接口)的问题或生成代码片段。

而想要找到适合自己的工具,关键就在于实践。

对于开发者来说,应该广泛试用AI工具,体会不同工具的工作原理,评估输出的质量,同时对其它工具保持开放的态度。

而且,快速适应新出现的AI编程工具的能力同样非常重要。

清晰准确的对话是关键


在用AI工具辅助编程的时候,开发人员应该详细、清晰、严谨地输入需求,把这个不断调整输出内容的过程视为一种迭代。

专家建议,编写注释会非常有用。

而对于对话式AI程序员来说,程序员需要知道构建prompt的最佳方式。

这里建议的一种方法是「思想链提示」。这涉及到一种分而治之的策略,将问题分解为多个步骤并解决每个步骤,从而解决整个问题。

一口气让模型在同一时间内完成太多任务反倒会导致结果一团乱麻,更可取的方式是一步一步来,从生成一个个代码块开始。

例如,不要要求AI编程工具从头开始一口气编写整个程序,而是考虑程序试图完成不同的细分任务。

专家给出了这么一个类比,把AI编程工具当作一个实习生,他可能在知识层面差不了太多,但在经验层面还有不少欠缺。

此外,精确度和清晰度对于快速实现需求至关重要。

「你需要非常清楚地询问模型你想要什么,非常准确地说明你要求它做什么,并确保你在一步步跟进整个落实的过程。」

学习AI和机器学习的基本概念,以及了解大型语言模型的工作原理及其优缺点也很有价值。

为了帮助开发者快速入门,Abraham推荐了OpenAI的Cookbook,其中包含有关提示库和工具、提示指南和视频课程的部分,而Vaithilingam则建议阅读Illustrated Transformer,以了解有关模型和机器学习基础知识的更多信息。

保持批判态度并了解工具的风险


最后,开发人员应该对大型语言模型的输出持辩证的态度,首当其冲的就是幻觉问题。显然,一味听信AI编程工具的输出结果总有一次会捅大篓子。

这就是为什么检查生成的代码至关重要。

在检查的过程中,开发人员可以按以下这几个问题来审视初步的输出结果:

该模型是根据哪些数据进行训练的?

有哪些内容被过滤掉了,且没有包含在该数据中?

训练数据的时间有多长,模型训练时使用的编程语言、软件包或库的版本是什么?

还有一个不容易注意到的细节——版权。

原创性非常重要,开发人员应该在检查AI输出的结果时关注有没有哪部分是专用代码。

最后就是安全性问题。

抛开幻觉不谈,输出的代码可能有不少bug。这就需要输出审查,以及测试管道等方式来进行妥善解决。

有经验的人类程序员可以快速识别出常见的bug,以及代码中薄弱的部分。这种直觉就来自实践。

总而言之,对待任何新兴事物都应该以一种积极的心态去面对。

对于人类程序员来说,在被有可能的取代之前,利用AI编程工具提升自己的工作效率、提高工作质量才应该是首要考虑的目标。

希望以上内容对大家能有所帮助。

参考资料:
https://spectrum.ieee.org/ai-programming




微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
九剑一魂 - 第24回 汉胡同源 九剑一魂(四)ChatGPT时代程序员生存指南,这四步很关键|IEEE Spectrum糖尿病肾病中国指南解读,干货满满!GitHub Copilot:6人小团队如何开发出风靡全球的程序员神器? |【经纬低调分享】39 岁阿里 P9 程序员,攒下 1.5 亿,北京四套房趣图:今天遇到一位奇怪的程序员干货满满在大厂,当一位技术很拉垮的程序员是什么样的体验?新生宝宝睡觉时,这些事妈妈千万不能做!第一批用AI工作的程序员,已经碾压同事了!【文献】为什么美国应该向黑人赔偿不要相信懂 C++ 的程序员大温情侣必看! 520约会来这就对了! 对象直接哭死! 干货满满!大模型持续技术升级,你需要这样一场干货满满的技术论坛逐浪硬科技丨干货满满,量子科学最实用的解读都在这里这场在河南举办的科技大会,干货满满!|甲子光年链接善心——高质量发展下的中国互联网公益一则通告+遭贾母厌弃的长子贾赦是谁大模型时代的程序员:不会用AIGC编程,未来5年将被淘汰?一个绝佳的程序员私活渠道...干货满满!景顺长城基金20周年多资产策略会,共话市场新格局!大咖云集,干货满满,来亚马逊云科技中国峰会深度解读AIGC的现在和未来为什么越来越多的程序员考软考?陈丹琦ACL学术报告来了!详解大模型「外挂」数据库7大方向3大挑战,3小时干货满满干货满满!美国销售税全解析6人小团队,如何开发出风靡全球的程序员神器?GitHub:AI时代,80%的程序员终将失业【老键曲库】 Eros (by Chris Spheeris )第一批会大模型的程序员,已经碾压同事了!暴跌200亿,裁员求生!洋“足力健”,把戏被揭穿了全国 程序员 薪酬大曝光!狠狠酸住了,33% 程序员月薪达到...让别人舒服的程度,决定着你成功的程度厉害国保卫战: 债务和骗子下一个5年的程序员,差距越来越大了…拒绝做接盘侠的程序员中国 程序员 赴越南,拒写 赌博程序 遭到数月虐待,被拔 14 颗牙,全身损伤达 88%
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。