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

สรุปเน้น ๆ
- ให้เด็ก ทายผลก่อนรันโค้ด แล้วค่อยแก้และสร้างเอง (PRIMM) — งานทดลองกับนักเรียน 493 คนพบว่าทำคะแนนได้ดีกว่ากลุ่มควบคุม
- เริ่มด้วย บล็อกโค้ด ได้อย่างสบายใจ: ช่วงแรกเรียนรู้ได้มากกว่า และเมื่อเปลี่ยนไปเขียนแบบข้อความ ความต่างก็หายไป
- การ จับคู่เขียนโปรแกรม ช่วยเรื่องงานและการสอบผ่าน แต่ต้องกำหนดบทบาทและสลับกัน
- ใช้ ตัวอย่างที่มีป้ายบอกแต่ละขั้น แล้วค่อย ๆ ลดการช่วย ดีกว่าให้ลอกทั้งโปรแกรม
- หุ่นยนต์ช่วยการเรียนและทัศนคติต่อ STEM แต่ผลต่อ "การคิดเชิงคำนวณ" ยังไม่ตรงกันในงานวิจัย
ทำตามได้ แต่สร้างเองไม่ได้
ครูโค้ดดิ้งหลายคนเจอภาพเดียวกัน: เด็กลากบล็อกตามตัวอย่างได้ครบทุกขั้น หุ่นยนต์วิ่งได้ ทุกคนดีใจ แต่พอให้โจทย์ใหม่ที่ต่างไปนิดเดียว เด็กกลับนิ่งและถามว่า "ครูทำให้ดูอีกทีได้ไหม" ในวงการนักพัฒนาเรียกอาการนี้ว่า "ติดกับดักคลิปสอน" (tutorial hell) ซึ่งเป็นคำจากประสบการณ์ของคนในวงการ ไม่ใช่ผลวิจัย
ข่าวดีคือมีงานวิจัยที่ชี้ทางแก้ไว้แล้ว ทั้งเรื่องลำดับการสอน การจับคู่ และการใช้ตัวอย่าง และเด็กไทยทุกคนก็เรียน วิทยาการคำนวณ เป็นวิชาบังคับในโรงเรียนตั้งแต่ปีการศึกษา 2561 ซึ่งเน้นการคิดอย่างเป็นขั้นตอนมากกว่าการเขียนโค้ด [11] คลาสที่ศูนย์จึงต่อยอดสิ่งที่เด็กเจอที่โรงเรียนได้
PRIMM: ให้เด็กทายก่อน แล้วค่อยสร้าง
PRIMM ย่อมาจาก 5 ขั้น: ทาย (Predict) → รัน (Run) → สำรวจ (Investigate) → แก้ (Modify) → สร้าง (Make) เด็กอ่านโค้ดสั้น ๆ แล้วทายว่าจะเกิดอะไรขึ้นก่อนกดรัน จากนั้นสำรวจว่าทำไมผลจึงเป็นแบบนั้น ลองแก้ทีละส่วน และค่อยสร้างโปรแกรมของตัวเองเป็นขั้นสุดท้าย
493 คน
งานที่ทำซ้ำในประเทศอื่นให้ผลหลากหลาย บางชิ้นดีกว่าเล็กน้อย บางชิ้นไม่ต่าง [1] PRIMM จึงไม่ใช่สูตรสำเร็จ แต่เป็นโครงที่ช่วยให้ครูไม่กระโดดไปที่ "สร้างเอง" เร็วเกินไป และขั้น "ทาย" ก็คือการถามแล้วรอให้เด็กคิด ซึ่งเป็นหนึ่งในเทคนิคการตั้งคำถามที่ได้ผลที่สุด

