“What I cannot create, I do not understand”by Richard Feynman
我小时候的教育受囿于物质条件的影响,没有那么多应用场景能去体验,只能先强行记住抽象的理论框架和关键概念,然后通过有限的场景去加固记忆。做题是一种在应用场景匮乏的情况下人为构造出来的半理想半实际的应用场景。它也是一种应用场景,只是这种场景并不贴合实际,它是人为勾勒出来的场景碎片。所以我们只是通过做题更牢固地背诵了理论概念,并未锻炼到丝毫联系实际并应用的能力。
当年我学数据结构就是这感觉,要知道高中时候我只用电脑来玩游戏,程序在我脑中和电影里的黑客破坏网络,特工戴着墨镜焊接电路一样是远离生活的fantasy。大一刚上来就是c语言和数据结构,如此抽象的概念对我们来说冲击有多大。实不相瞒,我以及周围大部分同学的第一反应就是背诵,把数组 链表 树和图的特点,结构,标准操作分门别类做好笔记然后记住,你敢信吗?我们当时手抄了一段一段遍历二叉树这样的代码段。我们当时还用的全英文教材,后来有同学发现了谭浩强的中文教材,编写地完全符合做题家思维,于是被我们奉为圭臬。现在想想,我们的高中教育和大学教育确实太割裂了。
这一整套教育系统其实也有赖于中国数千年科举文化的路径依赖。我们习惯了先熟读诘屈聱牙的理论精髓,然后在数十年的人生轨迹里一点一点的填补应用案例。因为中国古来治学都是在学经世济民的形而上知识。这种知识几乎不可能在现实生活中找到应用场景,除非你身担正五品以上(也就是省部级)以上的官位。后来我们走的是苏系的教育系统,一切都从顶层设计开始,大概因为top down的范式符合意识形态。
我们一代一代就是在这种极度匮乏应用场景的情况下学习知识,以至于我们忘记了,这世界上还有形而下的实验科学。且不说计算机这样的实验科学,很多社会科学也是实践出真知,我们需要bottom up范式,我们需要求是。理论是囫囵吞枣,实践是庖丁解牛。