读书经验告诉我,读书不但要看书的内容,还需要留意作者、流派等等一系列信息,这样才能获得更丰富的认知。《社会性动物》和《绝非偶然》已经给我留下了很深的印象,所以看到《错不在我》的作者是阿伦森的时候,我便毫不犹豫地买下来阅读,事实证明,这本书也确实值得一读。

“错不在我”,这是工作生活中经常听到的说法,上至高官,下至百姓,人人都免不了说这样的话,而且常常是在“错明明在我”的情况下说出来。阿伦森的《错不在我》便是要从心理学的角度出发,分析这种有趣的现象,并给出很多有益的建议和结论。

按照阿伦森的分析,“错不在我”之所以会出现,主要原因在于认知失调。所谓认知失调,是指当人们的认识和现实(或得到的反馈)不一致的心理现象。处在这种状态下的人会觉得难受,于是要想尽办法达到认知一致,才能罢休。这个过程说起来复杂,其实简单,郭德纲有段相声可以作为典型例子:“我抽了几十年的烟,昨天看电视说抽烟对健康影响很大,转天我就给戒了”,“不容易啊,您真是有毅力的人”,“哪啊,我把电视给戒了”。

实际上,认知失调的现象非常普遍,即便是提出这一理论的心理学家费斯廷格也无法避免。他曾经反复纠结于买距离学校近的房子还是远的房子,最终选了远的、旁边有湖泊的房子。搬过去之后,有一天他忽然买了一条独木舟回家,这让他妻子大笑不已。费斯廷格反复思考,才发现原因:搬过去之后他才感觉这处房子并不是好的选择,但既然已经做了决定,他必须维护自己的决定,所以买一条独木舟作为“补偿”,让自己感觉良好,虽然此时距离真正能在湖上泛舟的日子还有好几个月。

从上面两个例子都可以看出,“错不在我”是怎样发生的——人们拥有自己习惯的价值观和行为方式,并且潜意识里认定这种价值观和行为方式会获得预期的结果。当实际的结果不符合预期时,为了避免认知失调(没有人会说“我开始就想到了要落得这么个意外的糟糕的结果”吧),就需要“解释”自己的行为,所以“错不在我”也就顺理成章出现了。这种现象不只在大人身上出现,小孩身上也会出现。我们问小孩为什么打架,他们一定会找到理由,比如“那家伙是个笨蛋,还总做错事,如果有机会,他一定会对我不恭敬”,所以,“我揍他,错不在我”。

更有意思的是,之前投入得越多,“错不在我”就表现得越发明显。费斯廷咯年轻时曾和两名助手潜入某个组织,该组织号称某年12月21日是世界末日,只有加入这个组织,才能在12月20日晚上被飞碟救走。可是到了这一天,世界末日并没有到来,人们开始不安。这时领导者解释说,因为“我们这个小团队无与伦比的忠诚,上帝决定救赎这个世界”。在外人看来这个站不住脚的解释非常可笑,但组织内的人却感到欣喜,要求新闻媒体报道此事,并走上街头要求路人改变信仰,加入进来。其实这样的例子还有更多,比如回忆录的可信度就是这样。很多回忆录之所以不可信,就是因为作者本人需要“合理解释”自己的经历,所以自觉不自觉地做了美化或者夸张,而他们自己并没有觉察。

认知失调如此普遍,在现实生活中可能引发一系列的现象,甚至造成严重后果。社会心理学家斯坦利·米尔格拉姆做过一个著名的实验:首先,邀请被试对某个人施加450伏特的电击(这样会造成让人难以置信的痛苦),并提供20美元的报酬,结果大多数人都拒绝了,哪怕给2万美元也不行,因为他们不看重这些钱。然后,邀请被试对这个人施加10伏特的电击,并且让被试能够观察到电击的结果,仍然提供20美元的报酬,这时候很多人同意了,因为这种电压几乎察觉不到。接下来请被试用20伏特进行电击…,然后用30伏特、40伏特直到450伏特。不同意一开始就施加450伏特电击的人群里,有三分之二会逐步把电压提升到450伏特,因为在其中每一步,他们都觉得“反正都到目前这一步了,也没什么问题,再加10伏也没事”。

阿伦森把这种现象称之为“决策的金字塔”。在金字塔的顶部,两个选择之间很可能只有细微的差别,比如“要不要对某个人施加毫无伤害甚至无法察觉的电击”,可是一旦你做出了最初的选择,你就会不断肯定自己之前的选择(很多时候甚至是在潜意识里进行的),一段接一段,一环扣一环,到金字塔底部,就产生了巨大的差异,比如“要不要对某个人施加450伏的电击”。如果单纯看最终的结果,我们会觉得很多事情不可思议,但这种巨大的差异就是由最初那微小的分别造成的。

读到这里我忽然想明白了很多问题。我之前也自认为属于“比较爱整洁”的人,每周,最多两周就会彻底打扫一次卫生,并对此颇为满意。有一天我的朋友Jack跟我说:“你有没有尝试过,一看到有不整洁的地方,就立刻打扫呢?”我当时并不理解这样做的意义,觉得这样太琐碎太麻烦,但仍然愿意把它视为一个友好的建议去尝试。过了一段时间,我发现“随时打扫”不但让环境整洁了很多,更重要的是悄然改变了我的心态,不再会有“虽然不干净/不太干净,但我现在太忙/太累,等周末再打扫好了”的想法,而是多出了“看到了就立刻动手”的行动力,这种行动力的增长,又会在生活其它很多方面带来更多的益处。决策金字塔顶端的细微区别,带来的是底部的巨大差异。

带着这样的认识,我仔细观察优秀的程序员和不优秀程序员之间的差异,发现这个道理是相通的。优秀的程序员往往会对程序的缺陷“零容忍”,对知识的空白“零容忍”,一定要解决问题,弄清楚原理才善罢甘休(我认识的一个非常优秀的程序员,他写的程序不但没有错误,连警告都没有)。而不优秀的程序员往往觉得那么做是吹毛求疵,吃饱了没事做。单纯从这些细节来看,这么判断不无道理。但退一步看,这只是金字塔的顶部而已,不在乎“无关紧要的细节”的程序员,往往也不在乎“不那么要紧的细节”,因为“如果这种问题都要解决,那细扣起来要花的精力实在是太多了,而我之前没扣那些细节,程序不也照跑嘛”……然后,就是不在乎“一般的细节”……再然后,就是不在乎“比较重要的细节”……最终程序崩溃时,他们才会发现原来要改的东西太多,完全无法掌控,只能推倒重来,同时继续忽视“无关紧要的细节”。这样的程序员,无论做多少项目,有多少年的经验,也难以跻身“优秀”程序员的行列。

这么想开来,古话说“勿以恶小而为之,勿以善小而不为”,其实是非常有道理的。小善、小恶,看起来是一念之差,就事论事也不会造成严重的后果。但是如果希望避免最终的恶果,就必然需要重视小善小恶的区别,这样才能避免为平衡认知失调而做的重重辩护,切断由此铸就的长长锁链,真正防止我们从金字塔的顶端重重跌落。