#新年觉醒Final#带上地图,出发!
《程序员的思维修炼》一书,如同一本地图,帮我描述了通往专家之路的概况,而“认识你自己”的神谕,还是要靠自己出发,才能够完成。新年里,带上地图出发,踏上开智之旅。
新的一年里,如何更好的学习与思考?阅读《程序员的思维修炼》一书的这两周时间内,经常自问。
先从自身的工作经历谈起吧。
三年前阅读《Teach yourself programming in 10 years time》时候,被其中所提及的“一万小时天才理论”所吸引,在某个领域达到专家级的境界至少需要1万个小时的刻意联系,通过不停的提升,达到所在领域的顶尖水准。那个时候,吸引我的是软件设计。眼看着一个产品从无到有,在自己手下成长起来,并且为用户带来方便,在这个行业里面,我得到的参与感与成就感,是先前所在的造纸行业所无法给予的。因而,花了一些时间和代价,从头学起,进入了这个行业。
随着入行时间的增长,发现编程与其他诸多技能的共通之处,逐渐对学习与思考的机制有更多的兴趣,“如何更好的学习与思考”这个问题,从阅读刘未鹏的博客(Mind Hacks)开始,一直在心中萦绕。人类的大脑,是随身携带的最好的玩具,也是最强大的工具。而通过这次的阅读之旅,让我对“学习与思考”这个话题有了更多面的理解。
接纳R模式
书中,将人类的认知模式分为两类:R模式(Rich)与L模式(Linear),R与L之分算是对传统所言的“左右脑”分界进行了一个微调,以模式而非脑区来论,更贴切一些,因为我们通常所言的“右脑思维”并非仅调用右脑半球的皮层。
L模式主要处理线性,语言,以及逻辑性的问题,相对缓慢,占用了大脑比较少部分的资源。而R模式则主要处理模式认知,更像是一个超级google,用来进行搜索以及超级正则匹配。二者会进行工作记忆的争夺,用书中的比喻,两种模式会产生冲突,无法同时共用内存总线。
而我们处理问题时候,需要两种模式协作,才能更高效。
设计,吸引力,创造性,灵感,直觉.... 离开了R模式,这些都不能实现。练习调用R模式,并使之成为习惯,R模式不受直接意识的控制,擅长处理综合及整体性的问题。它的工作机理决定了它只能被邀请,而无法被要求。所以在灵感出现之前,需要的是为此做好准备。书中列出了一些实用的方法,比如:利用多感官的输入,刺激大脑;利用图像流、晨间日记或者自由日记的方式,激发R模式的潜能。通过散步,获取R型思维的提示。并且,记住记忆是非常脆弱跟珍贵的,随身携带笔记本,将想法灵感记录下来。好记性不如烂笔头。
学会消除不确定时候的焦虑感。R型思维是非目标驱动的。当你不寄望于它时,就会发现答案自己冒了出来。而在焦虑感的压力之下,很容易因为急于求成而无所成就。
当然,强调R模式,是因为它被忽略了太久,并不是要将L模式贬低,协调二者,才能更高效的学习与思考。
我们大脑存在很多进化未完全导致的bug。各种各样的认知谬误,冲动,都会存在。而直觉,也有很大可能是错误的。创造一个从R型到L型的转化,需要从全局性、直觉性的想法与经验,转换到更常规的实践与技能,从而实现学习进程。
相信直觉,辅以验证。你自己的想法也要加以衡量,进行单元测试。
实践,达致专家境界
专家级境界太难。甚至需要毕其一生之力,才能够有所成就。
想起木心先生所言: 太多人的生命只是行过,无所谓完成。
从小学时候开始,学习与思考这两个概念就已经不再陌生,学生时代的知识与技能积累可以通过考试来评判(且不说评判效果如何),但工作之后呢? 如何对技能进行评价,怎么知晓,自己的所谓经验,是十年的工作经验,还是一年的经验然后又重复了九年?
德雷福斯模型,派上用场了。
德雷福斯技能获取模型
德雷福斯模型将技能成熟的过程分为五个层次:新手,高级新手,胜任者,精通者,专家。
层次越低,自主性越差,越需要与情境无关的清晰性的规则进行指引;而技能越加成熟,则需要更多的自主性,随着实践与经验的累积,对于情境的判断性更好,而一概性的规则却未必在具体场景下适用。
新手需要指令清单,而专家依赖情境;规则断送专家,而情境令新手茫然无措。
而在具体的学习与实践过程中,有几个问题需要考虑,如何学习,怎样实践?
如何学习
一直被动的学习者,虽然获取了知识,但是却进一步损伤了自主学习的能力。我喜欢书中作者的比喻: 羊浸式培训。“你召集起公司不知情的员工,在一个陌生的环境中通过密集的方式,三到五天的时间培训他们,和日常世界没有任何联系。然后宣布他们已经成为JAVA开发人员,.NET开发人员,以及任何你所设想的其他头衔。”
仅仅掌握知识是不够的,这最多给你提供一个框架,需要主动的实践及反馈,持续的投入,才能学会一门技能。作者提供了几个方法,作为指引。
实用投资计划
- 使用SMART方法,实现你的目标。意味着,为实现目标而制定的任务需要: 具体,可衡量,可实现,有相关性,以及时间可控的。
- 建立务实的知识投资计划。把技能与才干看做是知识资产组合,像管理金融资产一样,小心管理知识资产。
制定知识投资计划是一个比较新的提法。这里稍微展开介绍一下作者的理念。学习的知识与技能,都会变成投资组合的一部分,跟金融资产一样,也需要进行管理。
计划也许会改变,但制定计划这个工作本身,就比计划要重要得多,因此能够进行内源性的聚焦,对实现目标作出更多的思考。
跟金融资产一样,知识资产也需要遵循多样性的原则。所有的知识都会有价值,但并非所有花费的时间都有价值。只是因为你在某件事情上花费了大量的时间并不意味着就会给你的知识投资增加价值。
主动投资,根据实际情况客观评价你的投资,并作出相应调整。另外,让投资成为一种习惯,为了让投资的收益最大化,需要为学习做好规划,避免有空闲时间时却无所事事。
学习工具
书中介绍多种工具,篇幅所限,不再展开论述,姑且举其要。
- 用SQ3R方法引导,进行主动阅读。
- 利用思维导图做笔记,做思维拓展。
- 书写,是为了更好的思考。写文档本身,比文档更重要
- 教,是更好的学。
实践,积累经验
如何让实践更有效果?
任何离开实践谈论学习者,都是在耍流氓。但是实践本身,并不一定能带来收获,确保有所成就。作者认为,要让实践有所收获,需要注意以下几点。
通过构建来学习。
传统的方法,是先积累信息,然后希望以后再用到。这是不对的。我们的大脑构造注定了我们需要通过构造来学习。在试探的过程之中,构建起思维模型,这帮助我们更好的看清问题。
更好的利用反馈,让失败有意义
允许失败,才可能实现成功。从不知道出发,自由探索。搭建起容许安全探索的环境进行学习实践,并衡量进度。这方面的工具有git,svn,而进行进度的衡量,可以借鉴单元测试的理念。同时,用自动化的方式,确保琐碎的机能以一种可重复性的方式进行。
通过情境反馈,教会学习者一种意识,观察,不做判断,然后根据意识指引行动纠正。
让大脑为成功提前构建神经网络
大脑工作时,很多感知是基于预测的。我们所看到的,有时候是我们认为自己所看到的,而非真实情况。大脑也会根据周围的环境做出调整,在高技能的人周围,你的水平也会增长。一方面得益于对他们的实践和方法的观察和运用,另一方面,大脑会自己做出调整。
因此,通过想象实验、离线实践的方式,欺骗你的大脑,让它习惯了成功的反馈。大脑不擅长区分想象的实践与真实体验之间的差别。配置好脚手架,然后体验专家的感觉,更有助于提升你的技能。
管理注意力
我在自己创业以来,才切身体会到专注的重要性。每天被若干琐事牵扯其中,想要有所成效的完成一件事情,变得非常困难,而这些在之前的程序员生涯之中,是没有那么明显的。虽然彼时因为会议跟不得不进行的沟通也会打断思路,但是仍然有大块的时间可以供我构思,构建程序。现在,每件事情都在争夺我的注意力。
事情无法削减,能够改进的,就是管理好自己的注意力。我非常认同作者的分类方式,从如下三个方面进行管理:提高注意力,管理好知识,优化当前的场景。
1增强注意力
冥想##
研究表明,冥想锻炼,可以提高人的注意力。通过专注于呼吸,沉浸到一种宽松的思维状态中。保持对情境与你自身的意识,但是不做判断,而是顺其自然,不要与自己交谈,只将注意力放在自己的呼吸上。保持清醒。
经过一段时间的练习后,开始有意识的主动控制呼吸,即使用分段呼吸的方式。定期定时进行冥想。
浸泡思想##
我曾经对我的合作伙伴横加指责,因为在我看来,他有时候无所事事,只是翘着腿,吃着零食,发呆,虽然他辩称他在思考。但作者在书中所提到的一种保持注意力的方式,让我意识到,我可能错怪他了。
通过分散注意力,来集中注意力。创造过程中确实会有很多时候只是坐着,而什么都没有做。丹尼尔·丹尼特认为,在任何特定时刻,你的大脑包含了事件、想法、计划等多个草稿,而“意识”,则是某一时刻下头脑中占有最多脑细胞或处理活动的某个草稿。而通过放松的时间浸泡思想,让多个草稿发酵,渗透和发展 。
2 开发外部信息处理系统
大脑之外的思维支持工具,会成为思维头脑的一部分,作者推荐使用个人wiki。原理在于,一旦有地方可以存储信息,则会有更多相关信息被注意到。通过外部信息处理系统,有一个地方来存放某类想法,会使得更多相关想法的出现更加容易。
通过这种方式,可以将离散的信息进行聚类,形成相关性更强的信息。而在这个原理的指引下,其实未必要借助于wiki,印象笔记,为知笔记,有道云笔记等,也都可以作为记录想法,完善想法的外部处理工具。 不必在工具的选择上花费太多的时间,选择一个差不多可用的产品,然后一直用下去。重要的是你的思想,而不是工具。
3 减少情境切换,降低注意力损耗
情境切换的成本,往往被低估。对我而言,中断一项任务需要再花费10分钟左右的时间才能够重新进入状态。书中给出了一些方法,可以有助于降低情景切换。
- 使用软件,保持在同一项工作上,避免分神。
- 使用GTD的方法论,组织和处理任务。
- 积极的管理干扰,形成团队的沟通规则,什么时候可以打断,什么时候不可以。
- 休息或者不可避免的中断之前,保持情境友好,保留线索,让恢复工作变得容易。
- 使用双显示器和或虚拟桌面,减少情境切换
最后,期待我们能从小工到专家,一路有乐趣,持续进步。新年快乐。