เครื่องมือ AI สำหรับเขียนโค้ดทำให้ชุมชนโปรแกรมเมอร์แตกแยก: การถกเถียงระหว่างคุณภาพกับความเร็วทวีความรุนแรง

ทีมชุมชน BigGo
เครื่องมือ AI สำหรับเขียนโค้ดทำให้ชุมชนโปรแกรมเมอร์แตกแยก: การถกเถียงระหว่างคุณภาพกับความเร็วทวีความรุนแรง

โลกของการเขียนโปรแกรมกำลังเผชิญกับความแตกแยกอย่างลึกซึ้งเกี่ยวกับเครื่องมือเขียนโค้ดที่ขับเคลื่อนด้วย AI โดยนักพัฒนาที่มีประสบการณ์รายงานประสบการณ์ที่แตกต่างกันอย่างมากเมื่อใช้เทคโนโลยีเดียวกัน ความแตกแยกนี้ได้กลายเป็นประเด็นสำคั�ที่กำหนดทิศทางในการพัฒนาซอฟต์แวร์สมัยใหม่ โดยท้าทายความเชื่อที่ยึดถือมายาวนานเกี่ยวกับวิธีที่โปรแกรมเมอร์เรียนรู้และทำงาน

ความแตกแยกครั้งใหญ่เรื่อง AI ในหมู่โปรแกรมเมอร์

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

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

สามปัจจัยหลักที่อยู่เบื้องหลังประสบการณ์ AI ที่แตกต่างกัน

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

ประการที่สอง ประเภทของงานเขียนโปรแกรมมีความสำคัญอย่างมาก นักพัฒนาที่ทำงานเกี่ยวกับสคริปต์การแสดงผลข้อมูลใน Python หรือ TypeScript รายงานว่า AI มีประโยชน์สูงกว่านักพัฒนาที่ทำ systems programming ใน C หรือการวิจัย machine learning แบบใหม่มาก ความแตกต่างอยู่ที่ว่างานเหล่านี้ถูกแทนในข้อมูลการฝึก AI ได้ดีเพียงใดและมี boilerplate code เท่าใด

ประการที่สาม ขนาดโครงการและขนาดทีมสร้างความแตกต่างใหญ่ในประสิทธิภาพของ AI นักพัฒนาเดี่ยวที่ทำงานในโครงการใหม่พบว่า AI มีประโยชน์มากกว่าผู้ที่ดูแลรักษา codebase ขนาดใหญ่และซับซ้อนในองค์กรใหญ่ นี่ชี้ให้เห็นว่า AI เก่งในการพัฒนา greenfield แต่ดิ้นรนกับความเข้าใจที่ละเอียดอ่อนที่จำเป็นสำหรับระบบที่มีอยู่แล้ว

ปัจจัยที่ส่งผลต่อประโยชน์ของ AI ในการเขียนโปรแกรม:

  • ระดับประสบการณ์: การใช้เครื่องมือ AI อย่างสม่ำเสมอและกว้างขวางมีความสัมพันธ์กับการรับรู้คุณค่าที่สูงขึ้น
  • โดเมนการเขียนโปรแกรม: การแสดงผลข้อมูล สคริปต์ Python/TypeScript แสดงประโยชน์ของ AI ที่สูงกว่าเมื่อเปรียบเทียบกับการเขียนโปรแกรมระบบใน C
  • ประเภทโปรเจกต์: โปรเจกต์ใหม่/โปรเจกต์เดี่ยวได้รับประโยชน์มากกว่าฐานโค้ดขนาดใหญ่ที่มีอยู่แล้ว
  • ขนาดทีม: นักพัฒนาเดี่ยวและทีมเล็กเห็นคุณค่ามากกว่านักพัฒนาในองค์กรขนาดใหญ่

ปัญหาภาวะลำบากใจระหว่างโหมดการเรียนรู้กับการส่งมอบ

