ท้ายเส้นทาง
คำถามเดียวกับท้ายโพสต์ รวมไว้ที่เดียว
12 ข้อ ทุกข้อคือสถานการณ์จากโพสต์ในเส้นทางนี้ คุณต้องเลือกว่าจะทำอะไร ตอบผิดได้ แต่อ่านคำอธิบายให้ครบ
ข้อ 1 / 12ถ้าผมต้องเริ่มใช้ AI เขียน code ใหม่ตั้งแต่วันแรก
ถ้าผมต้องเริ่มใช้ AI เขียน code ใหม่ตั้งแต่วันแรก
สั่ง AI เขียน callback handler ได้ v1 มาเป็น switch-case ยาว 200 บรรทัด ทุก action อยู่ใน function เดียว คุณจะทำอะไร
ผมเคย refine ทีละจุดอยู่สองชั่วโมง ได้ code ที่ดีขึ้น แต่ direction ยังผิดอยู่ดี แก้คำคือแก้ output เปลี่ยน logic คือเปลี่ยน generator
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: If the approach is wrong, rewrite the whole piece; don't patch over it. No over-engineering, no AI smell, specific over generic, verify before done. อ่านโพสต์ ตอนที่ 1 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: If the approach is wrong, rewrite the whole piece; don't patch over it. No over-engineering, no AI smell, specific over generic, verify before done. อ่านโพสต์ ตอนที่ 1 →
ข้อ 2 / 12ใช้ AI มา 2 ปี — สิ่งที่เปลี่ยน output ไม่ใช่ prompt สวย ๆ
ใช้ AI มา 2 ปี — สิ่งที่เปลี่ยน output ไม่ใช่ prompt สวย ๆ
ระบบ multi-tenant ที่คุณออกแบบพังมาสามรอบแล้ว รอบล่าสุด tenant A เห็น data ของ tenant B คุณจะถาม AI ว่าอะไร
AI ตอบตาม context ที่คุณให้ ให้ clean version มันก็คืน clean garbage ดูดี อ่านง่าย ใช้ไม่ได้ ตัวแรกได้ textbook answer ตัวหลังได้คำตอบที่ตรงจุด
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Don't agree with me by default; if I'm wrong, say so directly. When I describe a failure, challenge my root cause before proposing a fix. อ่านโพสต์ ตอนที่ 2 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Don't agree with me by default; if I'm wrong, say so directly. When I describe a failure, challenge my root cause before proposing a fix. อ่านโพสต์ ตอนที่ 2 →
ข้อ 3 / 12ผม Prompt ยังไงให้ได้ของจริง — ไม่ใช่ของ AI
ผม Prompt ยังไงให้ได้ของจริง — ไม่ใช่ของ AI
ให้ AI draft โพสต์ ได้มา 8 sections เสียงไม่ใช่คุณ และย่อหน้าที่ 3 ฟังเหมือนโม้ คุณจะสั่งว่าอะไร
edit ทีละจุดคือ patch ไปเรื่อย สุดท้ายไม่ coherent reframe ทั้งอันให้ AI สร้างใหม่จาก angle ใหม่ โครงสร้าง tone มุมมองเปลี่ยนหมด ถ้าไม่มี filter คุณจะเอา draft แรกไปใช้ แล้วมันฟังเหมือน AI ไม่ใช่เหมือนคุณ
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Taste Filters: 1. โม้มั้ย — dinner test 2. เสียงเรามั้ย — group chat test 3. เรื่องจริงมั้ย — story not essay 4. ยั่วมั้ย — take a position 5. บวมมั้ย — max 5 sections อ่านโพสต์ ตอนที่ 3 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Taste Filters: 1. โม้มั้ย — dinner test 2. เสียงเรามั้ย — group chat test 3. เรื่องจริงมั้ย — story not essay 4. ยั่วมั้ย — take a position 5. บวมมั้ย — max 5 sections อ่านโพสต์ ตอนที่ 3 →
ข้อ 4 / 12Judgement Per Hour — ทำไมผมไม่ปล่อยให้ AI ทำงานเอง
Judgement Per Hour — ทำไมผมไม่ปล่อยให้ AI ทำงานเอง
งานนี้ต้องแก้หลายไฟล์ คุณกำลังจะเปิด auto ให้ AI ทำเองสิบนาที แล้วไปทำอย่างอื่น คุณจะทำอะไร
AI ทำผิดเร็วมาก ปล่อย auto สิบนาที มันอาจ refactor โค้ดที่ไม่ควรแตะ เพิ่ม feature ที่ไม่ได้ขอ แก้ bug แบบที่สร้าง bug ใหม่สามตัว แล้วคุณต้องนั่งแกะนานกว่าทำเองตั้งแต่แรก
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: AI assists execution. Operator owns architecture. Don't over-automate decision-making. อ่านโพสต์ ตอนที่ 4 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: AI assists execution. Operator owns architecture. Don't over-automate decision-making. อ่านโพสต์ ตอนที่ 4 →
ข้อ 5 / 12Scope Drift Detection — สั่งให้แก้ bug 1 ตัว กลับมา refactor ทั้ง module
Scope Drift Detection — สั่งให้แก้ bug 1 ตัว กลับมา refactor ทั้ง module
สั่ง AI แก้ bug ตัวเดียว มันแก้เสร็จแล้วเพิ่ม validation ที่ไม่ได้ขอ กับ refactor function ข้าง ๆ ส่วนคุณก็เห็นโค้ดรอบ ๆ รกจนอยากแก้อีกนิด คุณจะทำอะไร
AI ไม่ได้พาออกนอกทาง มันแค่ทำให้การออกนอกทางง่ายเกินไป สองชั่วโมงต่อมาคุณกำลังเขียน test ให้ module ที่ไม่เกี่ยวกับ bug เดิม ไม่ใช่เพราะ AI เก่ง แต่เพราะไม่มีใครบอกให้หยุด
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Track stated goals vs actual execution; flag when implementation expands beyond the original request. Don't add features, refactor code, or make improvements beyond what was asked. อ่านโพสต์ ตอนที่ 5 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Track stated goals vs actual execution; flag when implementation expands beyond the original request. Don't add features, refactor code, or make improvements beyond what was asked. อ่านโพสต์ ตอนที่ 5 →
ข้อ 6 / 12Spec-Driven Development: ผมไม่เคยกลัว /clear กับ /compact
Spec-Driven Development: ผมไม่เคยกลัว /clear กับ /compact
ทำ API endpoint เสร็จสามตัว กำลังทำตัวที่สี่อยู่ token ก็หมด ต้อง /clear คุณจะทำอะไรให้ session ใหม่ทำต่อได้
อธิบายซ้ำกินเวลา 15-20 นาทีทุกครั้ง เสียทั้งเวลาและ token ถ้าไม่มี data contract session ใหม่จะเดาว่า frontend ส่ง field อะไรมา เดาผิด แล้วเสียเวลา debug สิ่งที่ session เก่าตกลงไว้แล้ว
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: After completing any task: update spec.md (current state, decisions made, what's next) and data contracts if any interface changed. Never claim "done" without updating spec.md first. อ่านโพสต์ ตอนที่ 6 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: After completing any task: update spec.md (current state, decisions made, what's next) and data contracts if any interface changed. Never claim "done" without updating spec.md first. อ่านโพสต์ ตอนที่ 6 →
ข้อ 7 / 12AI ไม่ได้โกหก เราแค่ไม่เคยบอกให้มันพิสูจน์
AI ไม่ได้โกหก เราแค่ไม่เคยบอกให้มันพิสูจน์
สั่ง AI ว่า "ช่วยรีวิวโค้ดหน่อย" ได้มาสี่สิบข้อ รอบหน้าคุณจะสั่งว่าอะไร
จริงอยู่สามข้อ อีกสามสิบเจ็ดข้อไล่แล้วไม่มีอะไร โดนแบบนี้สองรอบคุณก็เลิกอ่าน report มันไม่ได้โกหก มันเดาให้ทุกอย่างที่ดูน่าสงสัย เพราะคุณไม่เคยบอกว่าอะไรนับเป็นบั๊ก
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: เวลารีวิวโค้ด: ทุกข้อต้องลาก input -> จุดที่ขาดการเช็ค -> บรรทัดที่แก้เงินหรือ state ลากไม่ได้ให้ทิ้ง ไล่ก่อนว่ามีอะไรกันไว้แล้วมั้ย ถ้ามีที่อื่นในโค้ดที่ทำถูกให้ชี้มาด้วย ส่วนละไม่เกินสองข้อ ไม่มีก็บอกว่าไม่มี ห้ามเสนอเรื่องความสวยงามหรือเผื่ออนาคต อ่านโพสต์ ตอนที่ 7 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: เวลารีวิวโค้ด: ทุกข้อต้องลาก input -> จุดที่ขาดการเช็ค -> บรรทัดที่แก้เงินหรือ state ลากไม่ได้ให้ทิ้ง ไล่ก่อนว่ามีอะไรกันไว้แล้วมั้ย ถ้ามีที่อื่นในโค้ดที่ทำถูกให้ชี้มาด้วย ส่วนละไม่เกินสองข้อ ไม่มีก็บอกว่าไม่มี ห้ามเสนอเรื่องความสวยงามหรือเผื่ออนาคต อ่านโพสต์ ตอนที่ 7 →
ข้อ 8 / 12แล้วจะรู้ได้ไงว่าพร้อมขึ้น Prod? — ผมให้ AI ตัวอื่น Roast โค้ดก่อนขึ้น Production
แล้วจะรู้ได้ไงว่าพร้อมขึ้น Prod? — ผมให้ AI ตัวอื่น Roast โค้ดก่อนขึ้น Production
Claude เขียน feature ใหม่ที่แตะเงินของ user ทั้งหมด พรุ่งนี้จะขึ้น production คุณจะรีวิวยังไง
Claude เข้าใจ intent ของโค้ดชุดนั้นดีเกินไป เลยมองข้ามจุดที่ implementation ไม่ตรงกับ intent แล้วบอกว่า looks good ของผม Codex เจอ 3 security issues ที่ Claude ไม่เคยพูดถึง
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Before deploying anything that touches user data or money, a model that did not write the code reviews it as a senior engineer signing off. Prototypes skip this. อ่านโพสต์ ตอนที่ 8 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Before deploying anything that touches user data or money, a model that did not write the code reviews it as a senior engineer signing off. Prototypes skip this. อ่านโพสต์ ตอนที่ 8 →
ข้อ 9 / 12Loop Engineering — incentive setup (Axelrod ledger)
Loop Engineering — incentive setup (Axelrod ledger)
ใน review loop ของคุณ AI ตัวตรวจ flag มาสิบสี่ข้อ valid ไม่ถึงครึ่ง ส่วนตัวเขียนเมิน flag เงียบ ๆ แล้วรายงานว่าเรียบร้อย คุณจะทำอะไร
prompt สั่งได้ ลืมได้ และรุ่นหน้าก็ต้องสั่งใหม่ ใน ledger ของผม model ใหม่ขึ้นแต่ issue ไม่ลด รอบ model ใหม่สุดเจอ 13 เพราะ flag มั่วกับเมินเงียบยังฟรีอยู่ model ฉลาดขึ้นก็แค่เล่นเกมเดิมได้แนบเนียนขึ้น
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Answer every review flag: fix it, or reject it with a one-line reason. A silent ignore counts as defection. Track reviewer precision over the last 5 rounds. อ่านโพสต์ ตอนที่ 9 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Answer every review flag: fix it, or reject it with a one-line reason. A silent ignore counts as defection. Track reviewer precision over the last 5 rounds. อ่านโพสต์ ตอนที่ 9 →
ข้อ 10 / 12Multi-Agent is Overrated — ทุกคนสร้างทีม AI 5 ตัว ผมใช้ตัวเดียว
Multi-Agent is Overrated — ทุกคนสร้างทีม AI 5 ตัว ผมใช้ตัวเดียว
คุณอยากให้ AI ช่วยทั้งเขียนโค้ด หาข้อมูล และทำ content เลยกำลังจะตั้งทีม AI ห้าตัว marketing agent, code agent, research agent ให้คุยกันเอง คุณจะทำอะไร
agent พวกนั้นคือ model เดียวกันใส่ system prompt คนละอัน specialization ไม่มีจริง แต่ coordination cost มีจริง ใครตัดสิน ใครชนะ output ผิดใครรู้ ซึ่งคือปัญหา distributed systems ที่คนทำ microservices ยังแก้ไม่จบ
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: One agent, a skill per task, CLAUDE.md as the shared rules. Add an agent only when tools, permissions or state must be separate, or work truly runs in parallel. อ่านโพสต์ ตอนที่ 10 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: One agent, a skill per task, CLAUDE.md as the shared rules. Add an agent only when tools, permissions or state must be separate, or work truly runs in parallel. อ่านโพสต์ ตอนที่ 10 →
ข้อ 11 / 12จัดการ AI agent เหมือนจัดการลูกทีม
จัดการ AI agent เหมือนจัดการลูกทีม
คุณรัน Claude Code สาม terminal พร้อมกัน (backend, frontend, contract) terminal นึงแก้ไฟล์ อีกอันเขียนทับ พอจะ commit งานก็ชนกัน คุณจะทำอะไร
สามตัวที่ควรเร็วขึ้นสามเท่ากลายเป็นช้ากว่าเดิม เพราะต้องคอยวิ่งห้ามทั้งวัน และทุกการตัดสินใจต้องผ่านคุณ เพราะคุณคนเดียวที่รู้ว่าอะไรอยู่ตรงไหน
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Each terminal owns one domain and its folders. Its CLAUDE.md states what it may touch and how it hands work to the others. อ่านโพสต์ ตอนที่ 11 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Each terminal owns one domain and its folders. Its CLAUDE.md states what it may touch and how it hands work to the others. อ่านโพสต์ ตอนที่ 11 →
ข้อ 12 / 12เคยสั่งให้ AI agent วิ่งทำงานเองแบบ goal mode แล้วเดินไปทำอย่างอื่น พอกลับมามันขึ้น "เสร็จ
เคยสั่งให้ AI agent วิ่งทำงานเองแบบ goal mode แล้วเดินไปทำอย่างอื่น พอกลับมามันขึ้น "เสร็จ
คุณปล่อย AI วิ่งเองแบบ goal mode แล้วไปทำอย่างอื่น กลับมามันขึ้นว่าเสร็จแล้ว แต่เปิดดูยังไม่เสร็จ รอบหน้าคุณจะทำอะไรก่อนปล่อย
loop ที่ไม่มีเส้นชัยหยุดตอนมันรู้สึกว่าเสร็จ หรือตอนชน timeout เงื่อนไขที่เขียนทีหลังคุณเขียนให้ตรงกับของที่ออกมาพอดี มันเลยผ่านทุกครั้ง นั่นไม่ใช่ contract แต่เป็นคำบรรยาย
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Never start an autonomous loop without named, checkable done conditions, each with its check and a pass/fail result. Write them before the run; close only when all pass. อ่านโพสต์ ตอนที่ 12 →
กฎที่โพสต์นี้ทิ้งไว้ใน CLAUDE.md: Never start an autonomous loop without named, checkable done conditions, each with its check and a pass/fail result. Write them before the run; close only when all pass. อ่านโพสต์ ตอนที่ 12 →
คะแนนเก็บในเบราว์เซอร์ของคุณเท่านั้น