论文笔记:The Impact of AI on Developer Productivity:Evidence from GitHub Copilot

0 abstract 

  • 本文介绍了一项对GitHub Copilot(一种人工智能编程助手)的控制实验结果。
  • 研究人员招募了软件开发人员,要求他们尽可能快地用JavaScript实现一个HTTP服务器。实验组可以访问人工智能编程助手,比对照组完成任务的速度快55.8%。
  • 观察到的异质性效应表明,人工智能编程助手有望帮助人们过渡到软件开发职业。

1 实验设计 

  • 计算了两个指标作为衡量每个组的表现:任务成功率和任务完成时间。
    • 任务成功率是指一个组中成功完成任务的参与者所占的百分比。
    • 任务完成时间是从任务开始到结束所需的时间
  • 在参与者完成任务后,研究者向他们发送了退出调查的链接。
    • 询问了实验组他们在执行任务时发现GitHub Copilot有多有帮助,以及他们估计与不使用GitHub Copilot相比,他们完成任务的速度提高了多少。
    • 还要求对照组估计如果他们使用了GitHub Copilot,他们会经历多大的速度提升,这是在向他们展示了一分钟的演示视频之后

2 实验对象

  • 95名开发者被随机分配到对照组和实验组,实验组45人,对照组50人。实验组和对照组各有35名开发者完成了任务和调查
  • 大多数参与者的年龄在25-34岁之间,来自印度和巴基斯坦。
    • 这组参与者的特点是相对较低的收入(与美国标准相比,年中位收入在10,000至19,000美元之间)但教育水平较高(大多数人拥有4年制学位及以上)。
    • 这个组别的平均编程经验为6年,并且平均报告在一个工作日中花费9小时进行编程。

3 实验结果

实验组——使用copilot

对照组——不适用copilot

3.1 完成时间

  • 实验组的平均完成时间为71.17分钟,对照组为160.89分钟。
    • 这代表了55.8%的完成时间缩短。t检验的p值为0.0017,改善的95%置信区间在[21%, 89%]之间。
  • 有四个异常值的完成时间超过300分钟。
    • 所有异常值都在对照组,但即使去掉这些异常值,我们的结果依然稳健。
  • 这一结果表明,在我们的实验人群中,Copilot显著提高了平均生产力。

3.2 完成时间在不同维度上是否有差异

  • 然后,论文调查这种效应在不同维度(包括经验、就业状况、收入、教育和软件语言偏好)上是否存在异质性。
    • 应用Horvitz-Thomson转换,然后对观测到的转换后结果进行回归分析。
  • 表1中的估计结果报告了这次回归的系数。
    • 结果显示,经验较少的开发者(职业编程年数)、编码负载较重的开发者(每天编程时间)、以及年龄较大的开发者(年龄在25至44岁之间的开发者)从Copilot中获益更多。

3.3 受试对象的体验

  • 进行了一项包含两个问题的退出调查,以了解受试对象的体验。
    • 首先,要求他们估计Copilot在完成任务方面提供的生产力增益或损失(以百分比表示)。
    • 虽然对照组在执行任务期间没有接触到Copilot,但在回答这个问题之前,他们观看了教程视频,因此了解了Copilot的功能。
  • 图7展示了对照组和实验组自我报告的生产力增益估计的分布。
    • 平均而言,实验组和对照组的参与者估计生产力增加了35%,与他们实际显示的55.8%的增幅相比,这是一种低估。

 

3.4 支付意愿

  • 在第二个问题中,参与者被问到他们愿意为获取GitHub Copilot发布通知的最高月价格是多少。
  • 这个问题的目的是了解开发者支付Copilot的意愿,因为这个问题的答案提供了开发者支付意愿的上限。
    • 图8展示了对照组和实验组分开的无关价格分布。
      • 实验组的平均无关价格为每月27.25美元,对照组的平均无关价格为每月16.91美元。
      • 这种差异在95%的水平上具有统计学意义。
      • 这一结果间接证明了实验组在任务中受益于Copilot,因为他们的支付意愿显著高于对照组。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JSP 四大域对象

我们来说说JSP的四大域对象 首先 我们要了解他们是四种保存范围 第一种 是 Page范围 只作用于当前界面 只要页面跳转了 其他页面就拿不到了 第二种 request范围 在一次请求中有效 就是 我们服务端指向某个界面 并传递数据给他 那么 如果你是客户端跳转就不生效了 第三种 sessi…

Synchronized 相关面试题 (精简版)

目录 问题一:Synchronized用过吗,其原理是什么? 问题二 : 你刚才提到获取对象的锁,这个“锁”到底是什么?如何确定对象的锁 ? 问题三:什么是可重入性,为什么说 Synchronized 是可重入锁? …

[和ChatGPT学编程]Python Requests 简介

requests 是一个流行的 Python 库,用于发送 HTTP 请求。它提供了简洁而友好的 API,使得发送 HTTP 请求变得简单而直观。requests 具有许多强大的功能,适用于各种 HTTP 请求场景,包括 GET、POST、PUT、DELETE 等。 目录 requests 库…

系列五、线程间通信

