铜剑技校

仝键的个人技术博客

0%

道场胜于道法

能力建设的鬼打墙

我们为了变强,会订阅很多公众号,牛人博客,收藏很多视频,看很多文章。做了很多松鼠的行为,然而最终大多数人并没有变强。
我去看了很多学校,大多数学生面临的成长问题与十几年前并无太大区别。
我去看了很多家公司,大多数公司面临的能力问题跟十几年前并无太大区别。
十几年前,我们买一台电脑都贵得要死,现在跟一台手机差不多钱了。
十几年前,我们想学编程连个像样的教程都没有,现在互联网上的教程不要太多。
为什么会这样呢?
因为信息的多少,并不是学成才的关键。很多人可能知道我又要说刻意练习了,可是按照刻意练习理论,要练一万小时才能成才。但我们从业者练了不止一万小时了吧,每天996,3年就该1万小时了吧,为啥能力还是个问题呢?
因为工作的关系,我不得不思考这个问题,思考的久了,我自己有个理论。我在想,刻意练习把问题过分简化了,学习过程可不是那么简单的,大面上讲,我觉得刻意练习理论是工作的,只是过于粗糙,需要精细化的考虑一下,仔细思考一下刻意练习的背后到底是一个怎样的过程。

刻意练习的元模型

经过对自己的学习过程进行反观内视,加上跟很多人的交流,我大概抽取了一个闭环的元模型。
image.png

我发现首先要有问题供学习者思考,我称之为我思,有些问题比较简单,直接可以思考,有些问题比较难,需要先学习一些基础知识才能理解问题本身,后者就是读书的原因之一。

理解问题之后,就要开始解决问题,毕竟企业里的能力建设都是要解决问题的,必须学以致用。为了能学以致用,那自然就需要练习,但练习不一定是非要专门的练习题,只要将所学知识应用,也算是练习了。练习需要有反馈,知道你做的对还是不对。

经过练习之后,需要对整个过程进行反思、总结,产出经验和洞见。有数据供反思时分析和有反思的习惯是很重要的,我发现傻做的人很多,反思的人很少,真的是大家都在泥坑里,只有少数人会仰望星空。

成才三要素之一——环走通

按这个环来分析,如果想要成才,首先环要走通。
我思的瓶颈在于认知障,所以还是比较简单的,扩大知识面就好了。
我做的瓶颈才是最麻烦的,要走通这个环,最难以达成的瓶颈的其实是我做的环节,在互联网时代,你想获得知识已经很容易了,只要你想,你总能找到可以用的知识。
但是学到了知识能不能实践其实是关键,你学了大量高并发的知识,但是你工作环境下没有高并发的环境供你练习,你也学不会。你想学软件开发的方法学,却在一个简单机械重复的环境下天天垒那种过些日子就没用处的代码,并不会有所提升。
这就是我为什么开始说,道场胜于道法,你没有一个练习场,你学到的知识都卡在第一环节了。
然而一个合格的道场本身并不是那么容易具备的,这个我们在后面慢慢讲。

那么在我反思这个环节上,首先你要有反思的习惯,这个是比较反人性的,所以具备的人本就不多。即便你具备了,一个人的认知又容易受自己的偏见蒙蔽,容易看不清事物的全貌。需要老师的启发式引导,同学的研讨印证。一个具备好的老师同学的环境其实是道场的一部分,你所处的环境里根本没人跟你聊这些,你很容易陷到自己的认知瓶颈里很久都不得突破。

其次要有数据供自己反思,不过只要有了这个习惯和意识,数据什么的好搞,比如编程的话,可以参考我的《编程的精进之法》。

成才三要素之二——提高频率

一旦环走通之后,频率就是我们接下来要面临的问题。
一些简单的内容可以通过设计针对性的练习来提升
能进行针对性练习的环境就是我们最好的道场,而现实并不是这样的。
我当年练习投篮的时候,就发现,如果是自己一个人练的话,不但要投还要捡球。这单位时间内能练习投篮的频率就降低了。
等你把投篮练的差不多了,发现在比赛中能投进和练习时能投进又不一样。
针对这两种,你要建立两个环境,互相不能偏废,我称之为专项训练的环境和综合训练的环境。
在我们教学生编程的时候,就采用了这两种不同的环境,我们会设置一些非常小的练习,针对性的练习结构化编程、集合的处理、数据结构的设计和数据的转换。
然后会设计大作业进行这些技能的组合使用,这个时候需求到具体技术的映射是模糊的。
最后会设计项目,团队协作做项目,这个时候需求本身也是模糊的,团队成员之间的配合也需要锻炼。
前两种都属于专项训练,分别练习的是单个专项技术的使用和多个专项技术的组合,最后一个属于综合训练,锻炼在模糊不确定性下使用确定性的技术来完成需求的能力。

这些良好设计的环境都是为我们和我们的客户的校招新员工设计的,普通员工的日常工作中难以具备这样的环境。
那么只需要考虑一件事就好了,我们的日常工作中有多少机会来进行练习。如何改造我们的工作环境来,使之成为个体提升的环境是关键。传说中,少林寺的和尚吃饭睡觉都在练功其实就是在讲这个简单的道理:提高频率必须从环境改造下手。

成才三要素之三——降低废品率

解决了闭环、频率问题之后,还有一个不得不面对的因素:废品率。
在练习过程当中,并不是所有的练习都是有价值的,大量的练习都是无效的,甚至有些是错误的,在反思阶段会产生反模式。
随着闭环次数的增多,熟练度就会提升,不但正确的做法的熟练度会上升,错误做法的熟练度也会上升,如果反思阶段思考的不足,还会得到一些既不是正确做法也不是错误做法的纯粹的无效做法的熟练度。
这些熟练度都是问题,都是成长过程中的废品,而如何降低废品率,是高段位竞争者之间的胜负手。
这个的获得可以靠反思的时候总结,也可以靠阅读实践者的文章书籍。
比如如果纯自己摸索可能最后总会获得大泥球的架构,但是如果阅读了DDD之类的文章书籍就能知道可以靠上下文和聚合的方式进行解耦。
但是这种实践者写的书籍不像具体的知识那样好懂,通常都是非常抽象的。没有懂行的人指导或研讨,跟看天书也差不多。有时跨过了理解这个坎,又会发现现实环境不允许你进行试验。不管工作流程还是协作方式,从根本上限制了问题的根本解决。(不然问题早就解决了)

道场建设的窘境

在分析了刻意练习的原模型之后,我们会发现,在今天这个时代,能力建设最大的瓶颈是道场,如何将道场建设起来,比学习知识重要的多,好的练习、好的环境、好的同学比其他的都要重要。

而现实中,最大的道场就是实际工作环境。所以不管能力建设在开始看起来多么人畜无害,由于涉及到工作环境的改造,最终都会影响到组织的改造和调整。想想也是合理的,按照康威定律,什么样的组织架构需要什么样的软件架构匹配,什么样的软件架构需要什么样的能力匹配,如果旧的环境能够提供足够的练习场,那么能力建设根本就不是个问题,既然能力建设是个问题了,那么在能力建设的需求下,现有组织架构必然是要进行改进的。