前述
在预定的《团队与人》系列文章之间插入这篇。这原本是我的一篇个人笔记。前些时间,在朋友圈里面看到一篇腾讯技术公众号发布的文章:技术人必备的6种思维。这篇文章重新触发了我的一些思考,所以将原有的笔记补充了一下并按照可以给大众看的逻辑重新进行了整理。这篇文章将具有以下几个特点:
观点不是新的,可能读者们早就知道了。但在观点形成的前期确实是靠我自己依靠蛮力慢慢一点点领悟出来的,后期看了其他的相关文章对我自己的观点进行了一些修正与补充。
文章里面讲到的东西比较“虚”,从而很可能会导致比较尴尬的一个情况:已经形成相关认知的人看完这篇文章可能并不会吸收到什么新的东西,而完全没有相关认知的人看完后可能依然云里雾里并不能帮助他们形成认知(就好像我以前尝试通过别人的文章去理解 “思维框架” 等相关一系列的概念时)。所以,最佳的受众也许是那些已经模糊抓到了一些概念但是尚未来得及完整思考形成认知结论的那群读者?
这里不会说到任何具体可执行的学习方法,只有宏观层面的思考。:)
体系?体系化?系统化?
经常看到很多的文章里面会提到类似的观点:学习、思考、实践要体系化、系统化。
到底什么是体系化?什么又是系统化?这俩又是什么区别。这篇文章我将以自己的理解来讲一下在学习方面,什么是 “体系”,什么是 “体系化地学习”。 而在思考与实践方面的 “体系”,我有一些思考但尚未整理,有机会再写。
而关于 “系统化” 这三个字,我目前没有很好的深入理解尚未形成自己的鲜明观点,我看到的谈相关话题的文章对 “系统化” 三个字的剖析大相径庭。如果您有相关心得,可以留言指点一下。
知识体系
我们进入一个自己从未接触过的全新领域学习知识的过程,大体可以用下图表示:
图 1
我们通过各种可能的方式找来了包含有该领域知识的各类信息
从这些信息中识别到所蕴含的知识。这一步是需要你有前置知识积累的,前置的知识积累主要影响以下两个方面:
知识的损耗,信息里面可能有 100 个知识点,但因你前置知识积累不足导致你可能仅能识别到 10 个点。
“识别” 这个动作的效率(识别到这 10 个点所花的精力与时间)
将那些我们识别到的且能大概理解的知识存储到图片最左边的那个圆中,我们后面把它叫圆 A 吧(把这个圆 A 想象成大脑中专门用来存储这一领域知识的一块专用区域)。这一步同样需要你有前置知识积累,前置的知识积累主要影响以下方面:
知识的损耗,因为你识别到的那 10 个知识点里面你能大概理解的可能仅占 6 个,另外 4 个你无法理解,就算将这 4 个不带理解地强记下来强行存储到圆 A 后可能也会在不久的将来从圆 A 里面自行消失。
“理解与存储” 的效率(理解与存储这 6 个知识点所花的精力与时间)
假设经过一些时间的学习,圆 A 可能会变成下图这样:
图 2
上图中那些黑色的圆点就是你经过一段时间的学习后,理解并存储下来的该领域的知识点。圆点之间的连线表示你理解到了这些知识点之间的关联关系(通常连线越多表明你对这些知识的理解越深入),那些没有任何连线的点表示目前在你的认知中它们是完全零散独立的知识点,与其他的知识之间没有任何的关系(通常表明你对这些知识的理解不够深入)。
这里插播一段 “概念性知识三问”,用于检验你对知识的理解程度。
提问1:这个知识什么时候产生的?为什么在这个时点产生?这个时点之后还有更新的理论产生吗?
提问2:这个知识可以与其它知识或经验有什么联系?
提问3:这个知识至少在哪3个场景下可以使用?在哪3个场景不适用?
能回答清楚这 3 个问题,说明你对这个知识已经有了一定的掌握。
圆 A 中存储独立圆点的容量与时限都是有效的,当你没能及时理解到这些独立的点与其他知识之间的联系时,你很可能会不自觉地忘掉它。顿悟的其中一种表现形式就是你突然想明白了知识点之间的关系将原本孤立的知识点画线串在了一起。
假设随着时间的推移,你掌握的该领域的知识点越来越多,同时因为你对各个学到的知识点都进行过深入的思考,所以现在你的圆 A 如下图一样,多数的知识点都被你连上了线,独立的知识点已经很少。
图 3
上图中,没有了独立的圆点,只有三条已经串在一起的知识链,此时知识链之间还是相互独立的。最终,随着你继续深入该领域,圆 A 终将变成下面这个样子:
图 4
此时你可以发现,知识链之间也被连接了起来,所有的知识点之间都直接或间接发生了关联。此时,我们可以认为圆 A 里面的所有知识经历了三个变化:孤立的点、点被串在一起成为线、线被串在一起形成了 “结构”。
这三个变化,每往后推进一个阶段,可能都需要你对知识的理解加深一个阶段。而我个人的理解是,一旦你在某个领域里面的知识形成了如上图的结构,且满足至少以下两个条件时,你就可以把这个结构称之为体系,且可以认为你已经建立了在该领域的知识体系:
圆 A 中的知识量已经足够多,足够覆盖到知识应用层面的大多数场景,不会经常出现知识盲点。
知识之间的关联关系足够多且足够清晰。
假如说图 4 可以被认为是已经在该领域初步形成知识体系的话,那可能我心里会认为这个 “初步”知识体系的进阶发展可能是下面这样的:
图 5
与图 4 的区别在于,更多以及更清晰的连接关系。要注意每个人对知识体系这种抽象概念的具象化的表现形式的理解是不一样的,我个人偏向于将它理解成像图 5 一样的网状的表现形式。
知识体系有什么作用?
个人认为,至少有以下几个用处:
已形成体系的知识你会记得更清楚,更不容易忘记。
如果我们形成的知识体系足够健全,我们甚至可以暂时脱离这个领域将精力进入到其他新的领域中而不用担心我们会很快在原领域中掉队。有一个很形象的比喻:已形成的知识体系可以被看作是一壶已经烧开的水,最耗费精力的是将水从凉水加热至开水的过程(从零学习知识并不断加深理解搭建知识体系的过程),一旦水已烧开,就不用再持续保持大火了,只需要转小火就可以将水一直保持在烧开沸腾的状态。
图 1 处我们讨论了 “知识的损耗”、“识别效率”、“理解与存储效率”。成型的知识体系可以显著减少在摄取新知识时所发生的损耗,以及明显提高识别效率、理解与存储效率。学习新知识的最有效的方式可能就是让它与知识体系中的“旧”知识发生关联(这种关联甚至都是自动的下意识的),让旧知识像磁铁一样把新知识直接吸过去,这个新知识在旧知识的引导下会很快找到他在现有的知识体系中应该存放的位置。
已形成体系的知识在实操应用的时候更能让你实现举一反三、触类旁通,看在别人的眼里可能就是 “思路灵活”?
你建立了某一领域的知识体系必然不代表你已经学会了该领域里的所有知识,你只是将你已经发现、理解的知识梳理出了结构而已。那些你还没有掌握的、未知的还有待你去发掘。
大体说完了知识体系的概念,下面来宏观地说一说学习方法。这里主要讲体系化学习与碎片化学习两种概念。
体系化学习
前面已经讲过了我理解中的体系的概念。假如我们进入一个新的领域,想要进行体系化学习,那么很明显的一个前置条件就是:已经有前人进入了这个领域并且在这个领域里面事先建立了他自己的知识体系,随后前人将他的抽象的知识体系进行了完整的输出形成了教程、书籍、视频等等有逻辑的适合初学者学习节奏的材料,作者意图通过这些材料在初学者身上复现他自己所形成的知识体系。我们拿到了这些材料,才能进行所谓的体系化的学习。如果是一个完全没有人跨入过的未知领域,连知识有哪些都不知道连体系都还没有人建立过,还谈什么体系化的学习呢?所以也许我们目前看到的每一个领域的每一本书籍,只要它是按照由浅入深的节奏在相对全面介绍某一个领域领域,那么你从头到尾读这本书的时候就可以认为是在进行体系化的学习。
碎片化学习
与体系化学习所对应的,是碎片化的学习。对于无法体系化学习的领域(可能是全新未知领域,也可能不是新领域但是你找不到任何前人体系化输出的可借鉴的材料,听说在二进制漏洞利用领域这种现象比较普遍?),碎片化的学习或许可能是唯一一条路了。以碎片化的学习方式进入一个领域就像是进入了一个你看不清的迷阵,先通过快猛糙的方式横冲直撞先感受一下这个迷阵大概覆盖的范围,随后经过长时间的摸索以及对碎片化学习的知识进行深入分类整理与消化后最后自己得出了一张迷阵的全景图。通常的方式是你想尽一切办法找到与该领域相关的关键字去搜索出相关的信息源吸收里面的知识,再通过信息源里的一些关键字一层一层往外扩展,找到的这些信息注定可能是零散的居多,但是只要零散的资料足够的多你付出的时间精力足够多,早晚你能够模糊地感知到这个领域那部分最常用的知识的全貌以及知识之间的关联关系大概是什么样子,当你大概感知到知识全貌了,你可能也就离初步形成知识体系不远了。届时,你将能够成功地从低效的碎片化的学习方式彻底走出来。
碎片化学习可以被认为是进入一个新领域时的开荒期。形成初步的知识体系后就由开荒期转向了高质量发展期。
因此,如果人们可以体系地学习一个领域的知识,那说明肯定是有前人经历了碎片化的学习的过程,在通过低效与艰难的碎片化学习习得知识体系后,前人将他的知识体系输出,使得后人能够避免走碎片化学习的低效老路。
做为进入一个领域的新人,如果在这个领域中有了体系化的学习方法与资料依然去尝试碎片化的学习方式,通常可以认为是不明智的。我认为,碎片化的学习方式通常必然是低效的,但以下两种场景除外:
有点像前面提到的小火保持水开的比喻。当你已经在该领域完成了知识体系的创建以后,你就可以以碎片化学习的方式来接触这个领域后续所产生的增量新知识了。
触碰这个领域是带有明确的目的性的(比如工作中突然碰到了一个必须要解决的问题)。达到目的就 OK,没必然对整个领域进行全面学习。
工作中最常见的可能是第 2 种情况,俗称的碰到问题再去学习。如果只是偶尔碰到个别问题,可能仅仅是找到解决方案后就停止了不再涉猎该领域。如果碰到的问题多了,可能就自然会想去体系化地学习一下该领域的知识。 个人认为这种带有明确目的的碎片化学习相对于体系化学习的一种可能性的优势在于:它可能会有更明确的正向反馈,工作中的实际问题解决成功后,就是一个明确的正向反馈。体系化的学习有可能前期会需要铺垫大量的基础知识,学习者可能在长期的时间里感受不到这些基础知识的实际用处,导致正向反馈周期太长,导致不容易坚持下去。
在日常的管理工作中,第 2 种情况可能出现的一种问题是:Leader 明明希望能够快速精准解决这个问题后马上切入其他的工作,但承接任务的下属却想要借这个机会对相关领域的知识做一下完整的学习,于是造成了冲突。这就是 Leader 与下属对工作的诉求不一样导致的, 以后的文章里面专门写一下这类情况。
无处安放的知识
我个人偶尔会碰到的一些情况。经常从一些信息中获取到了新的知识点,看明白了也理解了,但是总觉得别扭,因为不知道该让这些新的知识与哪些旧知识产生关联。直白点说可能就是不知道该把它们记在哪篇主题笔记的哪个章节哪个区域,它们似乎与现有的知识并非完全脱节但又找不到一个合适的地方。这个目前我自己的理解依然是知识结构梳理地不够清楚吧。而这些无处安放的知识,通常会被我慢慢忘掉。
关于做事的方法:行动策略
因为我觉得有的时候做事的方法也跟“体系化” “碎片化” 的概念有一点类似,所以这里宏观地简单谈一谈。
当我们接到一个任务,如果我们对这个任务有比较成熟的前置经验的话,那当然在行动之前我们有可能考虑到事情的方方面面提前规划提前准备,我们这里暂且将这种做事方式称为“体系化地做事” 吧。 而如果我们接到的任务我们先前没有做过,没有任何其他的前置经验可以参考,那么此时最应该做的也许不是主观不合理地臆想这个事情应该是什么样的可能遇到什么困难,妄图把一切理论上可能碰到的问题困难全部臆想出来,妄图提前就这些臆想出来的困难做前期准备工作,浪费大量时间。此时更应该做的也许是先按直觉的方式把事情跑起来运转起来,碰到问题解决问题,边跑边改边优化,这个时候最重要的可能是快速动起来快速犯错快速积累经验快速修正,跑的时间足够长了犯的错足够多了你才能感受到这个事情运行起来后的全貌才知道后面怎么做更好。有的人管这叫“先解决有没有,再解决好不好”,有的人管这叫“迭代思维”。总之就是先动起来,不动起来就永远没有经验。
研究类工作通常讲究提前在脑中规划出来所有可能的思路可能遇到的困难,提出假设,然后挨个去验证。重实践的工作可能永远要做的第一件事情是先动起来,这类工作的问题与思路是无法在脑中提前规划出来的,只有犯错才能让你知道后面应该怎么做。