
当我们在学习一项新技能时,时常会有类似这样的困惑:学的时候都懂了,但做题(应用)的时候,仍然觉得不知所措。特别是一些抽象技能,基本包括所有学科:数理化、史地政、外语等,甚至成年后的许多专业知识。就比如学习一门新的编程语言,拿出一本《XX天学会YYY》,看一遍,嗯,都懂了。但实际一上手,还是感觉和没学过一样。
有人因此推出:学习无用,先开始做才对,带着问题去学。还有人觉得,是学习方法的问题,学习的时候没能及时归纳总结和实际练习。芭芭拉奥克利在《学习之道》这本书里说,这种现象源于人们自身的一种掌握能力的幻觉,即Illusions of competence。人们在学习的过程中,会高估自己的接受能力,以为学过等于掌握。这解释了,为什么学英语时,明明这个单词已经查过很多遍了,但每次见到仍觉得"眼熟";也解释了,为什么学理科时,明明公式和原理都明白了,但做题时仍然总是错误百出。
这种过于高估自己能力的事,让我联想到在做计划时人们也有这种倾向。在敏捷开发泛滥以前,人们在执行项目时依旧以"瀑布模型"为主(今天应该也不少),这种模型把项目分段、细分、预估,排序并找出关键路径,然后依顺序,一步一步执行。比如软件开发,第一步需求分析,接着各种设计,然后开发,最后测试、验收等。这种模型把项目执行过于理想化,每一个步骤都要完全结束才转向下一步。需求一旦变更,整个项目都要延期。
瀑布模型本质上是人们执行简单任务方法的抽象。比如简单的任务,冲咖啡,我们可以简单拆分任务为:做水、磨粉、冲调、打奶、混合、洗涤。然后根据任务之间的依赖关系,决定执行的顺序,并找出可并行执行的项目。比如做水和磨粉可以并行执行,磨粉、混合和洗涤都是关键路径(影响整个进程)。最后的执行顺序可能就会是:做水,磨粉,打奶,冲调,混合,洗涤。但当计划复杂任务时,其依赖关系并不一定一直是一个树状结构,而有可能成为一个有环的图,例如做咖啡例子中,可能会在冲调时发现咖啡粉不够,而重新执行磨粉操作。
针对这种学习中的“能力的幻觉”,芭芭拉奥克利给出的建议是,测试和练习。其实练习也可以看做是一种测试。通过对学过的知识进行回顾和测试,可以有效提高学习的效率。在测试中一旦发现疑点难点不会的点,可以再次返回学习过程中,巩固和加强学习。特别是抽象的知识,因为没有直接感官的刺激,更需要去通过不断的练习去巩固。这个原理可以作为学习理科时大量做题可以提高成绩的理论基础。
那么在做计划的时候能不能也借鉴这个理论呢?其实现在大热的敏捷(Agile)开发,精髓也在于不断练习。相比于提前事无巨细的做一个完美计划,敏捷着重于更快的原型和更高频的迭代。这两个要素,前者使需求可以被快速检验,迅速得到反馈;后者使反馈及时被应用,从而刺激更多的反馈。两者形成自激,得以使产品越来越好。这其实也是一个不断试错的过程,敏捷允许犯错,敏捷拥抱变化,敏捷帮助人们弥补这种"能力的幻觉"。
这种"能力的错觉"可能是人与生俱来的。女儿一岁多,学会蹒跚走路时,她经常会对自己掌握平衡的能力过渡自信,也因此没少摔跤。摔倒后她会哭半天,并会喃喃的说“摔倒,慢慢“——因为我们常和她说要慢慢走。可即便如此,下一次她还是会无意识的再次摔倒。从她自己的想法来看,她必然意识到了自己可能会摔跤;但在潜意识里,身体控制行走的神经系统里,显然没有这种得到这种反馈,它们仍然有“走路能力的幻觉”。但不过经过不断的尝试、摔倒、再爬起,身体通过不断练习,慢慢也就能真正掌握走路的技能了。
综上所述,错觉也好,幻觉也罢,都是虚无缥缈的东西。在学习新东西时,时刻谨记四个字,知行合一。知道什么是对的事,并把对的事做好。同时我们也要时刻保持清醒,警惕大脑制造的虚幻的奖励。
网友评论