BOOK 01 · เมื่อเจอ AI

เมื่อเจอ AI

ตอนที่ 01 — 29 เล่าช่วงที่ผมกลับมาเขียนโปรแกรมในวัยสี่สิบ แล้วค่อย ๆ เดินไปจนได้ทำ Buddy จากการทดลองเล่น ๆ กลายเป็นของจริงที่ยอมรับบน Production จากนั้นนำวิธีทำงานเดียวกันนี้ออกไปลองกับทีมจริง ทุกตอนมีทั้งสิ่งที่ลอง สิ่งที่พลาด และสิ่งที่ได้เรียนรู้กลับไปใช้ต่อ

เล่มที่ 129 ตอน8 ก้าวเปิดอ่านได้แล้ว
ภาพปกเล่ม เมื่อเจอ AI
สารบัญ · 8 ก้าว

เรื่องเล่าทีละก้าว

เลือกก้าวที่สนใจ หรือไล่อ่านตามลำดับเวลาตั้งแต่ตอนที่ 01 ถึง 29

ก้าวที่ 1 · ตอนที่ 01 — 04

ก้าวแรกกับ AI

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

ตอนที่ 01พ่อศึกษาภาพเส้นทาง AI อย่างระมัดระวัง ขณะ Buddy ยิ้มถือเข็มทิศ

ก่อนจะเข้าป่าดง AI

หลังเว้นจากการเขียนโค้ดและลองเส้นทางอื่น ผมกลับมาเริ่มจากงานจริง ค่อย ๆ เรียนรู้ Laravel และเครื่องมือใหม่ ก่อนลองให้ Codex สร้างหน้าเว็บ

สิ่งที่ได้เรียนรู้ — เริ่มจากงานตรงหน้าได้ แต่ผลงานจาก AI ยังต้องตรวจว่าตรงกับโจทย์จริงหรือไม่
ตอนที่ 02พ่อทบทวนคำถามสุขภาพกับ Buddy ผ่านบันทึกบริบท

โจทย์แรก: Thai Health Buddy

การจดสุขภาพใน Notepad ช่วยให้เห็นข้อมูลย้อนหลัง แต่ยังต้องส่งบริบทให้ Chat ซ้ำ ๆ จึงกลายเป็นโจทย์แรกของ Buddy

สิ่งที่ได้เรียนรู้ — Product Vision และเอกสารช่วยให้ AI รับช่วงบริบท ส่วนข้อมูลที่ AI ร่างต้องให้คนตรวจและยืนยันก่อนเก็บ
ตอนที่ 03พ่อกับ Buddy ทดลองเชื่อมข้อความจาก LINE เข้ากับสมุดข้อมูล

เริ่มทดลองให้ LINE กับ AI เดินด้วยกัน

ก่อนทดลองให้ LINE กับ AI ทำงานร่วมกัน ผมเลือกวิธีและ Stack โดยดูต้นทุนรวม เวลานอกงาน และความยืดหยุ่น

สิ่งที่ได้เรียนรู้ — ไม่หา Stack ที่ดีที่สุดทุกกรณี แต่เลือกสิ่งที่รับต้นทุนไหว เปลี่ยน Model ได้ และตรวจเทียบกับเงื่อนไขจริง
ตอนที่ 04พ่อวางเส้นทางทำงานขั้นต่ำจากข้อความไปสู่ข้อมูลร่วมกับ Buddy

Walking Skeleton: ทำให้เส้นทางเล็กที่สุดเดินได้

เริ่มจากข้อความและข้อมูลน้ำหนัก ให้ Mock AI สร้าง Extraction Draft แล้วทดลองยืนยันหรือปฏิเสธ บันทึกและตอบกลับผ่าน LINE

สิ่งที่ได้เรียนรู้ — Flow LINE กับ Mock AI เดินได้ แต่ยังไม่ยืนยันความแม่นของ Model จริง: Validate ร่างกับข้อความต้นทาง และ Verify Flow ด้วยหลักฐาน

ก้าวที่ 2 · ตอนที่ 05 — 07

ก้าวสู่โลกจริง

จากการทำความเข้าใจผู้ใช้ สู่การทดลองใช้เครื่องมือและจัดระบบก่อนนำระบบขึ้นใช้งานครั้งแรก

ตอนที่ 05พ่อเชื่อมบริบทเรื่องมื้ออาหาร กิจกรรม และช่วงเวลาเพื่อทำความเข้าใจข้อความ

