《暗时间》

最近真的太忙,但是再忙我也强迫自己抽出一些碎片时间来阅读,所以写书评也是必要的,因为,一本书不写书评,我根本就看不下去另一本书。对了,其实前几天还看过一本书叫《程序员的数学思维修炼》,这本书几乎是直接翻过去的,因为里面的内容基本上是给没上过大学的人看的,所以也就没有写书评的必要了。

《暗时间》是本与效率有很大关系的书,有很多套路,但是也不乏新奇之处,很多章节虽然啰嗦而且段落太长(不知道是不是我kindle显示的原因),但是书中对于每一个结论的得出,都是经过了层层推敲,循序渐进地引导我们进入作者的思维中去。而不是如其他效率书一样,上来就是一个结论,然后教我们步骤。整体感觉上,这本书还是挺不错的,可以给四分。对于“暗时间”的概念,我是觉得作者在这里并不是标题党,确实作者的“暗时间”并不仅仅是指传统意义上的碎片时间。

更深层次地讲,此书,并不是完全讲时间管理,而更多的是一种引导,引导我们认知、学习,文中提到很多关于学习的方法以及很多学习不好的方法对我来说都受益匪浅。对于时间管理,我现在使用的是番茄工作法,基本上解决了碎片时间的利用率问题和工作休息切换的问题;但另一方面,天秤座最主要的特点,犹豫不决,我在这一点上依然会浪费很多的时间,而且总是给自己和身边的人造成困扰。我想或许经历得更多,我就能有更多的果断和从容,但是又该怎样在有限的时间里比普通人经历更多呢?

书中关于学习算法那个章节我的印象是十分深刻的,因为我也曾经参加过ACM比赛,也曾经疯狂地刷题,虽然最终放弃了,但是那段一心钻研算法的日子真心值得回忆。看了该书,我仿佛茅塞顿开,仔细想想,曾经的很多算法书,特别是我们的教材上面讲算法,包括数学的公式证明,在引导我们的中途几乎都会突然来一个转折,“不妨在这里...”这样的坑我以前也踩过很多次,特别是在啃那部《算法导论》的时候,当时我就一直想弄明白,这里凭什么就突然要这么做了。事实上,正如作者所说好多的书籍都弱化了思考的这一环节,事实上,我猜,那些书的作者可能也没理解到这样转折的理由,如果真要把思考的过程全部加起来,那么随便一个K(kan)M(mao)P(pian)算法也足矣成一本书了。在刷OJ的那几个月里,我记住了很多算法,也记不住很多算法,但现在仔细想来,基本上能记住的算法,我都能清清楚楚地知道那个算法是怎么演变而来的以及为什么要用那个算法和什么时候用那个算法。

书中还提到几个日常中非常实用的思维训练以及时间管理方法:

  • 设置自己的进度条,将目标分割成一个个里程碑,再讲里程碑分割为一个个TODO list列表
  • 如果有什么难题困扰你了,那就在睡觉前一直想,你永远不知道大脑在你睡着的时候会怎么奇迹般地解决这个问题。这点相信很多人都是有实际体会的吧。
  • 走路睡觉吃饭都可以思考,当你完完全全陷入一个问题的时候你就会知道你突然多了好多的时间
  • 时常反省和注意自己的思维过程。尤其是当遇到无法理解或解决的问题之后,最需要把原先的思维过程回顾一遍,看看到底是哪个过程被阻塞住了妨碍了理解。

后记:写完了整个书评,突然觉得这本书比我之前认为的还要有意义得多,我现在可以给它五星了。

语录

你会在这本书当中看到的一个重复出现的现象就是自学,大规模的自学,逃课自学,上网找书自学,程序员行业是最适合自学的行业,网络是程序员的天堂,需要的资源、工具,比课堂上的多出何止百倍,如果说还有一个学科,并不需要传统的教育就可以成才,估计非程序员莫属了。作为程序员如果没有查过wikipedia,没有看过几本原版电子书,没有在国内外主要邮件列表里面提过问题吵过架,没有用技术博客记录学习的独特体会,没有订阅技术牛人们的博客,怎么好意思说身在这个行业呢?

利用走路和吃饭的时候思考,还有睡觉前必然要弄一个问题放在脑子里面,在思考中迷糊入睡。发现这样一来往往在不知不觉中多出来大量的思考时间。将思考成为习惯还有一个很大的好处--避免焦虑。

尽量避免琐事骚扰,不重要的事情能不做就不做。有时候,紧急的事情往往只是当事人觉得必须马上做完才显得紧急或者干脆就是紧他人之急,最糟糕的就是纯属性格上原因觉得每件事情都得第一时间完成,很多看上去紧急的事情实际上并不是真的"不能再拖了",有的干脆就并不需要或值得去做。有很多事情都是可以先放一放甚至完全let go的,否则的话就整天被所谓"紧急"的事情牵着鼻子走了。

有一句话说:看一个人,只要看他读的书和见的人。还是很有道理的,这两者是一个人成长中最有价值的信息来源。

一个你不明白其证明的定理在我看来比不知道这个定理还要糟糕,因它给你造成一种懂了的错觉。与看定理必看证明类似,看一个问题的解法,必然要看解法所诞生的过程,背后是否隐藏着更具一般性的解决问题的思路和原则。否则一个解法就只是一个问题的解法,跟背口诀一样。即,知道了算法是怎样一步步被推导出来的,我们就一下拥有了大量的记忆提取线索:对算法发现过程中的任何一个关键步骤(尤其是本质)的回忆都可能使我们能够自己动手推导出剩余的内容

推荐阅读更多精彩内容