บล็อกโค้ดไม่ใช่ทางตัน
ผู้ปกครองบางคนถามว่าเมื่อไหร่ลูกจะได้ "เขียนโค้ดจริง" งานของ Weintrop และ Wilensky เทียบนักเรียนที่เริ่มจากบล็อกกับเริ่มจากข้อความ พบว่ากลุ่มบล็อก เรียนรู้ได้มากกว่าและอยากเรียนคอมพิวเตอร์ต่อมากกว่า ในช่วงแรก [2] เมื่อทั้งสองกลุ่มเปลี่ยนไปเขียน Java ความต่างทั้งด้านความเข้าใจและทัศนคติก็ค่อย ๆ หายไปภายใน 10–15 สัปดาห์ [3]
งานนี้ทำกับนักเรียนมัธยมปลาย แต่ข้อสรุปใช้ตอบผู้ปกครองได้: บล็อกช่วยให้เริ่มต้นได้ดีและไม่ทำให้เสียเปรียบเมื่อเปลี่ยนไปเขียนแบบข้อความ
จับคู่เขียนโปรแกรม ต้องมีบทบาท
การวิเคราะห์รวม 18 งานวิจัย ผู้เรียนรวม 3,308 คน พบว่าการเขียนโปรแกรมเป็นคู่ให้ผลดีกว่าใน 3 จาก 4 ด้าน คืองานที่มอบหมาย การสอบ และอัตราการสอบผ่าน ยกเว้นด้านความรู้สึกและทัศนคติ [4] งานทั้งหมดทำในระดับมหาวิทยาลัย และงานทบทวนอีกชิ้นพบว่า ระดับทักษะของคู่ เป็นปัจจัยที่มีผลมากที่สุด [5]
- คนขับ (driver) ถือเมาส์หรือแท็บเล็ต ลงมือวางบล็อก
- คนนำทาง (navigator) อ่านโจทย์ ทายผล และชี้จุดที่ผิด
- สลับบทบาท ทุก 5–7 นาที ด้วยนาฬิกาจับเวลา ไม่ใช่รอให้เด็กตกลงกันเอง
- จับคู่ระดับใกล้กัน หรือให้คนที่เก่งกว่าเป็นคนนำทาง ไม่ใช่คนขับ
ตัวอย่างที่มีป้าย แล้วค่อย ๆ ลดการช่วย
งานศึกษากับผู้เรียน 265 คนพบว่า ตัวอย่างโค้ดที่มี ป้ายบอกหน้าที่ของแต่ละช่วง เช่น "ตั้งค่าตัวละคร" "วนซ้ำการเดิน" "ตรวจว่าชนขอบ" ช่วยให้คะแนนแบบทดสอบย่อยดีขึ้นอย่างสม่ำเสมอ และมีผู้เรียนถอนตัวหรือสอบตกน้อยลง แม้คะแนนสอบใหญ่จะไม่ต่างกันมาก [6]
ในคลาสเด็ก ลองทำเป็นสามขั้น: ครั้งแรกให้ดูตัวอย่างครบพร้อมป้าย ครั้งต่อไปให้ตัวอย่างที่ขาดบางส่วนให้เติม และครั้งที่สามเริ่มจากหน้าว่าง วิธีนี้ต่างจากการให้ลอกทั้งโปรแกรม เพราะเด็กต้องเข้าใจว่าแต่ละช่วงทำหน้าที่อะไร
กิจกรรมไม่ใช้คอมพิวเตอร์ และหุ่นยนต์
กิจกรรมแบบไม่ใช้คอมพิวเตอร์ (unplugged) เช่น เดินตามคำสั่งบนพื้นตาราง มีผลต่อการคิดเชิงคำนวณสูงในการวิเคราะห์รวม 13 งานวิจัย (g = 1.03) [7] แต่อีกงานที่รวม 29 บทความกลับพบว่าการฝึกเขียนโปรแกรมจริงได้ผลดีกว่า [8] จึงควรใช้ unplugged เป็น ตัวเปิด สำหรับเด็กเล็กหรือแนวคิดใหม่ ไม่ใช่ใช้แทนการเขียนโปรแกรม
ส่วนหุ่นยนต์ งานทบทวน 17 การศึกษาระดับ K-12 พบผลระดับกลางโดยรวม (SMD = 0.46) และผลชัดกว่าในเด็กประถม [9] แต่งานวิเคราะห์ปี 2024 พบว่าหุ่นยนต์ช่วยผลการเรียนและทัศนคติ ทว่า ไม่มีผลชัดเจนต่อการคิดเชิงคำนวณ [10] หุ่นยนต์จึงเป็นเครื่องมือที่ดี เมื่อครูออกแบบให้เด็กต้องคิด ไม่ใช่แค่ประกอบตามคู่มือ
เขียนบันทึกหลังคาบให้เป็นประโยชน์
แทนที่จะจดว่า "วันนี้ทำหุ่นยนต์เดินตามเส้น" ลองจดเป็นขั้นของ PRIMM ที่เด็กไปถึง เช่น "ทายผลได้ถูก แก้ค่าความเร็วเองได้ ยังสร้างเงื่อนไขเลี้ยวเองไม่ได้" ครูคนถัดไปจะรู้ว่าต้องเริ่มตรงไหน
ใน KlassUp ครูบันทึกผลรายคาบด้วยชิปแท็กที่ตั้งเองได้ตามวิชา เช่น "ทายผลได้" "แก้โค้ดเองได้" "ต้องฝึกเพิ่ม: เงื่อนไข" พร้อมแนบรูปโปรเจกต์ ผู้ปกครองเห็นในแอปผ่าน LINE และเห็นเส้นทางการเรียนรู้ว่าลูกผ่านระดับไหนมาแล้ว
แหล่งอ้างอิง
- Sentance, Waite & Kallia, "Teaching computer programming with PRIMM: a sociocultural perspective", Computer Science Education (2019)
- Weintrop & Wilensky, "Comparing Block-Based and Text-Based Programming in High School Computer Science Classrooms" (2017)
- Weintrop & Wilensky, Computers & Education 142 (2019) — ผลหลังเปลี่ยนไปเขียน Java
- Umapathy & Ritzhaupt, "A Meta-Analysis of Pair-Programming in Computer Programming Courses", ACM TOCE (2017)
- Salleh, Mendes & Grundy, "Empirical Studies of Pair Programming for CS/SE Teaching in Higher Education", IEEE TSE (2011)
- "Reducing withdrawal and failure rates in introductory programming with subgoal labeled worked examples", IJ STEM Education (2020)
- Unplugged activities และการคิดเชิงคำนวณ: systematic review และ meta-analysis, IJ STEM Education (2023)
- The effectiveness of unplugged activities and programming exercises, Education and Information Technologies (2022)
- Zhang, Luo, Zhu & Yin, "Educational Robots Improve K-12 Students' Computational Thinking and STEM Attitudes", JECR (2021)
- "The effects of educational robotics in STEM education: a multilevel meta-analysis", IJ STEM Education (2024)
- ไทยรัฐ — วิทยาการคำนวณ วิชาบังคับในหลักสูตรแกนกลาง