เมื่อข้อความหนึ่งข้อความ ยังไม่ได้แปลว่าเข้าใจกัน

บทเรียนบนหน้าจอ LINE เมื่อความพยายามรีดเก็บข้อมูลสุขภาพจนน่ารำคาญ นำไปสู่การรื้อวิสัยทัศน์สู่ SabayJai Buddy ผู้ช่วยที่เข้าใจบริบทชีวิตมนุษย์

สิ่งที่ได้เรียนรู้ — อย่ามองผู้ใช้เป็นแค่แบบฟอร์ม มนุษย์ต้องการผู้ช่วยที่เข้าใจบริบทชีวิต และเคารพธรรมชาติของการพูดคุย
ตอนที่ 06พ่อจัดขอบเขตงานของผู้ช่วยแต่ละส่วนโดยมี Buddy ช่วยประสาน

จากการลอง Multi-Agent สู่การทำงานแบบมีขอบเขต

บันทึกการทดลอง Multi-Agent ข้อจำกัดของการสั่งงานผ่านแชท และวิธีนำประสบการณ์ทำงานมากำหนดขอบเขตให้ AI

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

First Go-Live: เช่า VPS จด Domain และมีเว็บไซต์ของตัวเองครั้งแรก

ก้าวข้ามขีดจำกัดเรื่อง Docker เช่า VPS และจดโดเมนส่วนตัวครั้งแรก สู่การส่งระบบ v0.1.0 ขึ้น Production จริงตั้งแต่ตีสามถึงหกโมงครึ่งก่อนไปทำงาน

สิ่งที่ได้เรียนรู้ — Localhost ไม่ใช่โลกจริง การมีวินัยทดสอบบน Test Environment อย่างเข้มงวด คือสิ่งเดียวที่ทำให้การเปิดระบบจริงราบรื่น

ก้าวที่ 3 · ตอนที่ 08 — 09

ก้าวผ่าตัดสถาปัตยกรรม

เมื่อระบบเติบโตและขอบเขตภายในยังไม่ชัด ผมจึงจัดโครงสร้างใหม่และทบทวนทางเข้าออกของระบบ

ตอนที่ 08พ่อแยกบริการก้อนใหญ่ที่พันกันออกเป็นส่วนชัดเจนร่วมกับ Buddy

จาก Demi-God Service กลายร่างเป็น Zeus Service: บทเรียนที่ทำให้ต้องวาง SBJ Runtime ใหม่

บทเรียนจากการกำหนดขอบเขตใหม่ให้ระบบ การปรับโครงสร้าง 9,303 บรรทัด และการทดสอบบนสภาพแวดล้อมจริง

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

เมื่อถึงเวลาที่ Web ต้องเป็น Web: กับดักสายระโยงระยาง และการเหยียบเบรกเพื่อสร้างประตูหน้าบ้าน

แชทมีไว้คุย เว็บมีไว้ทำงาน กับดักสายระโยงระยางที่เจาะทะลุหลังบ้าน และการตัดสินใจเหยียบเบรกเพื่อสร้าง Gateway คุมทางเข้าบานเดียวเพื่อมุ่งสู่ Masterpiece

สิ่งที่ได้เรียนรู้ — หากเป้าหมายคือ Masterpiece อย่าประนีประนอมกับทางลัดที่ไร้วินัย การยอมช้าหนึ่งก้าวเพื่อสร้างประตูควบคุม คือสิ่งที่ทำให้คนทำระบบนอนหลับสบาย

ก้าวที่ 4 · ตอนที่ 10 — 13

ผมกับ AI ออกเดินทางต่อ โดยคิดว่าจะไปถึง Production รอบสองในสองสัปดาห์

เริ่มจากแผนและการทดลอง ก่อนตามหาร่องรอยที่หาย แล้วตรวจเอกสารกับสิ่งที่ทำจริง จนผมเห็นว่าการรื้อแบบค่อย ๆ เติมกำลังพาเราออกจากเป้าหมาย

ตอนที่ 10พ่อกับ Buddy วางแผนเส้นทางไป Production ภายในสองสัปดาห์

เมื่อผมกับ AI คิดว่าจะไปถึง Production รอบสองในสองสัปดาห์

วางแผนทำ Runtime ก่อนกลับไปทำ Web แล้วเริ่มจากการต้อนรับผู้ใช้และเก็บข้อมูล