กรอบแนวคิดที่ให้ความเข้าใจเป็นพิเศษได้เกิดขึ้นจากชุมชน นั่นคือแนวคิดของโหมดการส่งมอบเทียบกับโหมดการเรียนรู้ นักพัฒนาหลายคนตอนนี้สลับระหว่างแนวทางเหล่านี้อย่างมีสติขึ้นอยู่กับเป้าหมายของพวกเขา ในโหมดการส่งมอบ พวกเขาใช้ประโยชน์จาก AI อย่างมากเพื่อเคลื่อนไหวอย่างรวดเร็ว ในโหมดการเรียนรู้ พวกเขาหลีกเลี่ยง AI อย่างจงใจเพื่อให้แน่ใจว่าได้ความเข้าใจอย่างลึกซึ้ง

หากเป้าหมายของคุณคือไปถึงที่หมายอย่างรวดเร็ว จักรยานไฟฟ้าก็มีข้อได้เปรียบอย่างแน่นอนเมื่อเปรียบเทียบกับจักรยานที่มีเกียร์มากกว่า หากเป้าหมายของคุณคือกลายเป็นนักปั่นจักรยานที่ดีกว่า/แข็งแกร่งกว่า จักรยานไฟฟ้าจะไม่ช่วยคุณในเรื่องนั้นจริงๆ

การเปรียบเทียบจักรยานไฟฟ้านี้จับความตึงเครียดที่สำคัญในการศึกษาการเขียนโปรแกรมสมัยใหม่และการพัฒนาอาชีพ เครื่องมือที่ทำให้คุณมีประสิทธิภาพสูงสุดวันนี้อาจไม่ได้สร้างทักษะที่คุณต้องการสำหรับความท้าทายของวันพรุ่งนี้

โหมดการเขียนโปรแกรมกับ AI:

  • โหมด Shipping: พึ่พา AI อย่างหนักสำหรับการพัฒนาอย่างรวดเร็วและการสร้างโค้ด
  • โหมด Learning: ใช้ AI น้อยที่สุดหรือไม่ใช้เลย เพื่อให้มั่นใจในความเข้าใจอย่างลึกซึ้งและการพัฒนาทักษะ
  • แนวทาง Hybrid: การใช้ AI แบบเลือกสรร ขึ้นอยู่กับเป้าหมายเฉพาะและวัตถุประสงค์ในการเรียนรู้

วิวัฒนาการอย่างรวดเร็วทำให้การประเมินซับซ้อน

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

วิวัฒนาการอย่างรวดเร็วนี้สร้างความท้าทายที่ไม่เหมือนใครสำหรับชุมชนโปรแกรมเมอร์ แนวทางดั้งเดิมในการประเมินเครื่องมือใหม่สันนิษฐานว่าความสามารถค่อนข้างมั่นคงเมื่อเวลาผ่านไป กับ AI นักพัฒนาต้องประเมินสมมติฐานและขั้นตอนการทำงานของพวกเขาใหม่อย่างต่อเนื่อง ซึ่งนำไปสู่ความคิดเห็นที่หลากหลายที่เราเห็นวันนี้

ข้อกำหนดเรื่องความเข้มงวด

แม้จะมีความไม่เห็นด้วยเกี่ยวกับประโยชน์ของ AI แต่มีจุดหนึ่งที่สร้างฉันทามติอย่างกว้างขวาง นั่นคือความสำคัญของการเข้าใจสิ่งที่คุณกำลังสร้าง ไม่ว่านักพัฒนาจะยอมรับหรือหลีกเลี่ยงเครื่องมือ AI พวกเขาเห็นพ้องกันว่าการรักษาความรู้ทางเทคนิคอย่างลึกซึ้งยังคงสำคัญ AI อาจเปลี่ยนวิธีการเขียนโค้ด แต่ไม่ได้ขจัดความจำเป็นสำหรับโปรแกรมเมอร์ในการเข้าใจระบบ อัลกอริทึม และสถาปัตยกรรมซอฟต์แวร์

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

อ้างอิง: Developing our position on Al