ข้ามไปเนื้อหา

เขียนระบบด้วย AI ให้เร็วและไม่พัง

หกกติกาที่ใช้จริง: วางแผนก่อน เทสต์ก่อน ตรวจบนของจริง ความปลอดภัยไม่ใช่งานทีหลัง งานเล็กย้อนกลับได้ และคนรับผิดชอบ

เผยแพร่

1วางแผนก่อนลงมือ2เทสต์ก่อนโค้ด3ตรวจบนของจริง4ความปลอดภัยทุกครั้ง5งานเล็กย้อนกลับได้6บันทึกทุกขั้นคนรับผิดชอบAI ช่วยเขียนและคิด

ผมใช้ AI ช่วยเขียนโค้ดและวางแผนระบบทุกวัน งานที่เคยใช้หลายเดือนเหลือไม่กี่สัปดาห์ แต่ความเร็วแบบนี้อันตรายถ้าไม่มีกติกา AI เขียนโค้ดที่ดูถูกต้องได้เร็วมาก และเขียนโค้ดที่ผิดได้เร็วพอกัน บทความนี้คือกติกาที่ผมใช้จริง และรวมไว้เป็น jk framework

1. วางแผนก่อนลงมือ แม้จะรีบ

ก่อนแก้โค้ดทุกงานที่ใหญ่กว่าการแก้บรรทัดเดียว ให้ AI เขียนแผนสั้น ๆ ก่อน ว่าจะแก้ไฟล์ไหน เพื่ออะไร และจะรู้ได้อย่างไรว่าเสร็จ คนอ่านแผนแล้วตัดสินใจ งานที่ผิดทางจะถูกจับได้ตั้งแต่ยังไม่มีโค้ดสักบรรทัด

2. เขียนเทสต์ก่อนโค้ด และต้องเห็นมันล้มก่อน

ให้ AI เขียนเทสต์ที่บอกพฤติกรรมที่ต้องการ รันให้เห็นว่าล้ม แล้วจึงเขียนโค้ดให้ผ่าน เทสต์ที่ผ่านตั้งแต่ครั้งแรกบอกอะไรไม่ได้เลย นี่คือเครื่องมือเดียวที่ทำให้ผมไว้ใจโค้ดที่ไม่ได้พิมพ์เอง

1เขียนเทสต์ต้องล้มก่อน (แดง)2เขียนโค้ดให้ผ่าน (เขียว)3ปรับโค้ดให้สะอาดทุกการเปลี่ยนแปลงเทสต์ที่ไม่เคยเห็นล้ม พิสูจน์อะไรไม่ได้

3. ตรวจบนของจริง ไม่ใช่ตรวจในหัว

คำว่า "น่าจะใช้ได้" ไม่นับ ต้องรันคำสั่งตรวจจริงและอ่านผลลัพธ์ทุกครั้ง บทเรียนล่าสุดของผม: หน้าเว็บที่ดูสมบูรณ์ใน Chrome แต่ภาพหายบน iPhone รุ่นเก่า เพราะ Safari อ่านค่าสีบางแบบไม่ได้ ตอนนี้ทุกหน้าต้องผ่านการทดสอบบนเอนจินเดียวกับ iPhone ก่อนขึ้นจริง

ดูใน Chrome อย่างเดียวหน้าเว็บดูสมบูรณ์ภาพหายบน iPhone รุ่นเก่าผู้ใช้เจอปัญหาก่อนเราตรวจบนเอนจินจริงทุกครั้งChrome บนคอมพิวเตอร์WebKit แบบเดียวกับ iPhoneทั้งโหมดมืดและสว่าง

4. ความปลอดภัยไม่ใช่งานทีหลัง

ทุกงานผ่านรายการตรวจเดียวกัน ทั้งรหัสผ่านต้องไม่อยู่ในโค้ด สิทธิ์ต้องตรวจฝั่งเซิร์ฟเวอร์ และ header ความปลอดภัยต้องครบ AI ช่วยไล่ตรวจได้เร็ว แต่การตัดสินใจเรื่องที่ย้อนกลับไม่ได้ เช่น ลบข้อมูลหรือเปิดพอร์ต ต้องเป็นคนกดเอง

5. งานเล็ก ย้อนกลับได้ บันทึกทุกขั้น

แตกงานเป็นชิ้นเล็กที่ commit ได้ทีละชิ้น ถ้าผิดก็ย้อนได้ทันที และเขียนเอกสารสั้น ๆ ไว้ทุกครั้ง เพื่อให้ตัวเองในอีกหกเดือน หรือคนอื่นที่มารับงานต่อ เข้าใจได้โดยไม่ต้องถามใคร

ผิดตรงนี้ ย้อนได้ทันทีงานก้อนใหญ่แก้ทีเดียวหลายสิบไฟล์ พังแล้วหาสาเหตุไม่เจองานเล็กหลายชิ้นแผนเทสต์+โค้ดบันทึกบันทึกบันทึกเริ่มเสร็จ

6. คนรับผิดชอบ AI เป็นเครื่องมือ

AI ไม่รู้ว่าโรงงานของคุณกลัวอะไร ไม่รู้ว่าสายการผลิตไหนหยุดไม่ได้ และไม่ต้องรับผิดชอบเมื่อระบบล่ม คนทำงานต้องเป็นคนตั้งโจทย์ ตัดสินใจ และรับผลลัพธ์ทุกชิ้น เมื่อแบ่งหน้าที่แบบนี้ AI จะทำให้คนหนึ่งคนทำงานได้เท่าทีมเล็ก ๆ โดยคุณภาพไม่ลดลง

ผลที่ได้

ระบบฟาร์มบ้านรักผักทั้งชุด ทั้งบอร์ด เซิร์ฟเวอร์ เว็บ แอปมือถือ เครื่อง edge และ AI วิเคราะห์ใบผัก สร้างโดยคนคนเดียวด้วยวิธีนี้ เว็บที่คุณกำลังอ่านก็เช่นกัน

คุยเรื่องงาน