สิ่งที่ได้เรียนรู้ — แผนช่วยให้เริ่มเดินได้ แต่ยังไม่ยืนยันว่าทางที่สร้างทำสิ่งที่ตั้งใจจริง
ตอนที่ 11พ่อใช้แว่นขยายไล่ตรวจร่องรอยข้อมูลที่ขาดบนเส้นทาง

ผมกับ AI ออกตามหาร่องรอยที่หายไป

Capture บันทึกข้อมูลได้ แต่ Logging ไม่ตามมาที่ทางใหม่ จึงต้องพักงานส่วนอื่นเพื่อไล่ดูและตรวจซ้ำ

สิ่งที่ได้เรียนรู้ — ต้องตรวจให้ได้ว่าระบบทำอะไรระหว่างทาง ไม่ใช่ดูเฉพาะผลปลายทาง
ตอนที่ 12พ่อพบจุดสะดุดขณะลองใช้จริง แม้ผลทดสอบจะผ่านครบ

Test ผ่าน 100% แต่พอผมลองเองก็เจอปัญหา

ชุด Test เพิ่มขึ้นและผ่าน แต่การ Manual Test ของผมยังพบปัญหาซ้ำ

สิ่งที่ได้เรียนรู้ — ผล Test ยืนยันเฉพาะสิ่งที่เราเลือกตรวจ ไม่เท่ากับการยอมรับจากการใช้งานจริง
ตอนที่ 13พ่อปวดหัวกับแผนที่งานที่พันกัน ขณะ Buddy ช่วยดูเส้นทางอย่างร่าเริง

ผมเลือกอัปเกรดอย่างระวัง ก่อนหยุดการรื้อที่เริ่มหลุดเป้า

หลังตรวจฐานที่อัปเกรดแล้ว ผมกลับไปจัด God Service ทีละน้อย ก่อนเห็นจากเอกสารกับโค้ดว่างานเริ่มหลุดจากเป้าหมาย

สิ่งที่ได้เรียนรู้ — เมื่อวิธีเดิมพาออกนอกเป้าหมาย ผมต้องกล้าหยุดและเริ่มใหม่

ก้าวที่ 5 · ตอนที่ 14 — 17

จากการวางแผนรื้อ สู่การเข้าใจ Agent และจัดวิธีทำงานกับ AI ใหม่

ผมวางเจ้าของงานก่อนให้ AI ลงมือ ตรวจว่าสิ่งสำคัญยังอยู่ แล้วเริ่มเข้าใจว่า Buddy กำลังมุ่งไปสู่ Agent พร้อมปรับเอกสารให้เป้าหมายกับหลักฐานเชื่อมถึงกัน

ตอนที่ 14พ่อวางแผนแบ่งความรับผิดชอบ ขณะที่ Buddy ช่วยจัดแผน

ก่อนให้ AI ลองใหม่ ผมวางเจ้าของงานของ God Service ให้ชัด

วางภาพการรื้อทั้งหมด แบ่งเจ้าของหน้าที่และขอบเขต แล้วทำโพยละเอียดให้ AI ก่อนแตะโค้ด

สิ่งที่ได้เรียนรู้ — การเริ่มใหม่ต้องเริ่มจากภาพรวมและความรับผิดชอบที่ชัด
ตอนที่ 15พ่อกับ Buddy ตรวจเส้นทางที่ประกอบขึ้นตามแผน

เมื่อกรอบชัดแล้ว ผมให้ AI รื้อทีละเส้นทางและตรวจสิ่งที่ต้องรักษา

ให้ AI เริ่มจากข้อกำหนด แบ่งทำทีละเส้นทาง แล้วตรวจสิ่งที่ต้องรักษาก่อนปิดงานตามขอบเขต

สิ่งที่ได้เรียนรู้ — งานจะปิดได้เมื่อผลและหลักฐานตรงกับเป้าหมาย
ตอนที่ 16พ่อเริ่มเข้าใจแนวคิด Agent ขณะที่ Buddy ส่งข้อมูลเฉพาะที่ได้รับอนุญาตให้ AI

ผมเริ่มเข้าใจ Agent และปรับโครง SBJ Buddy ให้เรียกใช้ Tools ได้เต็มตัว

Current Tool ดึงข้อมูลเฉพาะของผู้ใช้คนเดียวในขอบเขตที่เหมาะสม และโครงใหม่เปิดทางให้เพิ่ม Tool ได้ง่าย

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

เอกสารชุดเดิมคุมงานกับ AI ไม่อยู่ ผมจึงจัดวิธีทำงานใหม่

