ก่อนอื่นขออธิบายคำว่า อัลกอริทึ่ม (Algorithm) ก่อนนะคะ อัลกอริทึ่มคือ กระบวนการแก้ไขปัญหาที่อธิบายเป็นขั้นเป็นตอนอย่างชัดเจน ตั้งแต่การวิเคราะห์ปัญหาจนไปถึงการวางแผนแก้ไขปัญหา เป็นลำดับขั้นตอนเป็นข้อๆ
ปกติทุกครั้งในการเขียนโปรแกรม โปรแกรมเมอร์จะเป็นคนเขียนโครงสร้างทั้งหมดก่อนลงมือทำ เพื่อการทำงานการสื่อสารกับทีมให้เห็นภาพตรงกัน เพราะการเขียนโปรแกรมส่วนใหญ่อาจจะไม่ได้ทำคนเดียวจนจบขั้นตอน
ดังนั้นการเขียนอัลกอริทึ่มคือ Blueprint หรือพิมพ์เขียวในการเขียนโปรแกรม แล้วเจ้าอัลกอริทึ่มจะดีต่อเด็กอย่างไร
1. ช่วยให้เด็กมีเป้าหมาย
ทุกครั้งในการทำงานน้องจะมีเป้าหมายของตัวเองค่ะ แต่ก่อนที่จะมาถึงเป้าหมายนั้นน้องต้องเข้าใจเรืองของ Why หรือ ทำไมเสียก่อน
ว่าทำไมต้องทำ เพราะอะไรถึงต้องทำ สิ่งเหล่าเด็กๆจะได้ฝึกในการแสดงความคิดเห็นออกมาในมุมมองของตัวเอง และพวกเค้าเข้าใจในเป้าหมายมากขึ้น
2. การวางแผนแก้ไขปัญหาอย่างเป็นขั้นตอน
โดยปกติแล้วแต่กลไกของสมองในการับรู้ของน้องๆ จะเกิดจากประสบการณ์ของเค้าที่เค้าเจอมากขนาดไหน หากเค้าเห็นเยอะ เจอเยอะ เค้าจะเรียบเรียงและแยกออกมาได้
แต่สำหรับการเรียนเขียนโปรแกรมน้องต้องฝึกเขียนออกมาและแยกออกมาเป็นข้อย่อยๆ เพื่อดูว่าสิ่งไหนมันสามารถเป็นปัญหาได้บ้าง และทำการจดบันทึก เพื่อทำในครั้งถัดไป
3. เรียงลำดับความสำคัญ
ถ้าทุกสิ่งที่เกิดขึ้นคือปัญหา แล้วเราจะทำอะไรก่อน?
การเขียนอัลกอริทึ่มพอเรารู้ปัญหาแล้ว เราแยกปัญหาออกมาแล้วเราจะเข้าใจว่าอันไหนมันสำคัญที่สุด
หากยังไม่เข้าใจเราจำจำลองสถานการณ์หรือการชี้แนะโดยการเล่าเรื่องเพื่อให้พวกเค้าเข้าใจมากขึ้น
4. จินตนาการก่อนลงมือทำ
การเล่าเรื่องคือฝึกเรื่องของการจินตนาการ ก่อนที่เราจะแก้ไขปัญหาในข้อนั้นๆ เราต้องเข้าใจและการจิตนาการช่วยให้เราเรียงลำดับเหตุการณ์ได้ง่าย
5. เมื่อลงมือทำและบันทึก
คนส่วนใหญ่เมื่อลงมือทำแล้วจะไม่มาเชค Report ของตัวเอง
แต่การเรียนเขียนอัลกอริทึ่มน้องๆจะเห็นโครงสร้างตั้งแต่การวางเป้าหมายออกมาแล้วจนจบกระบวนการลงมือทำ เพียงแค่นี้เราจะมี Report การทำงานแต่ละช่วงแล้วค่ะ
ขอยกตัวอย่างสถานการณ์เครื่องคอมพิวเตอร์ดับ
ปัญหาคือ เปิดแล้วไม่ติด เวลาเปิดจะมีเสียงแปลกๆออกมาจากเครื่อง
หากเรียงอัลกอริทึ่มจะออกมาเป็นแบบนี้นะคะก่อนที่เด็กจะร้องเพื่อขอความช่วยเหลือ เค้าอาจจะมองว่า
- เอ้…. ทำไมถึงดับ
- เสียบปลั๊กรึยัง
- เปิดสวิตช์ไฟแล้วรึเปล่า
- เวลาเปิดมีเสียงอะไรไหม
อาจจะลองค้นหาคำใน Google ว่า ทำไมคอมไม่ติดในกรณีที่เด็กโต ก่อนที่จะขอความช่วยเหลือของพ่อแม่ และนี่คือเป้าหมายในการแก้ปัญหา
เด็กบางคนอาจจะลองดูเครื่องคอมของตัวเอง แล้วสร้างเชคลิสของตัวเองเป็นข้อๆ แล้วค่อยลงมือทำ และนี่ละคะคือการคิดแบบเป็นระบบ
✨บทความอื่นๆ ที่น่าสนใจ
- แจกคู่มือใบงาน Pokémon Unplugged เกมฟรี!! 23 โปรเจคพร้อมเฉลย (ลิขสิทธิ์แท้แน่นอน)
- รู้จัก Pokémon Quest ผจญภัยโลก Block แบบโปเกม่อน (สาย Roblox ชอบแน่อน!!)
- สอนสร้าง Christmas Tree ด้วย Python แบบง่ายๆ 2 โปรเจค มาดูกันเลย!!
- สอนสร้างงานศิลปะทำภาพแบบ ArtCode แบบง่ายๆ ไม่กี่คลิก (ที่นี่!!)
- รู้จัก Google Arts & Culture เรียนรู้ภาพและศิลปะผ่านเกมมากมาย (เหมาะสำหรับเด็ก)