Copilot AI ของ GitHub สามารถนําความสนุกกลับมาสู่การเป็นนักพัฒนาได้หรือไม่?
นักวิจัยของ GitHub เปรียบเทียบความเร็วของนักพัฒนาสามารถเขียนโค้ดด้วยความช่วยเหลือ AI ของ Copilot กับกลุ่มที่พึ่งพาแนวทางปฏิบัติมาตรฐานของนักพัฒนา
ในภารกิจในการวัดประสิทธิภาพการทํางานของนักพัฒนาที่ได้รับความช่วยเหลือจาก AI นักวิจัยที่ GitHub เพิ่งทําการทดลองเปรียบเทียบความเร็วในการเขียนโค้ดของกลุ่มที่ใช้เครื่องมือกรอกโค้ด Copilot กับกลุ่มที่พึ่งพาความสามารถของมนุษย์เพียงอย่างเดียว
GitHub Copilot เป็นบริการเขียนโปรแกรมคู่ AI ที่เปิดตัวต่อสาธารณะเมื่อต้นปีนี้ในราคา $10 ต่อผู้ใช้ต่อเดือน หรือ $100 ต่อผู้ใช้ต่อปี นักวิจัยต่างอยากรู้ว่าเครื่องมือ AI เหล่านี้แปลเป็นการเพิ่มประสิทธิภาพการทํางานของนักพัฒนาจริงหรือไม่ สิ่งที่จับได้คือการระบุตัวชี้วัดที่เหมาะสมเพื่อวัดการเปลี่ยนแปลงประสิทธิภาพ ไม่ใช่เรื่องง่าย
Copilot ใช้เป็นส่วนขยายของตัวแก้ไขโค้ด เช่น VS Code ของ Microsoft สร้างคําแนะนําโค้ดในภาษาโปรแกรมหลายภาษาที่ผู้ใช้สามารถยอมรับปฏิเสธหรือแก้ไขได้ คําแนะนําจัดทําโดย Codex ของ OpenAI ซึ่งเป็นระบบที่แปลภาษาธรรมชาติเป็นโค้ดและใช้ โมเดล ภาษา GPT-3 ของ OpenAI
ดู: การเข้ารหัสคืออะไรและใช้ทําอะไร? คู่มือสําหรับผู้เริ่มต้น
Google Research และ Google Brain Team สรุปในเดือนกรกฎาคม หลังจากศึกษาผลกระทบของคําแนะนําโค้ด AI ต่อประสิทธิภาพการทํางานของนักพัฒนามากกว่า 10,000 ราย ว่าการ ถกเถียงเกี่ยวกับความเร็วประสิทธิภาพสัมพัทธ์ยังคงเป็น "คําถามที่เปิดอยู่" แม้ว่าจะสรุปได้ว่าการผสมผสานระหว่างเอ็นจิ้นความหมายตามกฎแบบดั้งเดิมและโมเดลภาษาขนาดใหญ่ เช่น Codex/Copilot "สามารถใช้เพื่อปรับปรุงประสิทธิภาพการทํางานของนักพัฒนาได้อย่างมีนัยสําคัญด้วยการเติมโค้ดที่ดีขึ้น"
แต่คุณจะวัดผลผลิตได้อย่างไร? นักวิจัยคนอื่นๆ เมื่อต้นปีนี้โดยใช้กลุ่มตัวอย่างเล็กๆ ของนักพัฒนา 24 คนพบว่า Copilot ไม่จําเป็นต้องปรับปรุงเวลาหรืออัตราความสําเร็จของงานให้เสร็จ อย่างไรก็ตาม พบว่า Copilot ช่วยนักพัฒนาประหยัดความพยายามในการค้นหาข้อมูลโค้ดทางออนไลน์เพื่อแก้ปัญหาเฉพาะ นี่เป็นตัวบ่งชี้ที่สําคัญว่าเครื่องมือ AI เช่น Copilot สามารถลดการสลับบริบทได้มากน้อยเพียงใดเมื่อนักพัฒนากระโดดออกจากตัวแก้ไขเพื่อแก้ปัญหา
GitHub ยังสํารวจนักพัฒนากว่า 2,600 คน โดยถามคําถามเช่น "ผู้คนรู้สึกว่า GitHub Copilot ทําให้พวกเขามีประสิทธิผลมากขึ้นหรือไม่" นักวิจัยยังได้รับประโยชน์จากการเข้าถึงข้อมูลการวัดและส่งข้อมูลทางไกลขนาดใหญ่ที่ไม่เหมือนใครและ เผยแพร่งานวิจัยในเดือนมิถุนายน นักวิจัยพบว่าผู้ใช้ระหว่าง 60% ถึง 75% รู้สึกเติมเต็มกับงานของตนมากขึ้นเมื่อใช้ Copilot รู้สึกหงุดหงิดน้อยลงเมื่อเขียนโค้ด และสามารถมุ่งเน้นไปที่งานที่น่าพึงพอใจมากขึ้น
"ในการวิจัยของเรา เราเห็นว่า GitHub Copilot รองรับเวลาที่เสร็จสมบูรณ์เร็วขึ้น อนุรักษ์พลังงานจิตใจของนักพัฒนา ช่วยให้พวกเขามุ่งเน้นไปที่งานที่น่าพึงพอใจมากขึ้น และในที่สุดก็พบความสนุกสนานมากขึ้นในการเขียนโค้ดที่พวกเขาทํา" GitHub กล่าว
ดร. Eirini Kalliamvakou นักวิจัยของ GitHub อธิบายแนวทางนี้ว่า "เราทําการวิจัยหลายรอบ รวมถึงข้อมูลเชิงคุณภาพ (การรับรู้) และเชิงปริมาณ (สังเกต) เพื่อรวบรวมภาพรวมทั้งหมด เราต้องการยืนยัน: (ก) ประสบการณ์จริงของผู้ใช้ยืนยันสิ่งที่เราอนุมานจากการวัดทางไกลหรือไม่ (ข) ข้อเสนอแนะเชิงคุณภาพของเราครอบคลุมถึงฐานผู้ใช้ขนาดใหญ่ของเราหรือไม่"
Kalliamvakou ซึ่งมีส่วนร่วมในการศึกษาดั้งเดิมได้สร้างการทดลองที่เกี่ยวข้องกับนักพัฒนา 95 คนที่มุ่งเน้นไปที่คําถามเกี่ยวกับความเร็วในการเขียนโค้ดด้วย Copilot และไม่มี
การวิจัยนี้พบว่ากลุ่มที่ใช้ Copilot (นักพัฒนา 45 คน) ทํางานเสร็จโดยเฉลี่ยภายใน 1 ชั่วโมง 11 นาที กลุ่มที่ไม่ได้ใช้ Copilot (นักพัฒนา 50 คน) ทําเสร็จโดยเฉลี่ยใน 2 ชั่วโมง 41 นาที ดังนั้นกลุ่มที่มี Copilot จึงเร็วกว่ากลุ่ม ที่ไม่มี 55%
Kalliamvakou ยังพบว่าเปอร์เซ็นต์ที่สูงขึ้นของกลุ่มที่มี Copilot ทํางานสําเร็จ - 78% ของกลุ่ม Copilot เทียบกับ 70% ในกลุ่มที่ไม่มี Copilot
การศึกษานี้มีข้อจํากัดในธรรมชาติเนื่องจากเปรียบเทียบความเร็วของนักพัฒนาเมื่อเขียนโค้ดเว็บเซิร์ฟเวอร์ใน JavaScript และไม่มีงานอื่นๆ ที่เกี่ยวข้องกับภาษาอื่นๆ เช่น Python หรือ Java นอกจากนี้ยังไม่ได้ประเมินคุณภาพของโค้ด
และการทดลองไม่ได้พิจารณาปัจจัยที่ส่งผลต่อประสิทธิภาพการทํางาน เช่น การสลับบริบท อย่างไรก็ตาม การศึกษาก่อนหน้านี้ของ GitHub พบว่า 73% ของนักพัฒนารายงานว่า Copilot ช่วยให้พวกเขาอยู่ในกระแส
ในอีเมล Kalliamvakou อธิบายให้ ZDNET ทราบว่าตัวเลขนี้มีความหมายอย่างไรในแง่ของการสลับบริบทและประสิทธิภาพการทํางานของนักพัฒนา
"การรายงาน 'อยู่ในกระแส' หมายถึงการเปลี่ยนบริบทน้อยลงอย่างแน่นอน และเรามีหลักฐานเพิ่มเติม 77% ของผู้ตอบแบบสํารวจรายงานว่าเมื่อใช้ GitHub Copilot พวกเขาใช้เวลาในการค้นหาน้อยลง" เธอเขียน
"คําชี้แจงนี้วัดการสลับบริบทที่รู้จักสําหรับนักพัฒนา เช่น การค้นหาเอกสารประกอบ หรือเยี่ยมชมไซต์ถาม & คําตอบ เช่น Stack Overflow เพื่อค้นหาคําตอบหรือถามคําถาม ด้วย GitHub Copilot ที่นําข้อมูลเข้าสู่ตัวแก้ไข นักพัฒนาจึงไม่จําเป็นต้องเปลี่ยนออกจาก IDE บ่อยๆ" เธออธิบาย
แต่การใช้การสลับบริบทเพียงอย่างเดียวเพื่อวัดประสิทธิภาพการทํางานที่ดีขึ้นจากคําแนะนําโค้ด AI ไม่สามารถแสดงภาพรวมได้ นอกจากนี้ยังมีการสลับบริบท "ดี" และ "ไม่ดี" ซึ่งทําให้ยากต่อการวัดผลกระทบของการสลับบริ บท
ดู: นักวิทยาศาสตร์ข้อมูล vs วิศวกรข้อมูล: ความต้องการบทบาทเหล่านี้เปลี่ยนแปลงไปอย่างไร
ในระหว่างงานทั่วไปนักพัฒนาจะสลับไปมาระหว่างกิจกรรมเครื่องมือและแหล่งข้อมูลต่างๆเป็นจํานวนมาก Kalliamvakou อธิบาย
เธอชี้ไปที่การศึกษาที่ตีพิมพ์ในปี 2014 ซึ่งพบว่านักพัฒนาใช้เวลาเฉลี่ย 1.6 นาทีกับกิจกรรมก่อนที่จะเปลี่ยนหรือสลับโดยเฉลี่ย 47 ครั้งต่อชั่วโมง
"นั่นเป็นเพียงเพราะลักษณะของงานและเครื่องมือมากมายที่พวกเขาใช้ ดังนั้นจึงถือว่าเป็นการสลับบริบทที่ "ดี" ในทางตรงกันข้าม มีการสลับบริบทที่ "ไม่ดี" เนื่องจากความล่าช้าหรือการหยุดชะงัก" เธอกล่าว
"เราพบในการวิจัยก่อนหน้านี้ว่าสิ่งนี้ส่งผลเสียต่อประสิทธิภาพการทํางานอย่างมาก เช่นเดียวกับความรู้สึกของความก้าวหน้าของนักพัฒนาเอง การสลับบริบทนั้นวัดได้ยาก เนื่องจากเราไม่มีวิธีที่ดีในการแยกแยะระหว่างอินสแตนซ์ "ดี" และ "ไม่ดี" โดยอัตโนมัติ หรือเมื่อการเปลี่ยนเป็นส่วนหนึ่งของการทํางานให้เสร็จสมบูรณ์เมื่อเทียบกับการหยุดชะงักของโฟลว์และประสิทธิภาพการทํางานของนักพัฒนา อย่างไรก็ตาม มีวิธีวัดการสลับบริบทผ่านการรายงานตนเองและการสังเกตที่เราใช้ในการวิจัยของเรา"
สําหรับการแสดงของ Copilot กับภาษาอื่นๆ Kalliamvakou กล่าวว่าเธอสนใจที่จะทําการทดลองในอนาคต
"มันเป็นการทดลองที่สนุกอย่างแน่นอน การทดลองที่มีการควบคุมเหล่านี้ค่อนข้างใช้เวลานาน เนื่องจากเราพยายามทําให้มันใหญ่ขึ้นหรือครอบคลุมมากขึ้น แต่ฉันต้องการสํารวจการทดสอบสําหรับภาษาอื่นในอนาคต" เธอกล่าว
Kalliamvakou โพสต์การค้นพบที่สําคัญอื่นๆ จากการสํารวจขนาดใหญ่ของ GitHub ในบล็อกโพสต์ที่มีรายละเอียดเกี่ยวกับภารกิจเพื่อค้นหาตัวชี้วัดที่เหมาะสมที่สุดเพื่อวัดประสิทธิภาพการทํางานของนักพัฒนา