一、synchronized实现 1.1、案例一(2个线程交替对变量执行1、-1操作,来10轮) 1.1.1、资源类ShareDataOne /*** Author : 一叶浮萍归大海* Date: 2023/11/20 10:44* Description: 资源类* 说明:2个线程使用if判断变量的值&#…

EfficientPhys

研究背景 基于相机的生理测量是一种非接触式方法,用于通过从身体反射的光捕获心脏信号。最常见的此类信号是通过光电体积描记图 (PPG) 测量的血容量脉搏 (BVP)。由此,可以推导出心率、呼吸率和脉搏传导时间。神经网络模型是当前最先进的 rPPG 测量方式。…

Midjourney绘画提示词Prompt参考学习教程

一、工具 SparkAi: SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软…

nvm:轻松管理多个 Node 版本 | 开源日报 No.80

nvm-sh/nvm Stars: 67.6k License: MIT Node Version Manager,是一个 POSIX 兼容的 bash 脚本,用于管理多个活动 node.js 版本。nvm 可以让你通过命令行快速安装和使用不同版本的 Node。它可以在任何符合 POSIX 标准的 shell(sh、dash、ksh…

YOLOv8-seg改进:SEAM、MultiSEAM分割物与物相互遮挡、分割小目标性能

🚀🚀🚀本文改进:SEAM、MultiSEAM分割物体与物体相互遮挡性能 🚀🚀🚀SEAM、MultiSEAM分割物与物相互遮挡、分割小目标性能 🚀🚀🚀YOLOv8-seg创新专栏:http://t.csdnimg.cn/KLSdv 学姐带你学习YOLOv8,从入门到创新,轻轻松松搞定科研; 1)手把手教你如何…

JSP协同办公eclipse定制开发mysql数据库BS模式java编程OA系统

一、源码特点 java 协同办公管理系统是一套完善的web设计系统 ,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,eclipse开发,数据库为Mysql5.0,使…

internet download manager2024中文绿色版(IDM下载器)

在现代互联网时代,文件下载已经成为我们日常生活中必不可少的一项技能。无论是下载软件、音乐、视频还是其他文件,一个高效的下载方法能够为我们节省时间和精力。本文将为您提供一份简明扼要的下载教程,让您轻松掌握文件下载的技巧。 intern…

【汇编】数据在哪里?有多长、div指令实现除法、dup设置内存空间

文章目录 前言一、汇编语言中数据位置的表达1.1 汇编中有哪几种数1.立即数(idata):2.寄存器(Register):3.内存(Memory):4.段地址(Segment Address&#xff0c…

NextJS开发:ssr服务器端渲染页面,添加加载进度提示

nextjs中ssr服务器端渲染的页面加载速度慢的时候,需要显示一个如下图的加载进度提示,来优化用户体验。 nextjs框架中已经预留了加载动画的接口页面,我们只需要提那家加载动画tsx,处理页面逻辑就可以实现。 page.tsx 同级目录创建…

ModernCSS.dev - 来自微软前端工程师的 CSS 高级教程,讲解如何用新的 CSS 语法来解决旧的问题

今天给大家安利一套现代 CSS 的教程,以前写网页的问题,现在都可以用新的写法来解决了。 ModernCSS.dev 是一个现代 CSS 语法的教程,讲解新的 CSS 语法如何解决一些传统问题,一共有30多课。 这套教程的作者是 Stephanie Eckles&am…

2023年中国中端连锁酒店分类、市场规模及主要企业市占率[图]

中端连锁酒店行业是指定位于中档酒店市场、具有全国统一的品牌形象识别系统、全国统一的运营体系、会员体系和营销体系的酒店。中端酒店通常提供舒适、标准化的房间设施和服务,价格较为合理,符合广大消费者的需求。其价格略高于经济型酒店,但…

【canvas】了解canvas,并实现会议预定记录钟表盘、页面水印

初识canvas Canvas 有什么用 Canvas 允许使用直线、曲线、矩形、圆形等基本图形绘制出复杂的图形 Canvas 可以加载图像,并进行各种处理,如裁剪、缩放、旋转等操作 Canvas 可以通过 JavaScript 控制,所以你可以利用帧动画原理,…

Latex学习

二 实例 1. \Delta_{w}\frac{\partial l}{\partial w_{i1}}weight:\frac{\partial l}{\partial x_{i1}} 效果如下 其中对于希腊字母的大小写来说,可以参考: 【LaTeX 语法】字母表示 ( 大写、小写、异体 希腊字母 | 粗体字母 | 花体字母 )_latex字母_韩…

大白话解释什么类加载机制

大家好,我是伍六七。 今天我们来聊聊一个 Java 面试必考基础题目:类加载机制和双亲委派机制。 Java 类的加载机制是 Java 虚拟机(JVM)中类加载(Class Loading)和链接(Linking)的过…

RT-DETR优化改进:SEAM、MultiSEAM分割物与物相互遮挡、分割小目标性能

🚀🚀🚀本文改进:SEAM、MultiSEAM分割物体与物体相互遮挡性能 🚀🚀🚀SEAM、MultiSEAM分割物与物相互遮挡、分割小目标性能 🚀🚀🚀RT-DETR改进创新专栏:http://t.csdnimg.cn/vuQTz 学姐带你学习YOLOv8,从入门到创新,轻轻松松搞定科研; RT-DETR模型创新…

【cpolar】搭建我的世界Java版服务器,公网远程联机

🎥 个人主页:深鱼~🔥收录专栏:cpolar🌄欢迎 👍点赞✍评论⭐收藏 目录 前言: 1. 搭建我的世界服务器 1.1 服务器安装java环境 1.2 配置服务端 2. 测试局域网联机 3. 公网远程联机 3.1 安…

数字IC前端学习笔记:时钟切换电路

相关阅读 数字IC前端https://blog.csdn.net/weixin_45791458/category_12173698.html?spm1001.2014.3001.5482 有些时候我们需要在系统运行时切换系统时钟,最简单的方法就是使用一个MUX(数据选择器)选择输出的时钟,如下代码片所…