เจาะประเด็น
AI / Dev Tools
นับบรรทัดโค้ดไม่ใช่เรื่องงี่เง่าเสมอไป แต่ระวังบ้านผีสิงแบบ Winchester ถ้าใช้ AI Agent โดยไร้วินัย
มุมมองจาก Simon Willison ที่ท้าทายความเชื่อเดิมๆ ว่าทำไม "จำนวนบรรทัดโค้ด" ถึงยังวัดผลได้ และทำไม "Conceptual Integrity" ถึงเป็นด่านหินที่ AI ข้ามไม่ได้
ทีมข่าว เอไอไทย.com
⏱ อ่าน 4 นาที
เคยสงสัยไหมว่าทำไมบริษัทถึงยังต้องจ้างวิศวกรเป็นทีม ในเมื่อ AI เขียนโค้ดได้เร็วเป็นร้อยเท่า? คำตอบอาจไม่ได้อยู่ที่ "เขียนโค้ด" แต่อยู่ที่ "สมอง" ที่ต้องคอยควบคุมมันต่างหาก
ปัญหาโลกแตกของวงการซอฟต์แวร์ยุค AI มักจะวนอยู่ที่คำถามเดิมๆ ว่า "วัด productivity ยังไงดี?" และคำตอบสำเร็จรูปที่ได้ยินจนชินหูคือ "อย่าไปนับบรรทัดโค้ด มันไร้สาระ" แต่ Simon Willison เจ้าของบล็อกดังและผู้สร้าง Datasette กลับลุกขึ้นมาสวนกลับว่าความคิดแบบนั้นมันเชยไปแล้ว — ในบางบริบท โดยเฉพาะยุคที่ AI Agent เข้ามาเป็นผู้ช่วยเขียนโค้ด การนับบรรทัดโค้ดกลับกลายเป็นตัวชี้วัดที่มีความหมายมากขึ้นด้วยซ้ำ
ประเด็นนี้มาจากตอนล่าสุดของพอดแคสต์ Talking Postgres ที่ Simon ไปเป็นแขกรับเชิญร่วมกับ Claire Giordano ในหัวข้อ "How AI is changing software development" ซึ่งเขานำบทสนทนามาเล่าต่อในบล็อกของตัวเอง พร้อมกับขยายความแนวคิดที่หลายคนอาจมองข้ามไป
ก่อนยุค AI วิศวกรเก่งๆ หนึ่งคนต่อวันจะเขียนโค้ดที่พร้อมขึ้น production ได้แค่หลักร้อยบรรทัด — และ 200 บรรทัดต่อวันที่ debug แล้ว ผ่าน test แล้ว ถือเป็นวันที่สุดยอดมากๆ บางวันได้แค่ 50-60 บรรทัดก็บุญแล้ว ตัวเลขนี้คือ "ขีดจำกัดทางกายภาพ" ของมนุษย์ที่ทุกคนยอมรับกันเงียบๆ
แต่เมื่อ AI Agent เข้ามา สิ่งที่เปลี่ยนไปคือตัวเลขนี้พุ่งพรวดกลายเป็นหลักพันบรรทัดต่อวัน นี่ไม่ใช่การปรับปรุงแบบค่อยเป็นค่อยไป แต่มันคือการก้าวกระโดดครั้งใหญ่ที่เปลี่ยนนิยามของคำว่า "productive" ไปตลอดกาล ตราบใดที่คุณภาพของโค้ดยังเท่าเดิม — หมายถึง maintainable, มี test ครอบคลุม และ debug แล้ว — การพูดว่า "วันนี้ฉันเขียนโค้ดได้ 1,000 บรรทัด" มันมีความหมายจริงๆ ไม่ใช่แค่ตัวเลขลอยๆ
และนี่คือจุดที่ Simon ชี้ให้เห็นถึงกับดักสำคัญของยุค AI — ถ้าวิศวกรคนเดียวเขียนโค้ดได้เร็วขึ้น 100 เท่า แล้วบริษัทจะจ้างคนเดียวพอไหม? คำตอบของเขาคือ "ไม่" เพราะข้อจำกัดใหม่ไม่ใช่เวลาหรือความเร็วในการพิมพ์อีกต่อไป แต่กลายเป็น "cognitive capacity" หรือความสามารถในการทำความเข้าใจและควบคุมโค้ดทั้งหมดในหัว
คุณอาจเขียนโค้ดได้เร็วขึ้น 100 เท่า แต่สมองคุณไม่สามารถ "จดจำ" หรือ "เชื่อมโยง" โค้ดปริมาณมหาศาลนั้นได้เท่าทัน ความผิดพลาดจะเกิดขึ้นได้ง่ายถ้าคุณไม่เห็นภาพรวมทั้งหมด — นี่คือเหตุผลว่าทำไมการมีทีมวิศวกรหลายคนถึงยังจำเป็น ไม่ใช่เพราะคนเดียวเขียนไม่ทัน แต่เพราะต้องช่วยกัน "แบ่งเบาภาระทางปัญญา" นั่นเอง
มาถึงประเด็นที่ Simon เรียกว่าเป็นหัวใจของปัญหาจริงๆ — "Conceptual Integrity" หรือความสมบูรณ์ทางแนวคิดของซอฟต์แวร์ แนวคิดนี้มาจากหนังสือคลาสสิก The Mythical Man-Month ซึ่งกล่าวไว้ว่า ซอฟต์แวร์ที่ดีควรมี "ความสมบูรณ์" ในตัวเอง หมายถึงไม่มีอะไรเซอร์ไพรส์ ครอบคลุมโดเมนได้ถูกต้อง ทุกอย่างประกอบเข้าด้วยกันแล้วสมเหตุสมผล ไม่มีส่วนไหนที่ดูแปลกแยกหรืองอกออกมาแบบไม่มีที่มา
ปัญหาคือ AI Agent มันทำลายแนวคิดนี้ได้อย่างง่ายดายมาก คุณมีความคิดจะเพิ่มฟีเจอร์ใหม่ ป๊อกแป๊ก 5 นาทีต่อมาได้ฟีเจอร์นั้นแล้ว — โดยที่คุณไม่ได้คิดให้รอบคอบว่ามันเข้ากับสถาปัตยกรรมเดิมหรือไม่ โค้ดมันก็จะงอกออกมาเป็น "ปุ่มปูดๆ" ตามทิศทางที่ต่างคนต่างทำ ไม่มีทิศทางเดียวกัน
Claire เปรียบเทียบสถานการณ์นี้กับ "Winchester Mystery House" — บ้านผีสิงในตำนานของหญิงม่ายผู้สร้างห้องเพิ่มไปเรื่อยๆ เป็นเวลา 40 ปี เพราะหมอดูบอกว่าจะโดนผีคนที่ถูกสามีฆ่าหลอกหลอนถ้าหยุดสร้าง รวมแล้วมีห้องถึง 140 ห้อง แต่โครงสร้างมันไม่สมเหตุสมผลเลย มีบันไดขึ้นไปชนเพดาน ประตูเปิดไปเจอกำแพง เพราะสร้างไปเรื่อยโดยไม่มีแบบแปลน
นี่คือสิ่งที่กำลังเกิดขึ้นกับซอฟต์แวร์ยุค AI Agent เปรียบเทียบได้ตรงตัวมาก — การเพิ่ม "ห้องใหม่" (ฟีเจอร์ใหม่) มันถูกและเร็วจนน่าดึงดูดใจเกินไป ผลลัพธ์ที่ได้คือระบบที่ conceptual integrity พังทลาย และเมื่อถึงจุดนั้น การตัดสินใจอะไรก็ยากขึ้นไปหมด เพราะคุณไม่รู้ว่าส่วนไหนของระบบมันพึ่งพากันยังไง
Simon สรุปประเด็นนี้ได้อย่างคมคายว่า ทุกอย่างมันวนกลับมาที่ "วินัย" เสมอ ในอดีต วินัยถูกบังคับโดยเวลาที่ต้องใช้ — ถ้าอยากได้ฟีเจอร์บ้าๆ สักอย่าง คุณต้องคิดหนักเพราะมันกินเวลาเป็นอาทิตย์ แล้วคุณก็จะล้มเลิกไปเอง แต่ตอนนี้ถ้ามันใช้เวลาแค่ชั่วโมงเดียว คุณจะหาเหตุผลมาปฏิเสธได้ยากมาก และนั่นคือจุดเริ่มต้นของความหายนะ
ข้อคิดที่ 1: วัดปริมาณได้ แต่ต้องคู่กับคุณภาพ
การนับบรรทัดโค้ดจะกลับมามีความหมายอีกครั้งในยุค AI แต่ต้องย้ำเสมอว่า "บรรทัดโค้ดที่ debug แล้ว" เท่านั้นถึงจะนับ — โค้ดที่พังๆ ไม่มีค่าอะไร
ข้อคิดที่ 2: Cognitive Load คือทรัพยากรที่แพงที่สุด
ยิ่งโค้ดเยอะและซับซ้อน สมองคุณยิ่งต้องทำงานหนักขึ้นในการทำความเข้าใจ — การมีทีมไม่ใช่เรื่องของกำลังคน แต่คือการกระจายภาระทางปัญญา
ข้อคิดที่ 3: วินัยคือสิ่งที่ AI แย่งจากคุณไป
ความช้าคือตัวกรองธรรมชาติที่เคยปกป้องซอฟต์แวร์จากฟีเจอร์งี่เง่า — เมื่อ AI ทำให้ทุกอย่างเร็วขึ้น คุณต้องสร้างวินัยใหม่ขึ้นมาแทนที่
ฟังดูขัดหูขัดตา แต่การกลับมานับบรรทัดโค้ดในยุค AI อาจไม่ใช่เรื่องงี่เง่าอีกต่อไป — แต่อย่าลืมว่าตัวเลขที่แท้จริงที่ต้องวัดไม่ใช่ "ปริมาณโค้ด" แต่คือ "ความสามารถในการรักษาความสมบูรณ์ของระบบ" ต่างหาก AI ช่วยให้คุณเขียนโค้ดได้เร็วขึ้น แต่ไม่มี AI ตัวไหนที่จะช่วยรักษา conceptual integrity ของโปรเจกต์คุณได้ ถ้าคุณไม่มีวินัยเพียงพอ — ไม่งั้นโปรเจกต์คุณก็จะกลายเป็น Winchester Mystery House แห่งวงการซอฟต์แวร์ ที่มีห้องเยอะ แต่เดินไปไหนก็เจอแต่กำแพง
ที่มา: Simon Willison's Weblog — อ่านต้นฉบับ
ความคิดเห็น 6
กำลังโหลดความคิดเห็น...