เมื่อผลงานจริงยังแทนที่ระบบเดิมไม่ได้ ผมจึงจัดระเบียบการทำงานใหม่จากเป้าหมายใหญ่สู่งานย่อย โดยให้ Plan กับ Result คุมโจทย์และหลักฐานการตรวจ

สิ่งที่ได้เรียนรู้ — เป้าหมาย ผลงาน และหลักฐานควรเชื่อมกัน

ก้าวที่ 6 · ตอนที่ 18 — 21

ทดลองวิธีทำงานกับโจทย์ใหม่ แล้วปล่อยให้สองเส้นเดินคนละจังหวะ

ผมลองใช้ทางเดินของงานชุดใหม่กับ Buddy ก่อนพาไปเริ่มเกมของลูก จากบทสนทนาในบ้านสู่ห้องแรกที่เล่นได้ และเรียนรู้ว่าการทำสอง Project พร้อมกันยังต้องมีคนคุมขอบเขต ตรวจผล และเลือกเวลาพัก

ตอนที่ 18พ่อกับ Buddy ทดลองทางเดินของงานจากจุดเริ่ม ผ่านจุดตรวจ ไปสู่ผลที่มีหลักฐาน

ผมลองใช้วิธีทำงานชุดใหม่กับ Buddy

เมื่อเขียน Prompt เดียวคุมทุกอย่างไม่ได้ ผมจึงพา AI เดินทีละช่วง ตั้งเป้าหมายให้ชัด และตรวจผลจริงจากโค้ดและหลักฐานก่อนเดินต่อ

สิ่งที่ได้เรียนรู้ — การใช้วิธีใหม่ครั้งแรกเป็นจุดเริ่มของการพิสูจน์ ไม่ใช่คำตอบว่าทุกสนามจะเหมือนกัน
ตอนที่ 19พ่อ Buddy และลูกช่วยกันคิดเกม ก่อนเริ่มทดลองควบคุมด้วยการเคลื่อนไหวบนแท็บเล็ต

ผมถามลูกว่าอยากเล่นเกมที่พ่อสร้างเองไหม

คำถามสั้น ๆ ในบ้านกลายเป็น Project ใหม่ ผมกับ AI จึงเริ่มจากเอกสารและ Motion Spike เล็ก ๆ ก่อนสร้างเกมเต็ม

สิ่งที่ได้เรียนรู้ — แยกสิ่งที่รู้ สิ่งที่ยังเลือกได้ และทางตรวจผลให้ชัดก่อนเริ่มโจทย์ใหม่
ตอนที่ 20พ่อกับ Buddy เชื่อมภาพยานและตัวละครเข้ากับห้องเกมแรกที่ลูกลองเล่นบนแท็บเล็ต

จากภาพเกมในหัว สู่ห้องแรกที่ลูกเล่นได้

เมื่อผมไม่มีทักษะภาพหรือเสียง ผมแบ่งงานให้ AI คนละแบบ แล้วค่อย ๆ เปลี่ยนยาน ดวงดาว และคำถามให้เป็นห้องคณิตศาสตร์แรกที่ลูกลองเล่นได้

สิ่งที่ได้เรียนรู้ — เริ่มจากห้องเล็ก ๆ ช่วยให้ภาพในหัวมีรูปร่างโดยไม่ต้องรู้ทุกทักษะตั้งแต่ต้น
ตอนที่ 21พ่อกับ Buddy ดูเส้นทางของ Buddy และตัวจุ้นที่เดินคู่กัน ก่อนหยุดพักคนละจุด

สองงานเดินไปพร้อมกัน แต่ไม่ได้ไปจบพร้อมกัน

ผมลองเปิด AI สอง session ให้ Buddy กับตัวจุ้นเดินคู่กัน ก่อนจำกัดเกมไว้ที่ Frontend นำขึ้น Production แล้วพักเพื่อรอ Feedback

สิ่งที่ได้เรียนรู้ — ช่วงรอ AI ใช้คิดอีกงานได้ แต่ขอบเขต จุดหยุด และเวลาพักยังเป็นการตัดสินใจของคน

ก้าวที่ 7 · ตอนที่ 22 — 25

กลับมาหา Buddy แล้วเดินต่อจากภาพรวม สู่วันที่ยอมรับบน Production

หลังพักงานส่วนตัว ผมกลับมาทบทวนสถานะ Buddy เจอการทดสอบที่ AI พาออกนอกโจทย์ ก่อนค่อย ๆ ปิดงานแต่ละ Component และมองคำถามใหม่ที่ยังไม่มีคำตอบ

