左脑与右脑,新手与专家--读《程序员的思维修炼》
新手与专家在思考问题时的区别是什么?他们的思考过程是如何进行的?如果你能轻松回答这两个问题,就可以略过这篇文章了。
首先让我们先了解一下左右脑的结构,正如书中所说:“左脑(以下简称1号cpu)主要负责线性、逻辑思维和语言处理。它就像传统的冯诺依曼式的cpu,按步就班地处理指令。1号cpu相对缓慢,使用了大脑中相对较少的一部分资源。右脑(2号cpu)则不同,它更像大脑中的Google:把它想像成一个正则表达式搜索引擎,负责处理搜索和模式匹配。当你思考其它事情时,它可以去寻找搜索,然后异步地返回结果集--可能是数天之后。两个cpu共享一个内存,不能同时访问”,简单说就是,左脑负责语言、分析、符号、抽象、时序、推理、逻辑、线性思维。右脑负责非理性、非线性、综合、空间、直觉、异步、形象。我们在思考问题时只能使用其中一个cpu。
有意思的是,这两个cpu都可以用来分析问题。对于新手来说,他们在解决问题时往往需要分析出问题的结构,待解决的问题,关键点,需要用的时间等等。对于专家来说,他们不需要分析问题,通过粗略估计就能够说出问题的关键点和所需时间,而他们的估计也往往是正确的。新手与专家的区别就在于思考问题时使用的大脑半球不同。
在研究这个问题之前,让我们先来认识一下德雷福斯模型。对于任何一个领域,从新手到专家都有5个阶段。阶段1:新手。新手没有经验,需要按照规则去干活。如看着菜谱炒菜。阶段2:高级新手。高级新手会根据掌握的知识去尝试任务,但不能解决问题。我们的业余爱好多停留在这两个水平。阶段3:胜任者。胜任者能建立问题的概念模型,独立解决问题,并思考如何解决新问题。这一水平的人通常是一个团队的领导者,被认为足智多谋。可以感觉到,胜任者对于基本知识已经足够熟悉,他已经不必再用左脑去思考这些知识了。更多的,他是在用右脑去思考宏观上面的大局方向。阶段4:精通者。精通水平的人员有一项重大突破:他们能够纠正以往不好的工作表现,自我改进也是从这个阶段开始的。精通水平的人知道什么地方会出错,他们有经验和判断力,知道下一步会发生什么。阶段5:专家占总人数的1%-5%。他们根据直觉工作,不需要理由。
从新手到专家,就是从规则到直觉,从细节到整体,从左脑到右脑的过程。如果你在打羽毛球时还在想反手后场的步法是什么,正手劈打小球的动作要领是什么,那么你还停留在左脑思考的水平上。高手打球是不需要思考的,下意识的动作就能够击败对手。
昨天我有幸看到了这篇文章,其思想和本书如出一辙,其中有一个小故事讲得真好,一定要看。文中提到skilled的反义词是什么?不是unskilled,而是problem solving。仔细一想说的太对了,在我们初学编程时,就是一个problem solving的过程,我们要解决语法等很多问题。当我们熟练之后,我们要解决的问题就变成了“完成这个工作需要什么算法”,等我们的水平再高一点后,我们会思考这个系统的结构要怎么设计?其实这就是一个从左脑思维到右脑思维的转变,当你已经不需要再去思考怎么解决这个问题的时候,你就是这个问题的专家了。
从左脑思维到右脑思维的过程实际上是一个重复性训练的过程。曾经有一个实验研究过人脑的被动记忆,我忘了叫做什么,大意如下:“经过统计,人脑在无意识的情况下所接受的东西,平均需要重复6次才能够记住”后来这个定理被广泛应用到了电视广告之中,恒源祥和脑白金之所以让人们记忆深刻也是因为这个原因。所以,要想成为专家,就必须大量重复地做你的工作。例如在学习opencv时,要想掌握一个新函数的用法,最快的捷径就是重复地使用它。
说一点题外的,书中说到的极限编程也有同样的思想。二个人一起编程,一个人写,一个人看。一个负责细节,一个负责整体,这样工作往往效率很高。因为如果一个人写程序的时候不能兼顾整体和细节,2个cpu共享一个内存,二者不能同时访问。我们在写完一个函数时,常常会停下来看看程序结构,这时人脑是要切换cpu的。切换会所造成思维不连续,而这就是二人编程的优势。
另外我也十分欣赏书中的说法:“人脑具有很强的可塑性,人脑越用越聪明。某些理论认为人出生时脑细胞是最多的,随着年龄增长,脑细胞会越来越少,这只是一些客观的实验室数据所得到的结论,不代表所有人的共性。”人脑的神经网络是一个反馈系统,你使用越多的地方,它的网络就越密集,这个部位就越发达,而这种发达又能促使你更简单有效地使用它。这个反馈循环有利有弊,对于好习惯,我们不断的重复它,能够加强这个循环,使好习惯越来越好。但是对于坏习惯也是如此,一个坏习惯往往比好习惯更有效地加强这个循环。如果你明白了人脑的原理,改掉坏习惯也就不难了,试着从这个坏循环里引出一条岔路,把它指向好习惯,然后一点一点修正它。如果大脑起动了坏循环,就在它运行到这条岔路时break掉,然后执行好的习惯。例如睡懒觉是个坏习惯,我们可以约朋友进行晨跑来改掉它。只要坚持每天把坏习惯从岔路引向好习惯,让大脑的神经联络逐渐习惯这条岔路,久而久之,坏习惯就可以改掉了。
对于不常使用的那部分大脑,神经联络会越来越少,人的思维定式会越来越严重,这才是脑细胞减少的原因。所以,我们要全面的使用大脑,做一些你不熟悉的事情,改变一些生活规律,让大脑越用越发达。如:自学一门新的学科,吃你不爱吃的菜,换一条路回家,改变你刷牙的顺序,用左手完成右手的工作,玩解谜游戏。不停的尝试新鲜事物,才能让大脑越来越年轻。