VS Code แทรก 'Co-Authored-by Copilot' ลงในคอมมิตแม้ไม่ได้ใช้งาน
(github.com/microsoft)- PR #310226 เปลี่ยนค่าเริ่มต้นของ
git.addAICoAuthorจากoffเป็นallและถูกรวมเข้าmainแล้ว แต่ภายหลังถูกยอมรับว่าเป็นการถดถอยและมีกำหนดแก้ไขใน 1.119 - การเปลี่ยนแปลงหลักคือพฤติกรรมที่แนบ trailer
Co-authored-by: Copilotโดยค่าเริ่มต้นเมื่อมีการตรวจพบว่ามีส่วนร่วมของโค้ดที่สร้างด้วย AI - การรีวิว PR ของ Copilot ชี้ให้เห็นความไม่สอดคล้องกันระหว่างค่าเริ่มต้นในสคีมาของ
package.jsonกับ runtime fallback ของrepository.ts - ผู้ใช้สามารถทำซ้ำปัญหาได้ว่า แม้จะไม่ได้ใช้ Copilot หรือเปิด
chat.disableAIFeaturesไว้ ก็ยังมีการใส่การระบุผู้ร่วมเขียน - ประเด็นถกเถียงมุ่งไปที่ความคาดหวังแบบ WYSIWYG ของ UI ข้อความคอมมิต ความน่าเชื่อถือของบันทึกผู้เขียน และนัยทางกฎหมายกับไลเซนส์
- ผู้มีส่วนร่วมของ VS Code ระบุว่า ไม่ควรมีการใส่ attribution หากเปิด
disableAIFeaturesอยู่ หรือหากการเปลี่ยนแปลงนั้นไม่ได้ถูกสร้างโดย AI
1 ความคิดเห็น
ความเห็นจาก Hacker News
สิ่งที่น่าสนใจเกี่ยวกับกระแส AI คือมันเป็นปรปักษ์กับ มาตรฐาน อย่างรุนแรง
เรื่องว่ามันทำงานถูกต้องไหม มีจริยธรรมไหม หรือเป็นความจริงไหม ไม่สำคัญอีกต่อไป สิ่งสำคัญมีแค่ว่า “ช่วยใช้ AI ของเราหน่อย”
Microsoft ใช้เวลาหลายสิบปีฟื้นฟูชื่อเสียงของตัวเอง แต่สุดท้ายก็เผามันทิ้งหมดราวกับบูชายัญให้เทพหุ่นยนต์
Google เองเมื่อก่อนก็ใส่ใจประสบการณ์ผู้ใช้อย่างจริงจัง แต่เคยเปลี่ยน CMD-G ใน Google Docs บน macOS ให้ไปเรียกฟีเจอร์ LLM เหมือนกับว่าความหมายของคีย์ลัดมาตรฐานที่ใช้กันมาราว 30 ปีบน macOS ไม่ใช่เรื่องสำคัญอะไร
ตอนนี้พวกเขาคงรู้สึกว่าสามารถทำไอเดียของตัวเองได้จนสุดทางโดยไม่ต้องมีวิศวกรซอฟต์แวร์จอมจู้จี้ที่คอยขัดขวาง บ่น หรือชี้ปัญหาอีกต่อไป อีกไม่นานคงได้เห็น ยูโทเปียของผู้บริหาร อยู่ทุกหนแห่ง
ก็จริงที่ผมไม่ได้สั่งชัดเจนให้เลือกทางที่เป็นมิตรกับผู้ใช้มากกว่า แต่ดูเหมือนเจตนาตั้งต้นคือดูดข้อมูลเข้าหลังบ้านให้มากที่สุดเท่าที่ทำได้ ผมเลยต้องสั่งซ้ำ ๆ ให้ลบมันออกโดยเสียโทเคนเพิ่มอีกหน่อย และยังส่ง feedback ไปด้วยเพราะคิดว่าเป็นปัญหาการเรียนรู้ที่น่าสนใจ
สุดท้าย ความโลภ ก็ชนะอีกครั้งและเผาทุกอย่างทิ้ง
การที่มีอะไรอย่างอินเทอร์เน็ตอยู่ได้นี่แทบเป็นปาฏิหาริย์ และรัฐเป็นคนต้องสร้างมันขึ้นมา การกู้ภาพลักษณ์เชิงประชาสัมพันธ์ยาว 10 ปีของ Microsoft ได้ผลกับพวกเขาอย่างมาก
นี่เหมือน “Sent from my iPhone” ฉบับสมัยใหม่ แต่ล่วงล้ำกว่ามาก
Git commit เป็นบันทึกทั้งทางกฎหมายและทางเทคนิค การบันทึกเท็จว่าใครเป็นคนเขียนโค้ดเพื่อปั่นตัวเลขการใช้งาน AI เป็นการทำลายความเชื่อถืออย่างหนัก และน่าผิดหวังที่ Microsoft ให้ความสำคัญกับการสร้างแบรนด์มากกว่าความถูกต้องสมบูรณ์ของประวัตินักพัฒนา
เราคาดหวังให้ IDE บันทึกสิ่งที่เกิดขึ้นจริง ไม่ใช่บันทึกสิ่งที่ฝ่ายการตลาดอยากให้คนเชื่อว่าเกิดขึ้น
“Sent from my iPhone” มองเห็นได้บนหน้าจอเขียนและลบได้
แต่
Co-authored-by:ไม่เคยแสดงใน UI ของข้อความ commit เลย และถูกเพิ่มเข้าไปทั้งที่ผู้ใช้ไม่เคยเห็นด้วยซ้ำการเอาผู้ใช้ไปใช้เป็นเครื่องมือโปรโมตโดยไม่ได้รับความยินยอม เป็นเรื่องที่ผมมองว่า ผิดจริยธรรม เสมอ
ตอนนี้โค้ดที่ AI สร้างยังไม่ถือว่ามีลิขสิทธิ์
Co-Authored by Copilotอาจตีความได้ว่าแปลว่า “ไม่มีลิขสิทธิ์”สำหรับคนที่เคยเชื่อ Microsoft แบบ “เป็นมิตรกับนักพัฒนา” ในยุคที่ VSCode เป็นตัวแทนภาพลักษณ์นั้น ขอบอกว่านี่คือสิ่งที่พวกเขาทำมาโดยตลอดและจะทำต่อไป
บริษัทนี้ใช้ลูกเล่นแบบนี้มาตั้งแต่ต้นยุค 90
ถ้ายังโดนหลอกได้อีกครั้ง ก็โทษใครไม่ได้นอกจากตัวเอง
ถ้ายังไม่เคยโดนหักหลังด้วยตัวเอง ก็ง่ายที่จะมองข้ามหรือเมินคำเตือนจากคนที่เคยผ่านยุคพฤติกรรมแบบล่าเหยื่อ ต่อต้านการแข่งขัน, EEE, และ stack ranking ของ Microsoft มาแล้ว
มันแย่แหละ แต่ก็ไม่แน่ใจว่าจำเป็นต้อง overreact ขนาดนั้นไหม
ในเมื่อศาลกำลังตัดสินกันว่า โค้ดที่ AI เขียนไม่มีลิขสิทธิ์ นี่จึงเป็นพฤติกรรมที่เป็นปฏิปักษ์ต่อผู้ใช้เป็นพิเศษ
ตอน Hotmail โตด้วย growth hacking โดยใส่ “sent using Hotmail” ในอีเมล มันไม่มีผลทางกฎหมายตามมา แต่กรณีนี้อาจต่างออกไป
ส่วนที่ตลกที่สุดคือ Copilot ไปคอมเมนต์ใน PR ว่าการเปลี่ยนแปลงนี้ไม่ได้เปลี่ยนพฤติกรรมจริง แต่สร้างความไม่สอดคล้องใน codebase และเสนอให้ย้อนกลับ
ดูเหมือนคอมเมนต์นี้จะถูกเพิกเฉย
“ค่าเริ่มต้นของสคีมาการตั้งค่าถูกเปลี่ยนเป็น
allแต่ runtime fallback ยังเรียกconfig.get('addAICoAuthor', 'off')อยู่ในextensions/git/src/repository.tsตอนนี้สองส่วนนี้ไม่ตรงกัน ซึ่งอาจทำให้เกิดพฤติกรรมไม่คาดคิดในบริบทที่ไม่ได้โหลดค่าเริ่มต้นของ contributed configuration (เช่น บางการทดสอบ/บางโฮสต์) และยังทำให้ค่าเริ่มต้นที่ตั้งใจไว้ไม่ชัดเจน ควรปรับ runtime fallback ให้ตรงกับค่าเริ่มต้นของสคีมา หรือไม่ก็ละ fallback ไปเลยเพื่อให้ใช้ contributed default”แต่เหมือนจะจับการเปลี่ยนค่าเริ่มต้นจริง ๆ ไม่ได้ ไม่รู้ว่าเพราะมันไม่ได้อยู่ในเมนูตรงไหนหรือเปล่า
ผมคิดว่า text editor ต่อให้มีปฏิสัมพันธ์กับ Git ก็ควรทำแค่ ดู diff เท่านั้นและไม่ควรทำอย่างอื่น
lazygitไม่ผูกกับ text editor และให้ high-level interface ที่แทบสมบูรณ์แบบกับ Git จึงทำงานได้ยอดเยี่ยมไม่ว่าจะอยู่ใน Ghostty, Terminal, zed, VS Code หรือสภาพแวดล้อมไหน มันก็ทำงานเหมือนกันและช่วยลดจำนวนการกดคีย์ได้มาก
เผื่อใครยังไม่ทราบ หลังจากนั้นพวกเขาเปลี่ยนค่าเริ่มต้นของ
git.addAICoAuthorเป็นchatAndAgenthttps://github.com/microsoft/vscode/pull/312880
เท่ากับว่ามันเปลี่ยนจาก
off→on→chatAndAgentPR แรกถูกคนเขียนอนุมัติและ merge เองภายในนาทีเดียว ดังนั้นเท่าที่เห็นก็คือเปลี่ยนแบบไม่ผ่านการทบทวนเพิ่มเติมอย่างมืดบอด หรือไม่ก็ฝืนเดินหน้าทั้งที่ผู้ใช้ไม่พอใจ ซึ่งทั้งสองแบบก็เป็นหลักฐานว่าการกำกับดูแล VSCode ย่ำแย่
การตลาดแบบ “Sent from my iPhone” จะได้ผลก็ต่อเมื่อคนอยากให้ทุกคนรู้ว่าตัวเองใช้สินค้านั้น
ทั้งที่ใช้ Android และส่งอีเมลจากคอมพิวเตอร์เป็นหลัก แต่ทำไปเพราะอยากกวนประสาทแบบวัยรุ่นขี้ประชด และก็ได้ปฏิกิริยาที่น่าสนใจพอสมควร
มันน่าสนใจดีที่จะมองดูว่า วิธีการสื่อสาร ทั้งแบบดิจิทัลและไม่ดิจิทัลเปลี่ยนไปอย่างไรตามกาลเวลา
การตลาดแบบ tagline พวกนี้ได้ผลดีที่สุดกับคนที่ไม่รู้ตัวด้วยซ้ำว่าตัวเองมีส่วนร่วมอยู่ หรือถึงรู้ก็ไม่คิดจะเปลี่ยน
เพราะผลตอบแทนจากการแก้ไขมันน้อยเมื่อเทียบกับความพยายาม ข้อความการตลาดเลยคงอยู่ต่อไป
Sent from my iPhone
Downloaded from Demonoid
Rusty n Edie's: The world's friendliest BBS 216-726-0737
มันน่ารำคาญก็จริง แต่ได้ผลแน่นอน
ท้ายข้อความจะมี Sent by Outlook Android / iOS
นี่คือการปั่น ตัวชี้วัด ของใครบางคนที่ไหนสักแห่งใน Microsoft
ปัญหาคือเมื่อหัวหน้ารู้ว่าตัวชี้วัดนี้มาจากการปั่น จะสั่งย้อนกลับหรือกลับสนับสนุนมัน
คนสร้าง MR คือ https://github.com/cwebster-99 และเป็น Product Manager ของ Microsoft
ผมพูดมานานแล้วว่า product manager ในวงการเทคมักไร้ประโยชน์และบางครั้งก็เป็นโทษ
การขาดผู้นำที่ยอมปล่อยให้ PM ดัน ตัวชี้วัดความฟุ้งฝัน อย่าง “PM เขียนโค้ด” ยิ่งไม่ช่วยอะไร
ในโปรไฟล์เขียนว่า “@microsoft Product Manager ดูแล VS Code และ GitHub Copilot”
แต่พอเห็นชื่อ PR แล้ว เหมือนพวกเขาไม่ได้พยายามปกปิดเลยด้วยซ้ำ
ตัวชี้วัดปลอม ๆ งั้นเหรอ? ถ้าหุ้นขึ้นก็ถือว่าไม่มีปัญหา
ผมว่านี่เข้าข่ายสถานการณ์แบบ “เสือดาวกินหน้าฉัน” นะ
เราไม่ได้ “เห็นพ้อง” กันไปแล้วเหรอว่าปล่อยให้ AI เขียนโค้ดและควบคุม repository ซอฟต์แวร์เป็นเรื่องดี?
ประมาณว่าไม่ต้องรู้หรอกว่าใต้ผิวบาง ๆ นั้นเกิดอะไรขึ้น ขอแค่เร็ว เดี๋ยวค่อยแก้ทีหลัง แล้วจะต้องมีการทดสอบไปทำไม ลูกค้าของฉันก็คือ tester ของฉันไง
แต่ตอนนี้พอนักพัฒนากลายเป็นลูกค้า มันเลยกลายเป็นเรื่องแย่ขึ้นมาสินะ?
ถ้า agent เป็นคนเขียนทั้งโค้ดและข้อความ commit การเพิ่ม
Co-authored-byเป็นค่าเริ่มต้นก็ถือว่าโอเคได้ แต่การไม่แสดงให้ดูก่อน commit นั้นไม่โอเค และการเพิ่มข้อความนี้ทั้งที่ AI แค่ช่วย autocomplete โค้ดก็ไม่โอเคเหมือนกัน