ตอนที่ 22พ่อกับ Buddy กลับมาทบทวนเอกสารและร่องรอยของงานที่ยังค้างอยู่

หลังพักงานส่วนตัว ผมกลับมาหา Buddy ที่ยังรออยู่

ผมกลับมาทบทวนว่างานทำอะไรไปแล้ว อะไรยังค้าง และควรรับช่วงต่อจากตรงไหน

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

ผมอยากทดสอบให้ง่ายลง แต่ AI กลับทำให้มันยากขึ้น

ผมขอจำลอง Capture ด้วยข้อความ แต่ AI เพิ่มโค้ดทดสอบและ MockAI จนงานออกนอก Scope

สิ่งที่ได้เรียนรู้ — เมื่อ AI ทำเกินโจทย์ การถอยก็ต้องมีหลักพอไม่ให้งานที่ยังใช้พัง
ตอนที่ 24ข้อมูลจากสี่แกนถูกรวมเป็นภาพรวมใน Passbook ให้พ่อกับ Buddy ตรวจดูก่อนเลือกเจาะ

ผมเริ่มดูภาพรวม ก่อนเลือกเจาะ Test ทีละเรื่อง

Real-System-Test สร้าง DataDetail และ DailyInfo จาก Activity, Food, Expense และ Health ให้ผมดูใน Passbook

สิ่งที่ได้เรียนรู้ — ดูภาพรวมก่อน แล้วค่อยเลือก Scenario ที่ต้องตรวจเพิ่ม
ตอนที่ 25พ่อกับ Buddy ตรวจภาพรวมบนอุปกรณ์จริง ก่อนตัดสินใจยอมรับระบบบน Production

วันที่ผมยอมรับ Buddy บน Production

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

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

ก้าวที่ 8 · ตอนที่ 26 — 29

จากบ้านหลังเดิมสู่ sabayjai.net แล้วนำแกนเดินทางออกไปลองกับทีมจริง

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

ตอนที่ 26พ่อกับ Buddy วางรองเท้าวิ่งคู่ใหม่บนโต๊ะ ขณะหน้าจอจัดการแท็กและตรวจการส่งมอบระบบ

หลัง Buddy ขึ้น Production ผมเพิ่มไอเดียและตามแก้ Bug จนเกิด v1.1

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

สิ่งที่ได้เรียนรู้ — การให้ระบบเรียนรู้จากมนุษย์ต้องมีขอบเขตกำกับเสมอ
ตอนที่ 27พ่อกับ Buddy วางแบบบ้านที่มีชื่อ sabayjai.net คู่กับผังงานที่รวม Buddy เกม และพื้นที่เก็บผลงานไว้ในบ้านเดียวกัน

v1.2 และการเกิดของ sabayjai.net

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

สิ่งที่ได้เรียนรู้ — การเติบโตต้องมาพร้อมสถาปัตยกรรมที่ยืดหยุ่นและกล้าจัดระเบียบ
ตอนที่ 28พ่อกับ Buddy เรียงการ์ดสัญญาการทำงานร่วมกันของทีม คู่กับแผนผังสถาปัตยกรรมบนหน้าจอ

วันที่ผมพาแนวคิดไปลองในสนามจริงกับทีม

ผมไม่ได้ยัดศัพท์ยากให้ใคร แต่แปลงแกนเดินทางเป็นบทสนทนาการทำงานเรียบง่าย แล้วดูว่ามันช่วยงานที่มีคนทำร่วมกันได้จริงไหม

สิ่งที่ได้เรียนรู้ — แกนที่ดีต้องเปลี่ยนรูปทรงภายนอก แต่คงเนื้อในเรื่องวินัยไว้
ตอนที่ 29พ่อกับ Buddy จัดเรียงข้อมูลเป็นกองใหม่ในถาด ระหว่างที่หน้าจอยังแสดงผลการจัดหมวดหมู่อยู่

ห้าวันกับการปรับแกนธุรกรรม และงานถึงที่ AI ช่วยรับช่วง

สองวันวางทางเดินก่อนรื้อ สามวันลงมือถอดโค้ดข้าม 71 ไฟล์ ผมคุมแผนและความปลอดภัย ส่วน AI รับช่วงงานแก้ซ้ำ

สิ่งที่ได้เรียนรู้ — ความเร็วของ AI จะไร้ประโยชน์ทันทีถ้าวิ่งไปผิดทาง