本周继续阅读《程序员思维修炼》一书。书中关于人的大脑工作模式进行了详尽有趣的论述。人的大脑是双cpu模式:1号CPU,负责线性、逻辑思维和语言处理。如果1号CPU没有处理任何其他的指令,它就只会生成一个语言的内部流,这就是你大脑中的那个微弱的声音;2号CPU,像是大脑中的Google,把它想象成一个超级正则表达式的搜索引擎,负责处理搜索和模式匹配。当你“思考”其他事情时,它可以去寻找搜索,然后返回结果集–可能是数天之后了。由于2号CPU不做任何语言处理,这意味着它的结果也不是言语可以表达的。两个cpu互相干扰,如果一个在占用总线,另一个就无法访问内存。显然,1号CPU的分析、抽象、推理、逻辑和线性思维能力更符合程序员的思考风格,也更像计算机程序的运作模式。那么问题来了——是不是2号CPU的综和、直觉、非理性的思考模式就没有可取之处呢?答案是否定的。2号CPU是注重整体的,他能感知整体的模式结构。它具有空间性,喜欢弄清楚事物之前的空间关系,部分如何形成整体。重要的是,它是直觉性的、跳跃性的思维,通常基于不完整的模式、直觉、感觉或者视觉影像来做判断。面对复杂的设计问题或者难以修改的bug,优秀的程序员可以凭借2号CPU的思维进行高效的思考,这就是其独特的综合能力。要想成为一名优秀的程序员,就应该多思考,综合分析,让大脑尽快熟练这种思维模式。学会合理的发挥1号和2号cpu的长处,正如作者调侃那样,“醉酒写作,醒酒修改”。学会轻松面对不确定的事情。进行创造时坦然面对荒谬和不切实际的东西。首先适应学习过程中的困难,再逐步尝试理解其意思,掌握主旨思想,最终一步步解决。
关于大脑,书中还提到了控制注意力的重要性和方法。在如今这个知识碎片化的时代,我们的注意力正在一点点衰退。小学的时候我能坐下画画,一画就是半天。现在拿起一本书,没几分钟就i想看看手机有没有新消息。有人说我们现在每时每刻都在接受新知识,但这些碎片化的、不成体系的知识,和完整的有条理的知识的作用是无法相比的。我们的注意力往往供不应求,每天有很多事情都争先获取我们的注意,而我们仅仅能关注其中的一部分。我们会很容易毫无意义地分散注意力,结果没有什么事情获得了我们充分的注意,我们也没有做任何事情。我们不能被内心喋喋不休的杂事所击倒。那么我们如何提高自己的专注力呢?书中有一个非常大胆的方法:分散注意力以集中注意力。我们必须有意识地忘掉问题,让问题在思维中浸泡一会。但需要注意的是,浸泡思维并不等于拖延。如果某个任务你真的不想做,那么任何分散注意力的努力都很可能只是耗费时间。如果你仍然有兴趣,但感觉“困难”,那么思想其实是在继续发酵,这是没问题的。我们首先需要搞清楚日常生活中到底是什么让我们分心,尝试有意识的远离他们,对症下药;其次找出编码最有效率的时间段,在那时间段尽量不要搞别的事情;最后观察身边的dalao,看看他们是如何应对分心的,要学习借鉴。如果能较好地管好自己的注意力,相信受益的不单单是软工,对其他所有科目的学习乃至今后的人生都有相当大的裨益。