Blog

预测使我们能够欺骗进化

Content #

哲学家丹尼尔·丹尼特(Daniel Dennett)提出的观点如下:大脑最强大的功能是什么?

正是提出对未来的猜想并进行反事实思考的功能,比如,“假如我一拳打在他的鼻子上,他就会立即还击我一拳,或者打电话给他在纽约的律师”。这样做的一个好处是能够让我们的猜想替我们去死。被正确使用并且仅停留在大脑内部时,这种预测能力使我们不必马上作出第一顺序的自然选择,不像那些原始的生物一样在死亡面前非常脆弱,只能等待基因库得到最佳自然选择,从而提高自身的生存能力。

从某种意义上讲,预测使我们能够欺骗进化:作为一系列预测和反事实的情景,进化正在我们的头脑中发生。

From #

GTD方法的三个主要目的

Content #

GTD完全基于三个主要目的:

  1. 收集所有需要处理或者对你有用的事情(现在的、以后的、某一时间的;大的、小的、不大不小的),把它们统统置入一个脱离大脑意识的、条理分明的、可靠的系统中;
  2. 指导自己在获取任何“输入信息”(也就是接手任何任务)的前期就进行分析和决策,以确保随时拥有一套可以执行或重新协调的“下一步行动”可行清单;
  3. 管理、协调所有相关内容,履行你在任何时间点对自己和他人做出的各种承诺。

From #

以GTD来应对蔡格尼克效应

Content #

蔡格尼克成功发现了现在被称为“蔡格尼克效应”的现象,即未完成的任务往往会占据我们的短期记忆,直到它们被完成。这就是为什么我们的注意力很容易被未完成任务的想法所干扰,而不管这些想法的重要性如何。

得益于蔡格尼克的后续研究,我们还知道,其实我们并不一定要完成任务才能说服我们的大脑停止思考它们,我们所要做的就是把想法写下来,让大脑相信它会在之后被妥善处理。至于任务是真的被完成了,还是通过记下笔记而推迟了,大脑并不会区分。通过记录所思所想,可以把想法从脑海中逐渐清除出去,这就是戴维·艾伦的“GTD”系统有效的原因。

拥有“平静如水的大脑”的秘诀是把所有的琐事从我们的短期记忆中清除出去,既然不可能立刻一次性解决所有问题,那么唯一的办法就是借助一个可靠的外部系统,把所有关于烦人的待办事项想法都保存进去,并相信它们不会丢失。

From #

创造力需要的两种能力

Content #

奥辛·瓦塔尼安(Oshin Vartanian)比较和分析了诺贝尔奖获得者和其他杰出科学家的日常工作流程,得出的结论是,他们与普通人的区别不是不懈的关注,而是灵活的关注。“具体来说,杰出科学家解决问题的行为可以在‘对特定概念的超常专注程度’和‘对想法的有趣探索’之间交替进行。这表明,要想成功解决问题,可能需要根据任务和需求灵活地选择应对策略。”(Vartanian,2009)

这些研究有助于解决困扰心理学家在研究创造力方面的难题。“一方面,那些心不在焉、注意力不集中、头脑像孩子一样的人似乎是最有创造力的;另一方面,似乎分析和应用才是最重要的。真正的答案是有创造力的人需要以上两种能力,创造力的关键是能够在开放、活泼的思维和传统的分析框架之间灵活地切换。”(Dean,2013)

From #

小数定律

Content #

小数定律是对大数定律的一种戏仿。大数定律说的是某个事件在重复足够多次后,出现的频率会趋向于事件的概率。而小数定律可以说是人类在认知中对大数定律的一种误用:即使在事例数量较少,不符合大数定律前提的情况下,人们也会认为可以应用大数定律,认为事例足够有代表性,轻率地就此做出结论,而不考虑例子数目不足导致错误的可能性。

From #

让笔记达到群聚效应的最佳点

Content #

