การถกเถียงเรื่องโค้ดที่สร้างด้วย AI ได้เปลี่ยนจากการคาดการณ์เชิงทฤษฎีไปสู่เรื่องราวการนำไปใช้งานจริง ผู้สร้าง Flask อย่าง Armin Ronacher เพิ่งแชร์ประสบการณ์การสร้างระบบที่ใช้งานจริงซึ่ง AI สร้างโค้ดประมาณ 90% ทำให้เกิดการอภิปรายอย่างเข้มข้นเกี่ยวกับสถานะปัจจุบันและข้อจำกัดของการพัฒนาที่มี AI เป็นผู้ช่วย
ความเป็นจริงในการใช้งานจริง vs. การโฆษณาเกินจริง
โปรเจกต์ของ Ronacher เกี่ยวข้องกับการสร้างบริการอีเมลที่ใช้ Go จำนวน 40,000 บรรทัด พร้อมด้วย REST APIs และตัวสร้าง SDK แบบกำหนดเอง แม้ว่าเขาจะบรรลุเป้าหมาย 90% ที่ AI สร้างขึ้น แต่การตอบสนองจากชุมชนนักพัฒนากลับเผยให้เห็นภาพที่ซับซ้อนกว่า การนำไปใช้งานต้องการการดูแลอย่างต่อเนื่อง การกำกับดูแลสถาปัตยกรรม และการตรวจสอบทุกบรรทัดอย่างระมัดระวัง ซึ่งโดยพื้นฐานแล้วคือการปฏิบัติต่อ AI เหมือนกับสิ่งที่นักพัฒนาคนหนึ่งอธิบายว่าเป็นลิงเขียนโค้ดที่ต้องการคำแนะนำจากผู้เชี่ยวชาญ
ชุมชนต่อต้านตัวชี้วัดที่เรียบง่ายเกินไป โดยบางคนชี้ให้เห็นว่าการวัดความสำเร็จด้วยปริมาณโค้ดเพียงอย่างเดียวนั้นพลาดประเด็นไปโดยสิ้นเชิง การเปรียบเทียบระหว่างโค้ดที่ AI สร้างกับสแปมจดหมายข่าวเน้นย้ำความกังวลเรื่องคุณภาพมากกว่าปริมาณในการพัฒนาซอฟต์แวร์
ข้อกำหนดของโปรเจกต์ (การดำเนินงานของ Ronacher )
- ภาษา: Go ที่มี dependencies น้อยที่สุด
- API: REST API ที่เข้ากันได้กับ OpenAPI
- ฟังก์ชันหลัก: บริการส่ง/รับอีเมล
- คอมโพเนนต์ที่สร้างขึ้น: Python และ TypeScript SDKs
- จำนวนบรรทัดรวม: ~40,000 บรรทัด (Go, YAML, Pulumi, SDK code)
- การมีส่วนร่วมของ AI: ~90% ของปริมาณโค้ด
- เครื่องมือที่ใช้: Claude Code และ Codex สำหรับงานที่แตกต่างกัน
ข้อจำกัดทางเทคนิคปรากฏในสถานการณ์ที่ซับซ้อน
การทดสอบในโลกแห่งความเป็นจริงเผยให้เห็นช่องว่างที่สำคัญในความสามารถของ AI เมื่อจัดการกับเวิร์กโฟลว์การพัฒนาที่ซับซ้อน สมาชิกในชุมชนรายงานว่า AI ประสบปัญหากับการกำหนดค่าระดับการใช้งานจริงที่เกี่ยวข้องกับเทคโนโลยีหลายตัว การทำ containerization โปรโตคอลความปลอดภัย และไปป์ไลน์การปรับใช้งาน งานที่ต้องการการประสานงานระหว่างการกำหนดค่า TypeScript การเชื่อมต่อฐานข้อมูล ใบรับรอง SSL ไปป์ไลน์ CI/CD และมาตรการความปลอดภัยมักจะเกินความสามารถปัจจุบันของ AI
อย่างไรก็ตาม ผู้สนับสนุนระบุว่าสถานการณ์ที่ซับซ้อนเหล่านี้ไม่ควรพยายามทำเป็นพรอมต์เดียว กุญแจสำคัญอยู่ที่การแบ่งงานที่ซับซ้อนออกเป็นส่วนย่อยที่จัดการได้ คล้ายกับวิธีที่นักพัฒนามนุษย์เข้าหาโปรเจกต์ขนาดใหญ่ผ่านการคอมมิตและ pull request แบบค่อยเป็นค่อยไป
TypeScript: ภาษาโปรแกรมที่เพิ่มความปลอดภัยของประเภทให้กับ JavaScript CI/CD: Continuous Integration/Continuous Deployment - แนวปฏิบัติการพัฒนาซอฟต์แวร์แบบอัตโนมัติ
จุดแข็งของ AI เทียบกับข้อจำกัด
ด้านที่ AI เก่ง:
- การสร้าง SQL ดิบและการย้ายฐานข้อมูล
- การสร้างข้อกำหนด OpenAPI
- การตั้งค่าโครงสร้างพื้นฐาน ( AWS , Pulumi )
- โค้ดต้นแบบและโครงสร้างเบื้องต้น
- การตั้งค่าโครงสร้างการทดสอบ
- การสร้างต้นแบบและการทดลองอย่างรวดเร็ว
ด้านที่ AI ประสบปัญหา:
- การทำงานแบบ Threading และ concurrency ( goroutines )
- การตัดสินใจด้านสถาปัตยกรรมระบบ
- รายละเอียดการใช้งาน Rate limiting
- แนวปฏิบัติที่ดีในการจัดการข้อผิดพลาด
- การพิจารณาด้านความปลอดภัย
- การกำหนดค่าแบบหลายบริการที่ซับซ้อน
ความท้าทายของเส้นทางการเรียนรู้สำหรับนักพัฒนาใหม่
ความกังวลสำคัญที่เกิดขึ้นจากการอภิปรายมุ่งเน้นไปที่วิธีที่การสร้างโค้ดด้วย AI ส่งผลต่อการศึกษาและการพัฒนาทักษะของนักพัฒนา ตามปกติ โปรแกรมเมอร์เรียนรู้โดยการเขียนโค้ด รับฟีดแบ็ก และค่อยๆ ปรับปรุงทักษะของตน กระบวนทัศน์ใหม่คาดหวังให้นักพัฒนาระดับจูเนียร์ตรวจสอบและจัดการโค้ดที่ AI สร้างขึ้นในขณะที่เรียนรู้พื้นฐานการเขียนโปรแกรมไปพร้อมๆ กัน
สิ่งนี้สร้างช่องว่างทักษะที่อาจเกิดขึ้นซึ่งโปรแกรมเมอร์ใหม่อาจพึ่งพา AI โดยไม่พัฒนาความเข้าใจเชิงลึกที่จำเป็นสำหรับการออกแบบระบบ การดีบักปัญหาที่ซับซ้อน หรือการตัดสินใจทางเทคนิคที่สำคัญ ชุมชนกังวลเกี่ยวกับคนรุ่นของนักพัฒนาที่สามารถใช้ AI ได้อย่างมีประสิทธิภาพแต่ขาดความรู้พื้นฐานในการประเมินผลลัพธ์อย่างมีวิจารณญาณ
ประโยชน์เชิงปฏิบัติในกรณีการใช้งานเฉพาะ
แม้จะมีข้อจำกัด นักพัฒนารายงานว่าได้รับประโยชน์ด้านผลิตภาพอย่างแท้จริงในบางพื้นที่ การตั้งค่าโครงสร้างพื้นฐาน การสร้างโค้ด boilerplate การเขียนคำสั่ง SQL และการสร้างต้นแบบอย่างรวดเร็วแสดงให้เห็นความหวังมากที่สุด งานที่เคยต้องใช้เวลาหลายวันในการวิจัยและนำไปใช้ตอนนี้สามารถทำเสร็จได้ในไม่กี่ชั่วโมงด้วยความช่วยเหลือจาก AI
เทคโนโลยีนี้เป็นเลิศโดยเฉพาะในการจัดการงานที่น่าเบื่อแต่เข้าใจได้ดี เช่น การย้ายฐานข้อมูล การสร้างโครงสร้าง API และการสร้างไฟล์กำหนดค่า นักพัฒนาชื่นชมความสามารถในการทดลองกับแนวทางที่แตกต่างกันอย่างรวดเร็ว ทำให้เกิดกระบวนการออกแบบแบบวนซ้ำมากขึ้นและการสำรวจสถาปัตยกรรม
บทสรุป
เป้าหมาย 90% ของโค้ดที่ AI สร้างแสดงถึงทั้งความสำเร็จและเรื่องเล่าเตือนใจ แม้ว่าเทคโนโลยีจะแสดงความสามารถที่น่าประทับใจในบริบทเฉพาะ แต่ฉันทามติของชุมชนชี้ให้เห็นว่าการกำกับดูแลของมนุษย์ที่มีประสบการณ์ยังคงเป็นสิ่งจำเป็นสำหรับระบบที่ใช้งานจริง อนาคตน่าจะเกี่ยวข้องกับ AI ในฐานะตัวเร่งการพัฒนาที่ทรงพลังมากกว่าการทดแทนการตัดสินใจทางวิศวกรรมที่มีทักษะ
ความสำเร็จกับโค้ดที่ AI สร้างดูเหมือนจะขึ้นอยู่กับความสามารถของนักพัฒนาในการให้คำแนะนำด้านสถาปัตยกรรมที่เหมาะสม รักษามาตรฐานคุณภาพโค้ด และรู้จักเมื่อไหร่ที่ควรปฏิเสธคำแนะนำของ AI ในขณะที่เทคโนโลยียังคงพัฒนาต่อไป ความท้าทายจะเป็นการรับประกันว่าการเพิ่มผลิตภาพจะไม่มาแลกกับความน่าเชื่อถือของระบบหรือการพัฒนาทักษะของนักพัฒนา
อ้างอิง: 90%