一句话:基于 410 名开发者的问卷,揭示 AI 编程助手的采用动机、弃用原因与可用性挑战。
AI 编程助手(如 GitHub Copilot)已在软件工程界广泛部署,但实践中开发者对工具初次建议的接受率并不高,其可用性问题仍待厘清。作者面向大量开发者发放问卷,最终回收了来自多样化开发者群体的 410 份回复,并采用定性与定量相结合的方法进行分析。结果显示,开发者使用这类工具的主要动机是减少击键、快速完成编程任务以及回忆语法,而借助其头脑风暴潜在解决方案的诉求相对较弱;不使用这些工具的最重要原因则是生成的代码无法满足某些功能性或非功能性需求,以及开发者难以控制工具产生期望的输出。研究结论对 AI 编程助手的设计者与使用者均有启示,例如设计低认知负荷的交互方式,以减少编程过程中对用户的干扰。
The software engineering community recently has witnessed widespread deployment of AI programming assistants, such as GitHub Copilot. However, in practice, developers do not accept AI programming assistants' initial suggestions at a high frequency. This leaves a number of open questions related to the usability of these tools. To understand developers' practices while using these tools and the important usability challenges they face, we administered a survey to a large population of developers and received responses from a diverse set of 410 developers. Through a mix of qualitative and quantitative analyses, we found that developers are most motivated to use AI programming assistants because they help developers reduce key-strokes, finish programming tasks quickly, and recall syntax, but resonate less with using them to help brainstorm potential solutions. We also found the most important reasons why developers do not use these tools are because these tools do not output code that addresses certain functional or non-functional requirements and because developers have trouble controlling the tool to generate the desired output. Our findings have implications for both creators and users of AI programming assistants, such as designing minimal cognitive effort interactions with these tools to reduce distractions for users while they are programming.