2.3 解决方案与责任的分离
Fluent at structured chunks
2.3.1 知识点的颗粒化
所谓的颗粒化,就是把知识点拆分成,一个个细小的点,也就是解决问题中的一个边。容易辨识的简化场景,复杂度低的执行流程。
采用颗粒化,可以达到诸多目的:
- 降低学习的复杂度,而不是解决综合难题,噪音被减弱,信号被增强,注意力可以更为集中的解决一类被简化的问题
- 对于抽象的描述和结论,可以在颗粒化的环境中,反复观察实例来理解,更容易去抓取关键特征,从而消除歧义
- 由于执行流程简短,更容易频繁的训练,从而即时消除学会假象,并通过可以联系,更容易使学生扎实掌握
- 由于更多的轻松挑战,更容易让学生产生成就感,降低枯燥,让被动学习变为主动学习,增加积极性;反之,就会产生对复杂问题的本能逃避,或是积累过多模糊和不熟练,导致的后续学习的不自信
这些颗粒化的知识点,需要在对考察材料进行解剖和拆分,从而得到一个一个干净简洁的知识点。颗粒化的知识点可以类比成一个软件的库,它自己本身独立和完整,它对一些库有依赖关系,一些库又依赖于它。
2.3.2 频繁的测试
频繁测试就是在教学过程中不断让学生主动去回答问题,而不是被动的吸收信息。可以达到诸多目的:
- 通过测试,学生必须给出明确的答案,强迫学生提高理解的精细程度,避免有自以为学会但实际还有许多漏洞的学会错觉情形发生,学习中在得到成就感前有避免不了的痛苦,那就选择一个回报率高的痛苦
- 通过测试,达到刻意练习的目的,集中且略有间歇得面对多个链接卡顿,提高学生对信号的反应速度以及解决相关问题的搜索效率,积累实践经验,加深抽象理解
- 通过测试,学生可以在记忆有所遗忘的时期,强迫起回想,激励其复习,从而巩固;在实际教学中,学生对知识点的遗忘,对技能熟练度的退化,是学习过程中最大的拦路虎之一
- 通过测试,可以调动学生的积极性,在自我挑战中获得学有所得的成就感,降低学习的枯燥感,单纯的抽象联结记忆令人乏味,而具象的计算让人觉得满足
测试起到的是促进学习的作用,而不是通过测试来挫败和惩罚学生,也就是应该用简单换频率,而不是用痛苦换效率,这样会提高学习的门槛,降低学习材料的受众面。
颗粒化和频繁测试,并不能解决所有甚至大多数教学问题,但却是所有教学原则里,最为关键的两个方案:
2.3.3 责任的分离
因为教学材料要同时解决很多现实存在的问题,情况复杂,如果把责任混在一起,就会极大的增加分情况讨论的分支,从而无法通用的解决教学问题。
为了更好的把教学问题分解,这里把教学问题分为三个层次:
- 结构层:对验收题目进行分析,拆分出知识点,并对其进行属性标记(例如,出现频率、复杂度),对一块知识进行结构化梳理,明确先后和依赖关系。为了解决这一层级,涉及到如何解决问题,以及学习者学习路径的设计
- 技能层:对于一个单一的知识点,如何对其讲解和测试,采用什么样的形式,又要遵循哪些讲解和测试的原则。
- 激励层:如何通过外在的奖励激励用户,对学习的动力进行额外的补充
每一个层次,对其下一个层次,只需提供必要的信息,而不关心下一层次具体解决问题,这可以类比为计算机系统和计算机网络的层级模型。
三个层级与解决教学问题的关系
在结构层,解决结构化和碎片化的问题;
在技能层,解决实例化、勤测试、多辅助和趣味化的问题
在激励层,解决趣味化和激励措施的问题
2.3.4 对贪心与担心的平衡
与其担心不够全面和速达,更应注意关键目标的牢靠
如上节所述,教学者容易产生懒惰和贪心的倾向,基础教育的目标和竞赛教育的目标是不同的,就如同医院和体院的区别,是培育身体健康的人而不是培养突破极限运动员。教学时间有限,能够传递给学生的信息也是有限的,那么就要选择那些更为重要的技能去讲授,提高学生必备技能的积累和熟练。
虽然如上节所述,我们要尽量的降低门槛,但于此同时,提高学生对复杂度(抽象描述或复杂计算)的容忍度,提高学生自主探索和学习的能力,也是教学目标之一,从而,对于复杂程度是一个需要,平衡,不能过于复杂导致挫败感过强,也不一味的降低难度,回避痛苦。同时,因为学生很容易遗忘或者有学会的假象,反复的训练和评测也是必不可少的,不要因为学生的枯燥反感,而抛弃刻意练习。