โลกของการเขียนโปรแกรมกำลังเผชิญกับการถกเถียงอย่างรุนแรงเกี่ยวกับความสามารถที่แท้จริงของปัญญาประดิษฐ์ ในขณะที่นักพัฒนาซอฟต์แวร์แบ่งปันประสบการณ์ที่แตกต่างกันอย่างมากเกี่ยวกับเครื่องมือเขียนโค้ด AI ในโปรเจกต์จริง แม้ว่าบางคนจะยกย่อง AI ว่าเป็นตัวช่วยเพิ่มประสิทธิภาพ แต่คนอื่นๆ กลับค้นพบข้อจำกัดร้ายแรงที่ท้าทายการโฆษณาชวนเชื่อเรื่องการเขียนโปรแกรมอัตโนมัติ
ความแตกแยกครั้งใหญ่ของการเขียนโค้ดด้วย AI
ชุมชนนักพัฒนาซอฟต์แวร์ได้แบ่งออกเป็นสองฝ่ายที่แตกต่างกันอย่างชัดเจน ฝ่ายหนึ่งเป็นผู้ที่กระตือรือร้นซึ่งชื่นชมความสามารถของ AI ในการเร่งงานพัฒนา อีกฝ่ายหนึ่งเป็นผู้ที่ระแวงและชี้ให้เห็นความล้มเหลวและข้อจำกัดที่สำคัญ ความแตกแยกนี้สะท้อนถึงความไม่แน่นอนในวงกว้างเกี่ยวกับการที่ AI จะเปลี่ยนแปลงการเขียนโปรแกรมอย่างแท้จริงหรือเพียงแค่สร้างปัญหาใหม่ให้ต้องแก้ไข
ประสบการณ์ล่าสุดที่นักพัฒนาซอฟต์แวร์แบ่งปันแสดงให้เห็นภาพที่ซับซ้อน บางคนรายงานว่าเครื่องมือ AI ช่วยในงานประจำและเพิ่มประสิทธิภาพ อย่างไรก็ตาม คนอื่นๆ อธิบายถึงการเผชิญหน้าที่น่าหงุดหงิดกับโค้ดที่ AI สร้างขึ้นซึ่งดูเหมือนจะใช้งานได้แต่มีข้อบกพร่องที่ซ่อนอยู่หรือสร้างฝันร้ายในการบำรุงรักษา
ชุมชนนักพัฒนาแบ่งแยกเรื่องผลกระทบของ AI:
- ผู้สนับสนุน AI: รายงานว่าได้รับประโยชน์ด้านการเพิ่มประสิทธิภาพการทำงาน การแก้ปัญหาได้เร็วขึ้น โดยเฉพาะอย่างยิ่งเป็นประโยชน์สำหรับนักพัฒนาระดับเริ่มต้นที่กำลังเรียนรู้ทักษะใหม่
- ผู้ไม่เชื่อมั่นใน AI: ชี้ไปที่โครงการที่ล้มเหลว การสร้างโค้ดที่ไม่น่าเชื่อถือ และการโฆษณาชวนเชื่อของบริษัทที่เกินความสามารถจริง
- กลุ่มกลางที่ใช้หลักปฏิบัติ: มองว่า AI เป็นเครื่องมือที่มีประโยชน์สำหรับงานเฉพาะด้าน แต่เน้นย้ำถึงความจำเป็นในการมีการดูแลจากมนุษย์และการคิดอย่างมีวิจารณญาณ
เมื่อ AI ไม่เป็นไปตามความคาดหวัง
ตัวอย่างในโลกแห่งความเป็นจริงเผยให้เห็นจุดที่เครื่องมือ AI ปัจจุบันดิ้นรนมากที่สุด นักพัฒนาซอฟต์แวร์รายงานว่า AI มักจะล้มเหลวในการแก้ไขข้อบกพร่องของระบบเก่าที่ซับซ้อน การเข้าใจบริบททางธุรกิจ และการจัดการกับความเป็นจริงที่ยุ่งเหยิงของการพัฒนาซอฟต์แวร์ในองค์กร นักพัฒนาซอฟต์แวร์คนหนึ่งได้รับมอบหมายโปรเจกต์ iOS ที่สร้างขึ้นทั้งหมดด้วย ChatGPT และอธิบายว่ามันไม่ได้ใกล้เคียงกับการทำงานเลย โดยมีหลายพันคอมมิตที่ไม่สามารถคอมไพล์ได้
ช่องว่างระหว่างการสาธิตที่น่าประทับใจของ AI และการใช้งานจริงจะปรากฏชัดเมื่อต้องจัดการกับฐานโค้ดที่มีเอกสารไม่ดี รายงานข้อบกพร่องที่คลุมเครือ หรือระบบที่พัฒนามาหลายปี สถานการณ์เหล่านี้ต้องการสัญชาตญาณและประสบการณ์ของมนุษย์ที่โมเดล AI ปัจจุบันไม่สามารถทำซ้ำได้
90% ของงานหนักที่แท้จริงคือ 'เย็บอวัยวะเพิ่มเติมเข้ากับสิ่งมีชีวิตประหลาดแห่งพระเจ้านี้' หรือ 'ดูสิ่งนี้สิ หาสาเหตุว่าทำไมมันถึงเกิดขึ้นและแก้ไขมัน' LLM ไร้ประโยชน์มากหรือน้อยสำหรับสิ่งเหล่านั้น
ข้อจำกัดหลักของเครื่องมือ AI สำหรับการเขียนโค้ดที่นักพัฒนาระบุ:
- การดีบักระบบเก่าที่ซับซ้อนและฐานโค้ดที่มีเอกสารไม่ครบถ้วน
- การเข้าใจบริบททางธุรกิจและข้อกำหนดขององค์กร
- การจัดการรายงานบักที่คลุมเครือหรือไม่สมบูรณ์จากผู้ใช้
- การจัดการระบบที่พัฒนามาหลายปี
- การหลีกเลี่ยงการสร้างโครงสร้างโค้ด "แฟรงเกนสไตน์" ที่ต้องการการบำรุงรักษาสูง
- การรักษาความสอดคล้องในระบบซอฟต์แวร์ขนาดใหญ่ที่เชื่อมโยงกัน
เศรษฐศาสตร์เบื้องหลังการโฆษณาชวนเชื่อ
การอภิปรายขยายไปเกินกว่าความสามารถทางเทคนิคไปสู่แรงจูงใจทางเศรษฐกิจ นักพัฒนาซอฟต์แวร์หลายคนสงสัยว่าความกระตือรือร้นของบริษัทต่อ AI เกิดจากความปรารถนาในการลดต้นทุนมากกว่าการปรับปรุงประสิทธิภาพอย่างแท้จริง บริษัทต่างๆ อาจเร่งรีบนำโซลูชัน AI มาใช้โดยไม่เข้าใจข้อจำกัดอย่างเต็มที่ ส่งผลให้เกิดการเลิกจ้างโดยอิงจากความคาดหวังที่ไม่สมจริง
แรงกดดันทางเศรษฐกิจนี้สร้างวงจรที่น่ากังวลซึ่งธุรกิจลดจำนวนนักพัฒนาซอฟต์แวร์มนุษย์โดยคาดหวังให้ AI เติมเต็มช่องว่าง เพียงเพื่อจะค้นพบว่า AI ไม่สามารถจัดการงานที่ซับซ้อนและขึ้นอยู่กับบริบทที่โปรแกรมเมอร์ที่มีประสบการณ์จัดการได้ทุกวัน ผลลัพธ์อาจเป็นการประหยัดต้นทุนระยะสั้นตามด้วยการสูญเสียประสิทธิภาพระยะยาว
มองไปเกินกว่าความโกลาหลปัจจุบัน
แม้จะมีการถกเถียงอย่างรุนแรง นักพัฒนาซอฟต์แวร์บางคนยังคงมองโลกในแง่ดีเกี่ยวกับบทบาทของ AI ในฐานะเครื่องมือมากกว่าการทดแทน พวกเขาโต้แย้งว่า AI ทำงานได้ดีที่สุดเมื่อเสริมความสามารถของมนุษย์มากกว่าพยายามทดแทนพวกเขาทั้งหมด มุมมองนี้ชี้ให้เห็นว่าการบูรณาการที่ประสบความสำเร็จต้องการความเข้าใจทั้งจุดแข็งและข้อจำกัดของ AI
ความไม่แน่นอนในปัจจุบันอาจเป็นประโยชน์ต่อผู้ที่เพิ่งเข้ามาในการเขียนโปรแกรม เนื่องจากเครื่องมือ AI สามารถช่วยให้ผู้เริ่มต้นเรียนรู้ได้เร็วขึ้น ในขณะที่นักพัฒนาซอฟต์แวร์ที่มีประสบการณ์ปรับทักษะของตนเพื่อทำงานร่วมกับปัญญาประดิษฐ์ อย่างไรก็ตาม ช่วงเปลี่ยนผ่านนี้ยังคงท้าทายสำหรับทุกคนที่เกี่ยวข้อง
อาชีพการเขียนโปรแกรมดูเหมือนจะเข้าสู่ช่วงที่คล้ายกับอุตสาหกรรมอื่นๆ ที่ได้บูรณาการเครื่องมือใหม่ที่ทรงพลัง ความสำเร็จน่าจะขึ้นอยู่กับการเรียนรู้ที่จะใช้ AI อย่างมีประสิทธิภาพในขณะที่รักษาทักษะการคิดเชิงวิพากษ์และการแก้ปัญหาที่ยังคงเป็นเอกลักษณ์ของมนุษย์
อ้างอิง: The Uncertain Future of Coding Careers and Why I'm Still Hopeful