要达到群聚效应的最佳点,关键是要分清楚三类笔记。

  1. 闪念笔记(Fleeting Notes)这类笔记只是对收集信息起提醒作用,可以用任何一种方式来写,最后会在一两天内被扔进垃圾桶。
  2. 永久笔记(Permanent Notes)这种笔记以一种永久可以理解的方式包含了必要的信息,并且永远不会被扔掉。它们总是以同样的方式存放在同一个地方,或者是在文献管理系统中,或者按出版标准写好放在卡片盒中。
  3. 项目笔记(Project Notes)它们只与某一特定项目有关,保存在特定项目的文件夹内,项目结束后即可丢弃或存档。

From #

GTD不适合有洞见的写作

Content #

戴维·艾伦的技术不能简单地转化到有洞见的写作任务上。

原因之一是,GTD依赖于明确界定的目标,而写作所需要的洞见则无法明确地预先界定。我们一开始的想法通常是非常模糊的,思路会在研究过程中才变得越来越清晰(Ahrens,2014)。因此,以洞见为目的的写作必须以更开放的方式组织。

另一个原因是,GTD要求将项目分解成更小、更具体的“下一步”。当然,有见地的写作或学术工作也是一步一步完成的,但这些工作多半太小,不值得写下来(比如查脚注,重读一章,写一段话),或者太宏大,不能一次完成。而且我们也很难预料到下一步之后要走哪一步——你可能会注意到一个脚注,然后迅速查看;也可能会试图理解一段话,需要查找一些释义;还可能做了一条笔记,再回去阅读,然后跳起来写下一个在脑海中形成的句子。

写作不是一个线性的过程,我们常常要在不同的任务之间不断地切换。细化管理到那种程度是没有任何意义的,而放大到更大的范围也同样没有真正的帮助,因为随后还会有下一步任务,比如“写一页”。你计划“写一页”并不达标,因为经常会有一大堆其他事情花去你一个小时甚至一个月。说到底,工作的推进终究还是要靠洞见来指引方向。这可能就是为什么尽管GTD在商场上非常成功,在自由职业者中也广受好评,但从未在学术界真正流行起来的原因。

From #

wma转换成mp3

Content #

for i in *.wma ; do
    mplayer -ao pcm:file="${i%wma}wav" "$i" &&
        lame -h "${i%wma}wav" "${i%wma}mp3" &&
        rm -f "${i%wma}wav"
done

From #

串行化图构建实例

Content #

我们通过一个例子,看看如何用这几条规则来构建一个简单的串行化图。

图中一共有三个事务先后执行,事务 T1 先执行 W(A),T2 再执行 R(A),所以 T1 与 T2 之间存在 WR 依赖,因此形成一条 T1 指向 T2 的边;同理,T2 的 W(B) 与 T3 的 R(B) 也存在 WR 依赖,T1 的 W(A) 与 T3 的 R(A) 之间也是 WR 依赖,这样就又形成两条有向边,分别是 T2 指向 T3 和 T1 指向 T3。

最终,我们看到产生了一个有向无环图(Directed Acyclic Graph,DAG)。能够构建出 DAG,就说明相关事务是可串行化执行的,不需要中断任何事务。

Viewpoints #

From #

14 | 隔离性:实现悲观协议,除了锁还有别的办法吗?

串行化图(Serializable Graph,SG)

Content #

串行化理论的核心是串行化图(Serializable Graph,SG)。这个图用来分析数据库事务操作的冲突情况。

串行化图的构建规则是这样的,事务作为节点,当一个操作与另一个操作冲突时,在两个事务节点之间就可以画上一条有向边。

具体来说,事务之间的边又分为三类情况:

  1. 写读依赖(WR-Dependencies),第二个操作读取了第一个操作写入的值。

  2. 写写依赖(WW-Dependencies),第二个操作覆盖了第一个操作写入的值。

  3. 读写反依赖(RW-Antidependencies),第二个操作覆盖了第一个操作读取的值,可能导致读取值过期。

Viewpoints #

From #

14 | 隔离性:实现悲观协议,除了锁还有别的办法吗?