由《暗时间》所引起的读书计划

读 刘未鹏的 《暗时间》所感

一个偶然的机会, 看到同事桌上有一本叫《暗时间》(Dark Time)的书。 被书名和封面所吸引。 从高中开始对于天文以及天体物理的兴趣还好没有消失殆尽。看封面和书名以为是类似霍金《时间简史》一类的书。 充满期望的拿回来看了。 结果不是。 不过无心插柳, 反而容易柳成荫。虽说此书不是我期望的内容, 看了之后还是被深深吸引了。 尤其是其前言里面的文字深深的唬住了我。 四页的前言提到了几十本有关心理学,认知科学相关的书,给我非常大的压力。 看到作者介绍一些和人脑工作原理相关的书,我耐着性子看下来了。之前一直想写关于人脑和计算机类比分析的系类文章, 由于对人脑工作原理缺乏了解, 不能写下去。这次是个机会开始这项工作。 恰逢感冒在家休息, 花了3天时间认认真真从头到尾非常仔细的看完了。 看完之后才发现, 这居然是我第一本完整的认真的读下来的书。(写到这里有点碎碎念了:))

简单来说, 这是一本写给屌丝程序员看的夹杂着心理学,认知科学,成功学,玄学,计算机科学,数学,学习方法论以及作者本人的内心独白的科普读物。 貌似这个评价不高, 我还是很喜好这本书的,原因之一是作者年龄和我差不多大。 作者刘未鹏, 1984年生, 本科和硕士都在南京大学(学习机器学习的筒子们大概都知道, 就只周志华同学的那个学校)。在微软亚洲工程院工作,做机器学习相关工作。 从他的书来看, 虽然和我年纪差不多, 文笔也略显稚嫩,但是其个人能力和素质是我难以望其项背的。 从文字中可以看出来,他对很多现象是有比较多的思考的。

作者虽然喜欢写代码, 更喜欢码文字。 有一个专门的博客:[刘未鹏 MIND HACKS](http://mindhacks.cn/)。 上面有很多技术非技术的讨论。 同时在豆瓣上他也列出了很多他推荐的书。

提一下, 作者是C++的忠实用户, 是Top Language (Google Group) 的发起人。 翻译了很多C++方面的书籍。

我的读书列表。

看完《暗时间》,上面提到的很多书我都没有读过, 一口气把能买的都买了。

思考,认知科学

  1. [走出思维的误区:批判性思维指南(修订第9版)]
  2. [本能:为什么我们管不住自己?]
  3. [对”伪心理学”说不(第8版)]
  4. [找寻逝去的自我:大脑、心灵和往事的记忆]
  5. [数学与猜想(第1卷)]
  6. [数学与猜想(第2卷)]
  7. [怎样解题:数学思维的新方法]

关于脑科学的书, 看到曾今的笔记里还有两本,一并列在这里:

  1. HIERARCHICAL TEMPORAL MEMORY including HTM Cortical Learning Algorithms
  2. On Intelligence by Jeff Hawkins.

计算机科学

  1. [经典原版书库:深入理解计算机系统(英文版·第2版)]
  2. [你就是极客!软件开发人员生存指南]

下面3 本java 的书是之前买的, 没有来得及看, 一起列在这里作为这次阅读计划的一部分吧。

  1. Java解惑
  2. Java并发编程实战
  3. 编写高质量代码:改善Java程序的151个建议

还有一本流行书

  1. 创业者手册:教你如何构建伟大的企业(精益创业发起人全新力作,商业模式画布的绝佳应用)

《暗时间》

《暗时间》一书的内容从刘未鹏的豆列可以看出来:

主要包含三个方面: 认知科学, 心理学,决策。然后延伸到工作和学习当中如何做。 理论联系实际,写得比较大众科普。 可以这么说, 《暗时间》一书是作者对于上述几个方面的阅读总结, 同时也是我学习上述领域的引子。 作为引子,这本书是极好的,不在于它写的内容多么丰富,在于它勾起了我去学习相关领域的兴趣。从这个方面来说, 这本书于我是一本极好的书。

认知科学

对于没有阅读过任何正式的书籍和材料的我来说, 认知科学是一门研究大脑如何工作的学科。 这让我如此着迷。

我是如此聪明,但我却不知道我为何如此聪明, 也就是说我其实是不聪明的, 因为我连我为何聪明这么基本的问题都不知道。

大脑的主要工作包含两个方面: 思考和记忆。

思考

思考其实相当于在计算,在做逻辑推理。拿计算机做类比的话, 相当于CPU的功能。同CPU一样, 不同机器有配置不同的CPU, 运行速度不一样, 人脑也有思考快慢之分,比如我们经常跨某小孩脑子转得快。在面试工程师的时候,面试官也倾向于招那些脑子很灵活的员工。 另外一方面, 如同CPU的处理能力非常有限一样, 人脑的处理能力也非常有限。 在同一时间,基本是单线程处理。你或许不同意这个观点, 你可以试试同时速算两个稍微复杂的数学加减法,你行吗? 处理能力有限另外一层含义是指处理的问题规模不能太大。实际上人脑能同时处理的变化因素很少,同CPU一样, 只有很少的寄存器,大部分内容必须存储到另外的地方。你可以尝试一下,给你用7个以内的数排序,让你按顺序从大到小把数字念出来,你需要纸笔吗? 不需要。这是你一眼就可以完成的。 但是如果数字一多,比如100个, 你还可以吗? 不行了吧。得借助纸笔做些标记了。

思考的目的是为了更好的做决策。 要求我们有Critical Thinking. 记得在CMU 上学时, 我的老师Nicolas Christin 教会我们的就是如何从大师的paper中挑刺,写paper revieww。另外GRE的作文一部分就是critical analysis。 这一部分好好训练, 对于人的思考方式会是很大的改变。

记忆

记忆相当于计算机的memory。 HIERARCHICAL TEMPORAL MEMORY including HTM Cortical Learning Algorithms 这篇比较深入的从生物学角度解释人类记忆的机理。 人类记忆同计算机的存储设计有很多相似之处。 比如人的记忆有记忆曲线,过段时间会遗忘。 而计算机的缓存机制也是按照类似方式设计的, LRU算法对于长久不用的内容(记忆)会抛弃掉,相当于人的记忆如果长时间不回忆,就会遗忘。

学习

学习 = 记忆 + 思考 (= 程序)

学习的过程就是我们先去记忆一些知识, 在运用过程中加入自己的思考。《暗时间》提到学习的几个方面,包括:专注,效率,阅读,写作,知识结构等。

作者提到知识结构一词, 我非常认同。自认为从初中到高中数学非常容易,根本原因在于对于整体的数学知识结构把握的好。 这得益于初中遇到一个非常好的数学老师。 在他去启蒙下, 已经知道分析和综合方法是解决问题的两大基本方法。 数学中的基本知识点多多少少都忘的差不多了。就这最根本的方法没有忘记。 我估计这辈子也不会忘记了。 我敢说, 对于高中数学, 告诉我一个基本定理, 我能够把整个学科都建立起来,完全不需要记住这个定理,那个定理。

后来学习计算机科学就没有这种感觉, 太零散,学的是知识, 不是技能。从而走了很多弯路。 谴责一下坑人的大学教育。 读研的时候Nicolas 还是教了一些根本性的东西,那是非常好的。

总结

列了这么多书在这里, 压力很大啊。争取半年看完。

MIND MAP