delphij's Chaos

选择chaos这个词是因为~~实在很难找到一个更合适的词来形容这儿了……

22 Feb 2010

车棚该漆什么颜色?

很多争论其实是源于沟通和理解。人们的理解能力往往是有限的,这些限制很可能来自于不同的教育背景、知识面等等,因此,为了更好地理解对方,人们往往习惯于使用 自己熟悉的 知识去设法理解对方所说的。

这带来的一个现象,在技术人员之间的讨论中,就会是这样:例如,讨论应该怎么造一枚火箭,往往不会有人去随便做评论,因为他们很清楚自己并不是这个专业的人,而这件事明显需要许多非常专业的知识;而如果讨论火箭发射基地的车棚应该漆成什么颜色,则几乎每一个人都会去发表自己的意见,因为车棚的颜色是什么样子,在多数人看来往往没有造火箭那么重要,并且,似乎每个人都能够胜任这样的决策。

将讨论如何造火箭的话题,阴差阳错地变成一群人争论火箭发射场外面的车棚应该漆成什么颜色,就是我们所说的 Bikeshed 现象。

我在这一天时间里遇到了两次这种问题。第一次是我自己把冯牛说的税的算法问题想错了,第二次是我的关于什么时候该用线程的问题被另一个人活活 扯成了 线程 vs 进程的开销问题。

解决 bikeshed 是需要时间的。不过,每一个参与讨论的人,其实都可以尝试使用一些方法来减少这种情况的发生。例如:

头脑空白原则:如果对方讨论的是一个你认为自己很熟悉的话题,不要首先根据自己的理解去下结论,而要先看清楚对方到底在说什么。许多时候,我们自己的知识背景会限制我们能够看到的问题的范围,很可能对方想要讨论的并不是这些东西。

在发现争论持续了很长时间,双方各执己见时,暂时停止讨论,而不是继续论证自己的观点。一个观点的对错取决于观点本身,而不是争论双方所说的话。

避免情绪化的语言—-那不会增加你的说法的说服力。