A:这段代码写的不好,重新写吧。
B:这是我复制别人的,以前就这么写的。要是改的话,很多地方都要改,就这样吧。
A:文档写的不规范,重新写吧。
B:以前PA就这样写的,我模仿他们写的。PA都review了,他们也没有说写的不好。
美国斯坦福大学心理学家菲利普·津巴多(Philip Zimbardo)于1969年进行了一项实验,他找来两辆一模一样的汽车,把其中的一辆停在加州帕洛阿尔托的中产阶级社区,而另一辆停在相对杂乱的纽约布朗克斯区。 停在布朗克斯的那辆,他把车牌摘掉,把顶棚打开,结果当天就被偷走了。而放在帕洛阿尔托的那一辆,一个星期也无人理睬。后来,津巴多用锤子把那辆车的玻璃敲了个大洞。结果呢,仅仅过了几个小时,它就不见了。
以这项实验为基础,政治学家威尔逊和犯罪学家凯琳提出了一个“破窗效应”(Broken windows theory)理论,认为:环境中的不良现象如果被放任存在,会诱使人们仿效,甚至变本加厉。
以一幢有少许破窗的建筑为例,如果那些窗不被修理好,可能将会有破坏者破坏更多的窗户。最终他们甚至会闯入建筑内,如果发现无人居住,也许就在那里定居或者纵火。一面墙,如果出现一些涂鸦没有被清洗掉,很快的,墙上就布满了乱七八糟、不堪入目的东西;一条人行道有些许纸屑,不久后就会有更多垃圾,最终人们会视若理所当然地将垃圾顺手丢弃在地上。
破窗户给人造成一种无序的感觉,结果在这种公众麻木不仁的氛围中,犯罪就会滋生、猖獗。
在实际生活中,我们都自觉或者不自觉的验证着这个理论的正确性。
第一个不遵守代码规范,随意起变量、函数名字,第一个在文档里出现语法错误,如果没有及时纠正过来,这样的事情会愈演愈烈。
我们的产品已经有十几年了,几百个人进过代码,写过文档,每个人风格不同,质量也是良莠不齐。有一个模块据说已经完全背离了当初的设计初衷,完全就是一棵长歪的树。有人提出来要重构,但是修改起来伤筋动骨,没有人力来完成这项浩大的工程,只好在现有基础上修修补补。
没有人肯承认自己是打破第一扇窗的始作俑者,但是,趋之若鹜地充当后续的破坏者的获益是显而易见的。
走在干净的马路上,没有人好意思丢下手里的垃圾。如果,看到有一片随手丢弃的包装纸,那在这附近大概率会有越来越多的垃圾出现。
当第一个犯错的人没有被惩罚时,后继者为继续错下去找到了可供参考的借口和理由,很大程度上会将破坏扩大化,而不是去修补。
如何破除“破窗效应”呢?
防微杜渐,从源头消除第一扇窗被打破的可能。
提高犯错的成本,加大对第一次错误的惩罚。
及时修补破窗。
Last but not least,当我们无法选择环境,甚至无力去改变环境时,努力使自己不要成为一扇“破窗”。