近日,Stack Overflow发布了一份特别报告,对AI辅助编程工具的使用情况进行了调查。今年,Stack Overflow收到了来自185个国家的90,000份回复,其中重点关注了AI的使用情况。AI技术近年来越发热门,Stack Overflow希望了解这项技术对开发人员的工作方式是否产生了真正的影响,因此进行了深入的调查。
Stack Overflow的产品营销副总裁Joy Liuzzo表示,该公司将利用开发者的回复来塑造他们的AI产品。Stack Overflow曾公开表示AI是该网站的“大机遇”,“我们现在正在投资AI,我们需要了解开发人员如何看待这项技术,并根据回应情况将其纳入开发人员的工作流程中。”Liuzzo说道。
以下是这份特别报告中关于AI使用的亮点:
1.相对于学习编程的人来说,专业开发人员对AI工具的采用更为缓慢。30%的专业开发人员表示没有采用AI辅助编程工具的计划。
2.ChatGPT是最受欢迎的AI搜索工具,被83%的受访者使用,其次是Bing AI(20%)、WolframAlpha(13%)和Google Bard AI(10%)。
3.GitHub Copilot是最受欢迎的开发者搜索工具,被55%的受访者使用,其次是Tabnine(13%)和AWS CodeWhisperer(5%)。
4.与美国、英国和德国的开发人员相比,印度、巴西和波兰的受访者更有可能接受AI工具。
一、信任与谨慎并存:专业开发人员信任AI吗?
Stack Overflow发现,很多开发人员已经在使用AI。其中44%的开发人员现在就在他们的开发过程中使用AI工具,而26%的人计划很快开始使用。学习编程的人中使用AI工具的比例更高,达到55%。这些早期采用者一旦进入专业开发人员职位,将成为技能娴熟的AI用户。
尽管越来越多的开发人员在使用AI工具,但他们使用的种类并不多。Stack Overflow询问开发人员他们正在使用哪些工具,而在今年列出的21个选项中,绝大多数只使用了两个热门产品:ChatGPT(83%)和GitHub Copilot(56%)。
Stack Overflow还发现,随着经验的增加,开发人员对AI工具的态度趋于冷淡。有近40%的开发人员拥有超过21年的经验,他们表示不打算或计划使用这些工具。这可能是因为经验丰富的开发人员通常从事更复杂的项目和代码结构,而当前的AI工具还无法有效解决这些问题。
此外,这些较新的AI技术目前仍处于早期阶段,还需要更多时间来调整现有的工作流程以适应这些工具。
AI工具在开发过程中采用速度较慢的另一个因素是专业开发人员对其准确性的不信任。在使用或计划使用AI工具的人群中,只有3%的人非常信任其准确性,而有超过两倍的人(6%)非常不信任。虽然大多数人(39%)对AI工具有一定程度的信任,但这一结果表明AI工具仍需要证明其实用性。
对于新工具的采用,"信任但要核实"可能是最佳方法。今年一个非常受欢迎的问题是"为什么ChatGPT在数学上不准确?",这个问题涉及到AI工具(尤其是基于大型语言模型训练的工具)无法理解复杂问题的问题。然而,实际上,人们在这类问题上也常常出错。
此外,使用AI工具的地区也会对结果产生影响。来自印度、巴西和波兰的专业开发人员最有可能使用或计划在其开发流程中使用AI工具,这些国家的回应率达到甚至超过70%。而英国、法国、美国和德国的开发人员更有可能表示他们不计划使用AI工具(回应率达到36%)。
印度和巴西是许多新技术人才的来源地,这一趋势可以从过去的开发者调查中看出。因此,在这些地区更广泛地使用AI工具是合理的。
而欧盟国家和美国的情况比较特殊,因为可以通过最近的新闻推断出GDPR法规对AI进行监管的可能性在增大。法国已经开始调查针对ChatGPT的投诉。在美国,虽然目前还没有相关法规,但一些公司已经开始公布禁止在工作中使用ChatGPT的政策,同时Stack Overflow和Reddit也公开表示他们将开始收费以限制访问社区数据。这些因素都使得开发人员不敢迅速采用这些AI工具。
二、提升效率、加快学习:AI辅助工具的好处
Stack Overflow表示,无论目前的采用情况如何,开发人员对这些AI工具的潜力持积极态度。
调查发现,77%的受访者对在工作流程中使用AI感到满意,70%的受访者今年已经在使用或计划使用AI编码工具。
在实际使用中,与专业开发人员相比,学习编程的人员主要使用AI工具进行调试和获取帮助(68%),以及了解代码库(50%)。而专业开发人员则更感兴趣于使用AI工具进行代码测试(65%)、提交和审查代码(64%),以及使用它们进行部署和监控(61%),同时记录代码或了解代码库(58%)也是他们的关注点。
总体而言,AI工具给开发人员带来的好处主要体现在提高生产力和加快学习速度方面。
根据调查结果显示,对AI工具持有积极态度的开发人员角色中,高级管理人员(63%)与数据科学家和區塊鏈开发人员一起位居榜首。相反,嵌入式应用程序开发人员、桌面/企业开发人员和硬件工程师不太可能使用这些工具,并且对将来使用这些工具也不太愿意。Stack Overflow建议硬件工程师暂时不要使用人工智能工具,因为这些工具的准确性问题让人缺乏信心。
Stack Overflow还在调查中询问开发人员,明年是否会在他们的工作流程中使用AI工具,结果显示72%的人表示在编写代码流程中可能会有所不同,78%的人对使用AI调试代码持相同看法。
三、总结
尽管AI辅助编程工具在专业开发人员中的采用速度相对较慢,但开发人员对这些工具的潜力持有积极态度。AI工具在提高生产力、加快学习速度和解决常见编码问题方面具有显著的好处。然而,信任度、准确性以及法规和工作场所规定等因素仍然是开发人员采用这些工具的主要考量。
随着时间的推移和技术的进步,预计AI辅助编程工具将变得更加准确和可靠,能够更好地适应开发人员的需求。对于开发人员来说,保持对AI技术的关注,并根据自己的项目和需求,谨慎选择和使用这些工具,将有助于提高开发效率和质量,推动技术创新的发展。