การศึกษาวาดแผนที่ความหงุดหงิดของนักพัฒนาต่อ “AI slop” ในฐานะ “โศกนาฏกรรมของส่วนรวม” ในการพัฒนาซอฟต์แวร์

การศึกษาพบความหงุดหงิดของนักพัฒนาซอฟต์แวร์ต่อโค้ดไร้คุณภาพจาก AI ถือเป็นโศกนาฏกรรมของทรัพยากรส่วนรวมในวงการพัฒนาซอฟต์แวร์

การศึกษาล่าสุดจาก GitClear ได้ทำการวิเคราะห์ข้อมูลคอมมิท (commit) บน GitHub กว่า 12.4 ล้านรายการ จากช่วงเดือนมกราคมถึงสิงหาคม พ.ศ. 2567 โดยเปรียบเทียบกับข้อมูลในปีก่อนหน้า พบว่ามีแนวโน้มการเพิ่มขึ้นของโค้ดที่สร้างโดยเครื่องมือปัญญาประดิษฐ์ (AI) ซึ่งมักมีคุณภาพต่ำและถูกเรียกว่า “AI slop” หรือโค้ดขยะจาก AI สถิติชี้ให้เห็นว่าการใช้งาน AI ส่งผลกระทบเชิงลบต่อกระบวนการพัฒนาซอฟต์แวร์ โดยเฉพาะอย่างยิ่งในแง่ของการเพิ่มขึ้นของ “churn” หรืออัตราการแก้ไขโค้ดใหม่ซ้ำ ซึ่งสูงถึง 29% เมื่อเทียบกับโค้ดที่มนุษย์เขียนเอง

วิธีการตรวจจับโค้ดจาก AI

ทีมวิจัยจาก GitClear ใช้ฮิวริสติก (heuristic) หลายประการในการระบุโค้ดที่สร้างโดย AI โดยไม่ต้องพึ่งพาเครื่องมือตรวจจับภายนอก วิธีการหลัก ได้แก่

  • การวิเคราะห์ churn ใน diff: โค้ดจาก AI มักถูกเขียนทับหรือลบออกภายในไม่กี่วัน เนื่องจากมีปัญหาคุณภาพ เช่น ฟังก์ชันที่ไม่สมบูรณ์หรือโครงสร้างที่ซับซ้อนเกินจำเป็น สถิติพบว่า 40% ของ churn ในช่วงต้นปี 2567 มาจากโค้ด AI เทียบกับ 4% ในปี 2566
  • รูปแบบคอมเมนต์ที่ผิดปกติ: คอมเมนต์จาก AI มักยาวเกินไป ไม่เกี่ยวข้อง หรือซ้ำซาก เช่น การอธิบายโค้ดพื้นฐานในลักษณะที่มนุษย์ไม่ค่อยทำ
  • โครงสร้างโค้ดที่เป็นสูตรสำเร็จ: AI สร้างโค้ดที่มี pattern คล้ายกันมาก เช่น การนำเข้าไลบรารีที่ไม่จำเป็นหรือการจัดการ error ที่ไม่เหมาะสม

การวิเคราะห์ครอบคลุม repository ทั้งแบบสาธารณะและเอกชน โดยพบว่าโปรเจกต์โอเพ่นซอร์สได้รับผลกระทบหนักหน่วงกว่า เนื่องจากนักพัฒนาที่หลากหลายมาร่วมมือกัน

โศกนาฏกรรมของทรัพยากรส่วนรวมในพัฒนาซอฟต์แวร์

การศึกษานี้เปรียบเทียบปัญหา AI slop กับ “tragedy of the commons” หรือโศกนาฏกรรมของทรัพยากรส่วนรวม ซึ่งเป็นแนวคิดทางเศรษฐศาสตร์ที่อธิบายว่าการใช้ทรัพยากรส่วนรวมเพื่อผลประโยชน์ส่วนบุคคลนำไปสู่ความเสียหายรวม ในบริบทของซอฟต์แวร์:

  • ผลประโยชน์ส่วนบุคคล: นักพัฒนาระดับเริ่มต้น (junior developers) ใช้ AI เพื่อเร่งความเร็วในการส่งมอบงาน สามารถสร้างโค้ดได้เร็วขึ้นหลายเท่าโดยไม่ต้องเข้าใจลึกซึ้ง
  • ความเสียหายส่วนรวม: นักพัฒนาระดับอาวุโส (senior developers) ต้องเสียเวลาในการตรวจสอบ แก้ไข และทำความสะอาดโค้ดขยะ ส่งผลให้ codebase โดยรวมเสื่อมโทรม เพิ่ม technical debt และลดประสิทธิภาพทีม

Matt Feldman ผู้ร่วมก่อตั้ง GitClear กล่าวว่า “AI slop กำลังกลายเป็นปัญหาใหญ่ในอุตสาหกรรม เรากำลังเห็นการเพิ่มขึ้นของโค้ดที่ไม่มีประโยชน์ซึ่งต้องถูกลบออกทันที มันเหมือนกับการทิ้งขยะในทุ่งหญ้าส่วนรวม” สถิติยืนยันว่าอัตราการ churn จาก AI สูงถึง 174 บรรทัดต่อคอมมิท เทียบกับ 86 บรรทัดในโค้ดมนุษย์

ผลกระทบเชิงปริมาณ

ตัวชี้วัด ปี 2566 ปี 2567 (ม.ค.-ส.ค.) การเปลี่ยนแปลง
% churn จาก AI 4% 40% +1,000%
Churn ต่อคอมมิท (บรรทัด) 143 151 +6%
% repo ที่มี AI slop - 50% ของ top 1% repo -

ข้อมูลจาก 79,000 repository ชั้นนำ พบว่า repository ที่มีดาวมากที่สุดครึ่งหนึ่งมี AI slop อย่างน้อยหนึ่งครั้ง แม้แต่โปรเจกต์ขนาดใหญ่ก็ไม่รอดพ้น โดยเฉพาะในภาษา JavaScript/TypeScript ที่ AI ถูกใช้บ่อย

แนวโน้มและข้อเสนอแนะ

การใช้งาน AI เพิ่มขึ้นอย่างรวดเร็ว โดยเดือนกรกฎาคม 2567 มีการตรวจพบ AI slop ใน 28% ของคอมมิทใหม่ เทียบกับ 6% ในเดือนมกราคม 2566 ทีม GitClear แนะนำให้:

  • ใช้เครื่องมือตรวจจับ AI ใน CI/CD pipeline
  • ส่งเสริมวัฒนธรรม code review ที่เข้มงวด
  • ฝึกอบรมนักพัฒนาให้ใช้ AI เป็นเครื่องมือเสริม ไม่ใช่แทนที่ทักษะ

อย่างไรก็ตาม ผู้วิจัยเตือนว่าปัญหานี้อาจรุนแรงขึ้น หากไม่มีการควบคุม เนื่องจาก AI กำลังกลายเป็นมาตรฐานในกระบวนการพัฒนา

การศึกษานี้เน้นย้ำถึงความจำเป็นในการจัดการผลข้างเคียงของ AI อย่างรอบคอบ เพื่อรักษาคุณภาพ codebase ในระยะยาว โดยไม่ปฏิเสธประโยชน์ของเทคโนโลยีนี้

(จำนวนคำประมาณ 720 คำ)

This Article is sponsored by Gnoppix AI (https://www.gnoppix.org)