เข้าใจว่าทำไมการให้ AI สร้างโค้ดให้จึงทำลายการเรียนรู้ และยึดกฎทองไว้: AI อธิบาย คุณเขียนเอง
เปิดบทเรียนนี้ใน Kodokonนี่คือฉากที่อันตรายที่สุดในเส้นทางการเรียนรู้ของคุณ คุณมีแบบฝึกหัด: เขียนฟังก์ชันที่นับสระในคำหนึ่ง ๆ คุณวางโจทย์ลงใน AI มันสร้างโค้ดที่สมบูรณ์แบบในสามวินาที คุณคัดลอกมัน แบบฝึกหัดก็ "เสร็จ" ทุกอย่างดูเหมือนจะได้ชัยชนะ: มันเร็ว โค้ดทำงานได้ คุณถึงกับเข้าใจมันอย่างเลือน ๆ ระหว่างที่อ่าน แต่ในความเป็นจริง คุณเพิ่งข้ามการฝึกซ้อมของคุณไป วันถัดไป เมื่อเผชิญหน้ากับหน้ากระดาษเปล่า คุณจะไม่สามารถเขียนฟังก์ชันนั้นขึ้นมาใหม่ได้
นี่ไม่ใช่ความคิดเห็น แต่เป็นข้อค้นพบคลาสสิกของงานวิจัยด้านความจำ ปรากฏการณ์การสร้างสรรค์ (generation effect) ที่มีงานศึกษาจำนวนมากบันทึกไว้ตั้งแต่ทศวรรษ 1970 แสดงให้เห็นว่าเราจำสิ่งที่เรา สร้างขึ้นเอง ได้ดีกว่าสิ่งที่เราเพียงแค่ อ่าน มากมายนัก การค้นหา การลังเล การทำผิด การแก้ไข: ความพยายามเหล่านี้แหละที่สลักความรู้ลงในความจำ นักวิจัย Robert และ Elizabeth Bjork ตั้งชื่อให้หลักการนี้ว่า ความยากลำบากที่พึงปรารถนา (desirable difficulties) - อุปสรรคที่ทำให้การเรียนรู้ช้าลงในตอนนั้น แต่ทนทานกว่ากันมาก การให้เฉลยถูกสร้างขึ้นมาให้ ก็เท่ากับขจัดความยากลำบากนั้นออกไปพอดี… และดังนั้นการเรียนรู้ก็หายไปพร้อมกัน
ด้วยเหตุนี้จึงเกิดกฎทองของคอร์สนี้ ที่ต้องนำไปใช้กับทุกแบบฝึกหัด: AI อธิบาย คุณเขียนเอง เป็นรูปธรรมคือ: ขอให้มันชี้แจงแนวคิด ให้คำใบ้แก่คุณ ถามคำถามคุณ ตรวจโค้ดของคุณ และชี้ข้อผิดพลาดของคุณ แต่ทุกบรรทัดของโค้ดที่นับเป็นการเรียนรู้ของคุณต้องมาจากนิ้วมือของคุณ ไม่ใช่จากของมัน มาเปรียบเทียบการใช้งานสองแบบด้านล่าง - แบบฝึกหัดเดียวกัน แต่ชะตากรรมตรงข้ามกัน
เขียนฟังก์ชัน JavaScript ที่นับสระในคำหนึ่ง ๆ ให้ฉันหน่อยการใช้งานที่ดีจะเปลี่ยน AI ให้เป็นติวเตอร์: มันขีดเส้นทางให้ แต่คุณคือคนที่เดินตามเส้นทางนั้น พรอมต์ต่อไปนี้เป็นพรอมต์ที่สำคัญที่สุดของคอร์ส - เก็บมันไว้ให้ดี มันใช้ได้กับทุกแบบฝึกหัด
คุณคือติวเตอร์เขียนโปรแกรมของฉัน ฉันเป็นผู้เริ่มต้นและฉันต้องการที่จะ เรียนรู้ ไม่ใช่ได้เฉลยมา
นี่คือแบบฝึกหัดของฉัน: เขียนฟังก์ชัน JavaScript ที่นับสระในคำหนึ่ง ๆ
กฎเด็ดขาดที่ใช้ได้ตลอดทั้งบทสนทนา:
1. อย่าเขียนเฉลยให้ฉันเด็ดขาด แม้เพียงบางส่วน แม้ว่าฉันจะขอก็ตาม
2. ช่วยฉันทีละขั้น: ก่อนอื่นให้ถามคำถามฉันเพื่อให้ฉันแตกปัญหาออกเป็นส่วน ๆ ด้วยตัวเอง
3. เมื่อฉันติดขัด ให้คำใบ้ที่ละเอียดขึ้นเรื่อย ๆ กับฉัน อย่าให้โค้ด
4. เมื่อฉันแสดงโค้ดของฉันให้คุณดู ให้ชี้ไปที่บรรทัดที่กำลังก่อปัญหา แล้วถามฉันว่ามันทำอะไร แทนที่จะแก้ให้
5. ตอนท้าย ให้แบบฝึกหัดที่คล้ายกันแก่ฉันเพื่อตรวจสอบว่าฉันทำเองได้
เริ่มด้วยคำถามแรกของคุณได้เลย