ชุมชนนักพัฒนากำลังประสบกับการแบ่งแยกที่น่าสนใจ ในขณะที่โปรแกรมเมอร์บางคนรายงานการเพิ่มผลิตภาพอย่างมหาศาลจากการใช้เครื่องมือ AI สำหรับเขียนโค้ด แต่คนอื่นๆ กลับพบว่าตัวเองรู้สึกหงุดหงิดและตั้งคำถามว่าพวกเขาพลาดสิ่งสำคัญพื้นฐานไปหรือไม่ ความแตกแยกนี้ได้จุดประกายการอภิปรายอย่างเข้มข้นเกี่ยวกับประสิทธิผลในโลกจริงของโมเดลภาษาขนาดใหญ่ (LLMs) ในการพัฒนาซอฟต์แวร์
ความกังวลเริ่มต้นมาจากนักพัฒนาคนหนึ่งที่รู้สึกว่าตัวเองตกหล่นแม้จะพยายามใช้เครื่องมือ AI หลายตัว พวกเขาอธิบายว่าใช้เวลาหลายชั่วโมงกับผู้ช่วย AI เพียงเพื่อจะตระหนักว่าพวกเขาสามารถทำงานเสร็จด้วยมือในเวลา 25 นาที แต่พวกเขายังคงเห็นเรื่องราวความสำเร็จจากนักพัฒนาที่ได้รับการยอมรับ ซึ่งสร้างความไม่เชื่อมโยงที่น่าสับสนระหว่างความคาดหวังและความเป็นจริง
เครื่องมือและบริบทมีความสำคัญมากกว่าที่คาดไว้
ข้อเสนอแนะจากชุมชนเผยให้เห็นว่าการเลือกใช้โมเดล AI และสภาพแวดล้อมการพัฒนาสร้างประสบการณ์ที่แตกต่างกันอย่างมาก นักพัฒนาหลายคนรายงานว่าเซสชัน ChatGPT แบบเดี่ยวให้ผลลัพธ์ที่ไม่น่าประทับใจ ขณะที่สภาพแวดล้อมการพัฒนาแบบบูรณาการเช่น Cursor หรือ Claude Code ให้ผลลัพธ์ที่ดีกว่ามาก ความแตกต่างหลักอยู่ที่การให้เครื่องมือ AI เข้าถึงโค้ดเบสทั้งหมด ระบบบิลด์ และบริบทของโปรเจกต์ แทนที่จะทำงานกับส่วนย่อยของโค้ดที่แยกออกมา
นักพัฒนาที่มีประสบการณ์คนหนึ่งแบ่งปันว่าพวกเขากลับมาเขียนโปรแกรมหลังจากหยุดไป 12 ปี และพบว่าเครื่องมือ AI มีประโยชน์อย่างมากสำหรับจัดการงานติดตั้ง เฟรมเวิร์กการกำหนดค่า และแก้ไขข้อผิดพลาดในการคอมไพล์ AI ไม่ได้เขียนโปรเจกต์ทั้งหมดให้พวกเขา แต่มันช่วยขจัดงาน boilerplate ที่น่าเบื่อซึ่งจะใช้เวลามาก
เครื่องมือ AI สำหรับการเขียนโค้ดที่มีประสิทธิภาพสูงสุดแบ่งตามประเภท:
- IDE แบบรวมระบบ: Cursor , Claude Code (พร้อมการเข้าถึงฐานโค้ดแบบเต็มรูปแบบ)
- โมเดลแบบสแตนด์อโลน: Claude 3.5 Sonnet , GPT-4 (สำหรับงานเฉพาะด้าน)
- ประสิทธิภาพต่ำกว่า: ChatGPT แบบสแตนด์อโลน, GPT-4o สำหรับการเขียนโปรแกรมที่ซับซ้อน
ความเฉพาะเจาะจงของโดเมนสร้างผลลัพธ์ที่แตกต่างกันอย่างมาก
ประเภทของงานเขียนโปรแกรมมีอิทธิพลอย่างมากต่อประสิทธิผลของ AI การพัฒนา frontend แอปพลิเคชันเว็บ และงานดูแลระบบทั่วไปมีอัตราความสำเร็จที่น่าทึ่ง นักพัฒนารายงานว่าสามารถปรับแต่งเว็บไซต์ สร้างแผงควบคุมผู้ดูแลระบบ และสร้างโค้ด boilerplate ขณะดูโทรทัศน์ อย่างไรก็ตาม โดเมนเฉพาะทางเช่นไดรเวอร์ GPU หุ่นยนต์ หรือโค้ดเบส C++ เก่าๆ มักให้ผลลัพธ์ที่น่าผิดหวัง
ฉันทำงานเกี่ยวกับคอมไพเลอร์ GPU ที่เขียนด้วย cpp LLM ทั้งหมดไร้ประโยชน์ ที่น่าขันคือคอมไพเลอร์ที่ฉันทำงานด้วยถูกใช้อย่างหนักสำหรับงาน LLM
รูปแบบนี้ชี้ให้เห็นว่าเครื่องมือ AI เก่งในงานที่มีการแสดงออกดีในข้อมูลการฝึกอบรม แต่ดิ้นรนกับโดเมนเทคนิคเฉพาะทางหรือเทคโนโลยีล้ำสมัยที่ยังไม่มีการจัดทำเอกสารอย่างแพร่หลายออนไลน์
ประสิทธิภาพของ AI ในแต่ละสาขาการเขียนโปรแกรม:
- ประสบความสำเร็จสูง: การพัฒนา Frontend, เว็บแอปพลิเคชัน, แผงควบคุมผู้ดูแลระบบ, การสร้างโค้ดต้นแบบ
- ประสบความสำเร็จปานกลาง: งาน Backend ทั่วไป, การเชื่อมต่อ API, การจัทำเอกสาร
- ประสบความสำเร็จต่ำ: ไดรเวอร์ GPU, หุ่นยนต์, โค้ดเบส C++ เก่า, การเขียนโปรแกรมฮาร์ดแวร์เฉพาะทาง
ปัญหาความไม่สม่ำเสมอ
บางทีการประเมินที่ซื่อสัตย์ที่สุดจากชุมชนคือการยอมรับว่าเครื่องมือ AI สำหรับเขียนโค้ดทำงานได้บางครั้งและล้มเหลวบางครั้ง นักพัฒนาคนเดียวกันสามารถมีประสบการณ์ที่แตกต่างกันอย่างมากกับงานที่คล้ายกัน ทำให้เกิดสิ่งที่บางคนเปรียบเทียบกับการพนันหรือพฤติกรรมเครื่องสล็อต ความไม่สม่ำเสมอนี้ทำให้ยากต่อการพัฒนาเวิร์กโฟลว์ที่เชื่อถือได้หรือตั้งความคาดหวังที่เหมาะสม
นักพัฒนาบางคนอธิบายการเรียนรู้การใช้เครื่องมือ AI เป็นทักษะที่ต้องการการลงทุนอย่างมาก คล้ายกับการเชี่ยวชาญตัวแก้ไขข้อความที่ซับซ้อน พวกเขาเน้นย้ำถึงความสำคัญของการเรียนรู้วิธีการแนะนำและฝึกสอน AI แทนที่จะคาดหวังให้มันทำงานอย่างอิสระ อย่างไรก็ตาม นักวิจารณ์ตั้งคำถามว่าการแทนที่การเขียนโค้ดที่ตรงไปตรงมาด้วยงานที่ซับซ้อนกว่าในการจัดการเอาต์พุต AI ที่คาดเดาไม่ได้นั้นแสดงถึงความก้าวหน้าที่แท้จริงหรือไม่
ปัจจัยสำคัญที่ทำให้ประสบความสำเร็จ:
- การเข้าถึงบริบทของโค้ดทั้งหมดแทนที่จะเป็นเพียงส่วนย่อยของโค้ดที่แยกออกมา
- การเลือกงานที่เหมาะสม (งานพื้นฐานทั่วไปเทียบกับตรรกะที่ซับซ้อน)
- การเรียนรู้ที่จะแนะนำ/ฝึกสอน AI แทนที่จะคาดหวังให้ทำงานอย่างอิสระ
- การใช้ AI สำหรับเทคโนโลยีที่มีเอกสารครบถ้วนเทียบกับสาขาที่ล้ำสมัย
ปัจจัย FOMO
ความกลัวที่จะพลาดโอกาสมีบทบาทสำคัญในความวิตกกังวลของนักพัฒนาเกี่ยวกับเครื่องมือ AI หลายคนกังวลว่าการไม่นำเทคโนโลยีเหล่านี้มาใช้จะทำให้พวกเขาเสียเปรียบในด้านอาชีพ อย่างไรก็ตาม เสียงที่มีประสบการณ์ในชุมชนแนะนำว่าภูมิทัศน์ที่เปลี่ยนแปลงอย่างรวดเร็วทำให้การรอให้เกิดความเสถียรเป็นเรื่องสมเหตุสมผล แทนที่จะไล่ตามการพัฒนาล่าสุดอย่างต่อเนื่อง
การอภิปรายเผยให้เห็นว่าการโฆษณาเกี่ยวกับ AI สำหรับเขียนโค้ดในปัจจุบันส่วนใหญ่อาจถูกขับเคลื่อนโดยกลยุทธ์การตลาดที่ออกแบบมาเพื่อสร้างความเร่งด่วนและกดดันให้นักพัฒนานำมาใช้ก่อนที่เทคโนโลยีจะพัฒนาเพียงพอสำหรับการใช้งานประจำวันที่เชื่อถือได้
สรุป
ประสบการณ์ที่หลากหลายของชุมชนนักพัฒนากับเครื่องมือ AI สำหรับเขียนโค้ดสะท้อนถึงเทคโนโลยีที่ยังคงอยู่ในการพัฒนาอย่างรวดเร็ว ความสำเร็จดูเหมือนจะขึ้นอยู่กับการเลือกเครื่องมือที่เหมาะสม การทำงานในโดเมนที่เหมาะสม และการพัฒนาทักษะใหม่สำหรับการร่วมมือระหว่างมนุษย์และ AI ในขณะที่นักพัฒนาบางคนบรรลุการเพิ่มผลิตภาพที่น่าทึ่ง คนอื่นๆ พบว่าวิธีการแบบดั้งเดิมเชื่อถือได้และมีประสิทธิภาพมากกว่า
แทนที่จะเป็นการนำมาใช้หรือปฏิเสธอย่างสากล หลักฐานชี้ให้เห็นอนาคตที่มีความแตกต่างมากขึ้น ซึ่งเครื่องมือ AI สำหรับเขียนโค้ดเก่งในบริบทเฉพาะขณะที่ยังคงไม่เหมาะสมสำหรับบริบทอื่นๆ นักพัฒนาอาจได้รับประโยชน์จากการทดลองใช้เครื่องมือเหล่านี้โดยไม่มีแรงกดดันให้เปลี่ยนแปลงเวิร์กโฟลว์ทั้งหมดทันที ให้เทคโนโลยีและแนวปฏิบัติที่ดีที่สุดพัฒนาเพิ่มเติมก่อนที่จะตัดสินใจผูกพันอย่างมีนัยสำคัญ
อ้างอิง: GPTs and feeling left behind