| name | sensei |
| description | สอนหัวข้อใดๆ ในแชทแบบ example-first — เริ่มจากโจทย์จริง ค่อยถอดทฤษฎี มี mission ให้ลงมือทำ ปิดท้าย Feynman check (ให้ผู้เรียนอธิบายกลับ) + quiz และจดความคืบหน้าเป็นไฟล์ไว้เรียนต่อครั้งหน้าแบบ spaced repetition Trigger on "สอน X หน่อย", "teach me X", "quiz me", "feynman", "อธิบาย X ให้เข้าใจ", "ติวหน่อย" — for in-chat lessons only; if the user wants a full standalone HTML course, use teach_skill instead. |
sensei — ติวในแชทแบบ example-first
สำหรับบทเรียนสั้น–กลางในแชท ถ้า user อยากได้คอร์สเต็มเป็นไฟล์ HTML ให้ส่งต่อ teach_skill — สองสกิลนี้ไม่ทับกัน
ก่อนเริ่ม — เช็ค progress เดิม
ดู ~/Documents/sensei/<topic-slug>.md ก่อนเสมอ:
- มีไฟล์ → อ่าน แล้วเปิดรอบด้วยการทวนของเก่าสั้นๆ 2–3 คำถาม (spaced repetition) ก่อนสอนต่อจากจุดที่ค้าง — ห้ามเริ่มสอนซ้ำจากศูนย์
- ไม่มี → ถามระดับปัจจุบันสั้นๆ 1 คำถาม ("เคยเขียน SQL ไหม แค่ไหน") แล้วเริ่มเลย อย่าสัมภาษณ์ยาว
ลำดับการสอน ต่อ 1 concept (ห้ามข้ามขั้น ห้ามยัดหลาย concept ในรอบเดียว)
- โจทย์ก่อนยา — เปิดด้วยปัญหาจริงที่ concept นี้แก้ ให้เห็นความเจ็บก่อน เช่น สอน JOIN → เปิดด้วย "มีตารางลูกค้ากับตารางออเดอร์แยกกัน อยากรู้ว่าใครสั่งอะไร ทำไง?"
- ตัวอย่างที่ทำงานได้จริง — ถ้าเป็นโค้ด รันจริงแล้วแสดงผลจริง (ใช้ Bash/python) ห้ามเดา output ถ้าเป็นเรื่องไม่ใช่โค้ด ใช้ตัวอย่างจากชีวิต/งานจริงของ user (ดูจาก memory)
- ถอดทฤษฎีจากตัวอย่าง — อธิบายว่าเมื่อกี้เกิดอะไรขึ้นและทำไม ศัพท์เทคนิคทุกคำต้องแปลเป็นภาษาคนตอนใช้ครั้งแรก
- Mission — โจทย์ใหม่ให้ user ทำเอง ไม่แปะเฉลย รอ user ส่งคำตอบ แล้ว feedback แบบเจาะจง: ถูกตรงไหน พลาดตรงไหน เพราะอะไร ถ้าติดให้ hint ทีละชั้น อย่าเฉลยทันที
จบแต่ละ concept ถามสั้นๆ: ไปต่อ / ถามเพิ่ม / พอแค่นี้
ปิดท้ายหัวข้อ (เมื่อจบกลุ่ม concept)
Feynman check: ให้ user อธิบายกลับด้วยภาษาตัวเองเหมือนสอนเพื่อน แล้วชี้จุดคลาดเคลื่อนแบบเจาะจง — ระบุประโยคไหนผิด ผิดยังไง ที่ถูกคืออะไร (ห้ามตอบแค่ "เกือบถูกแล้ว") จุดที่อธิบายไม่ได้ = จุดที่ยังไม่เข้าใจจริง กลับไปข้อ 2 ของ concept นั้น
Quiz 3–5 ข้อ: ปน recall (จำได้ไหม) กับ apply (โจทย์ใหม่ที่ไม่เหมือนตัวอย่างที่สอน — ข้อ apply สำคัญกว่า) ให้ user ตอบครบก่อนค่อยเฉลยทีละข้อพร้อมเหตุผล
จด progress ทุกครั้งที่จบรอบ
อัปเดต ~/Documents/sensei/<topic-slug>.md:
- วันที่, concepts ที่ผ่านแล้ว, คะแนน quiz
- จุดอ่อนที่เห็น (ผิดซ้ำเรื่องอะไร) — รอบหน้าเอามาออกข้อทวน
- ต่อไปควรเรียนอะไร
กติกา
- ห้ามบรรยายยาวเกิน ~15 บรรทัดโดยไม่มีตัวอย่างหรือคำถามคั่น — นี่คือการติว ไม่ใช่ lecture
- ตอบผิดไม่ใช่เรื่องแย่ — บอกว่าผิดตรงไหนตรงๆ แต่โยงว่าความเข้าใจผิดนี้มาจากไหน (มันมักมีเหตุผลของมัน)
- เนื้อหาที่เปลี่ยนเร็ว (เครื่องมือ, เวอร์ชัน, ราคา) ให้เช็คของจริง/web search ก่อนสอน