เจาะประเด็น
AI / Coding
เขียนโค้ด 180,000 บรรทัดด้วย AI ใน "โหมดไว้ใจพี่" — ผู้สร้าง Paint.NET ยอมรับเองว่ามันโคตรบ้าบอ
Rick Brewster ปลดล็อกฝันที่เคยคิดว่าเป็นไปไม่ได้ ด้วยการให้ Claude ย้อนวิศวกรรม Direct2D ทั้งระบบ แบบที่เขาไม่ต้องตรวจโค้ดแม้แต่บรรทัดเดียว
ทีมข่าว เอไอไทย.com
⏱ อ่าน 4 นาที
คำถามที่ทุกคนต้องถามตัวเองต่อจากนี้: ถ้า AI เขียนโค้ด 180,000 บรรทัดให้คุณโดยที่คุณไม่ตรวจแม้แต่บรรทัดเดียว — นี่คือนวัตกรรม หรือระเบิดเวลา?
เครื่องมือที่อยู่คู่คนใช้ Windows มาสองทศวรรษอย่าง Paint.NET เพิ่งทำเรื่องที่หลายคนบอกว่า "ไปไม่ถึงฝั่ง" ได้สำเร็จ — และไม่ใช่เพราะมือคนเขียน แต่เป็นเพราะมือของ AI ชื่อ Claude ต่างหาก
Rick Brewster เจ้าของโปรเจกต์ Paint.NET ออกมาเปิดใจผ่าน Simon Willison's Weblog ว่าเขาสามารถเขียน Direct2D เวอร์ชันของตัวเองขึ้นมาใหม่ทั้งหมดจากศูนย์ เพื่อให้ Paint.NET รันบน WINE ได้จริงๆ จังๆ สักที — สิ่งที่เขาเคยคิดว่ามันจะไม่มีวันเกิดขึ้น เพราะ Direct2D คือ "กำแพงที่ใหญ่ที่สุด" ที่ขวางทางมานานหลายปี
ฟังดูเหมือนเรื่องปกติใช่ไหม? แต่เดี๋ยวก่อน — ปริมาณโค้ดที่ว่านี่คือ 180,000 บรรทัด และ Brewster ยอมรับตรงๆ ว่าเขาไม่ได้ตรวจโค้ดพวกนั้นอย่างละเอียดเลยแม้แต่ส่วนเดียว มันคือสิ่งที่เขาเรียกว่า "vibe coded" — ศัพท์ใหม่ในวงการที่แปลว่าปล่อยให้ AI เขียนไปเรื่อย แล้วเราก็แค่ "เออ ดูดีนะ ใช้ได้" — ไม่ได้มานั่งไล่ review ทีละบรรทัดแบบคนรุ่นเก่าทำกัน
เพื่อให้เข้าใจความบ้าของเรื่องนี้ — Paint.NET ทั้งโปรแกรมมีโค้ดประมาณ 700,000 บรรทัด ซึ่ง Brewster ใช้เวลากว่า 20 ปีสะสมมา แต่ Claude สร้าง Direct2D เวอร์ชันใหม่ 180,000 บรรทัด ซึ่งคิดเป็นเกือบ 20% ของโค้ดทั้งหมด ในเวลาที่ไม่ได้ใช้เวลานานขนาดนั้น และที่สำคัญ — มันคือการ reverse-engineer ไลบรารีกราฟิกซับซ้อนของ Microsoft ที่ตัว Brewster เองบอกว่า "มันไม่มีทางสมบูรณ์พอสำหรับการใช้งานของ Paint.NET บน WINE ได้เลย" ถ้าจะให้เขานั่งทำเอง
Direct2D คือ API สำหรับเรนเดอร์กราฟิก 2D ของ Windows ที่ WINE (ชั้นเลเยอร์ให้รันโปรแกรม Windows บน Linux/Mac) ไม่สามารถเลียนแบบได้สมบูรณ์พอสำหรับโปรแกรมที่ใช้งานหนักๆ อย่าง Paint.NET — มันเป็นด่านหินที่นักพัฒนาข้ามไม่ได้มานาน
สิ่งที่ Brewster ทำคือการเปลี่ยนนิยามของ "ความเสี่ยง" ในวงการซอฟต์แวร์ไปตลอดกาล — เขาใช้ AI เขียนโค้ดส่วนที่สำคัญที่สุดของโปรแกรม โดยที่ตัวเองไม่สามารถตรวจสอบได้จริงๆ และยอมรับว่า "ผมไม่มีทางตรวจ 180,000 บรรทัดได้ มันเยอะเกินไปจริงๆ" — ตรงนี้คือจุดที่คนพัฒนาแบบดั้งเดิมจะต้องขนลุก
แต่มันก็ไม่ได้โรยด้วยกลีบกุหลาบ — Brewster เล่าแบบติดตลกกึ่งจริงจังว่า บางจังหวะ Claude "ทำงานด้วยความดุดันราวกับไอน์สไตน์ 10 คนที่เพิ่งถูกปลดโซ่ตรวน" แต่บางจังหวะก็ต้องคอยดูแลอย่างใกล้ชิด เพราะมันลืมทำการจัดการหน่วยความจำที่ถูกต้อง (ลืมทำ COM AddRef() ซึ่งเป็นพื้นฐานที่สุดของพื้นฐาน) และเขาต้อง "ตบ" Claude หลายครั้งเมื่อเจอการออกแบบสถาปัตยกรรมที่แย่มาก
ประเด็นสำคัญที่คนส่วนใหญ่พลาดคือ — AI ไม่ได้เก่งทุกด้านเสมอไป แต่มันเก่งพอที่จะทำงานที่มนุษย์ไม่สามารถทำได้ด้วยข้อจำกัดด้านเวลา และมนุษย์ก็ต้องเป็นคนคุมทิศทาง มันคือการทำงานร่วมกันแบบใหม่ที่ไม่มีคู่มือ และไม่มีใบรับประกันความปลอดภัย
สิ่งที่ Brewster ทำสำเร็จคือการพิสูจน์ว่า "โค้ดที่เขียนโดย AI โดยไม่มีการตรวจสอบอย่างละเอียด" สามารถทำงานจริงในโปรเจกต์ที่จริงจังได้ — แต่มันก็เหมือนกับการนั่งรถไฟเหาะที่ไม่มีเข็มขัดนิรภัย สนุกและตื่นเต้น แต่ถ้าหลุดเมื่อไหร่ เจ็บทั้งคนนั่งทั้งคนดู
Clean-room reverse engineering
เขียนใหม่จากศูนย์โดยดูแค่พฤติกรรมภายนอกของระบบ ไม่ได้ลอกโค้ดต้นฉบับ — วิธีนี้หลีกเลี่ยงปัญหาลิขสิทธิ์ซอฟต์แวร์
Vibe coding
ศัพท์ใหม่ที่หมายถึงการปล่อยให้ AI เขียนโค้ดโดยมนุษย์ไม่ตรวจทานละเอียด — ไว้ใจแบบ "trust me bro"
การทำงานของ Claude ที่น่าประทับใจ
AI สามารถ reverse-engineer สูตรคำนวณทั้งหมดของไลบรารีเอฟเฟกต์ในตัวของ Direct2D ได้อย่างชาญฉลาดและไม่รู้จักเหนื่อย
นี่คือจุดเปลี่ยนของวงการซอฟต์แวร์จริงๆ — ไม่ใช่เพราะ AI เขียนโค้ดเก่งกว่ามนุษย์เสมอไป แต่เพราะมันทำให้สิ่งที่ "เป็นไปไม่ได้" กลายเป็น "เป็นไปได้" โดยที่เราต้องยอมแลกกับการควบคุมที่ลดลง และถ้าถามผม — ตราบใดที่ Brewster ยัง "ตบ" Claude เป็นระยะๆ และรู้ว่าตัวเองกำลังทำอะไรอยู่ นี่คือนวัตกรรมที่น่าจับตามอง ไม่ใช่ระเบิดเวลาที่รอวันระเบิด
ที่มา: Simon Willison's Weblog — อ่านต้นฉบับ
ความคิดเห็น 3
กำลังโหลดความคิดเห็น...