第一步,什么时候试错呢?
通常,这是你遇到困难的时候,或者是要探索未知世界时。
这个前提条件常常被人忽略。杜威的意思是,如果过去的经验没有出现问题,现在还适用,就不要做那些画蛇添足的事情,不要为了试错而试错。在生活和工作中,你经常能遇到这样的人。很多人掌握了一些修改的权力,就喜欢把别人做的东西按照自己的意愿改一下,尽管其实没有差别。
比如说在谷歌,每一个人提交程序代码之后,都需要找一个人审核一下,有些审核人就喜欢去改别人的代码,而那些改动常常并没有实际的意义。在很多机构中,新的领导来了,就非要把上一任的一些规矩改掉,尽管前任留下的规矩并没有出问题。这些为了改变而改变的事情做多了,时间就浪费了,这种经历很难称得上是有价值的经验。
接下来就要确定困难所在,或者问题所指。这一点很好理解,既然是在有问题的情况下去试错,自然要把问题定位出来。
但重点在于下一步,就是设想解决的办法,尤其是需要列举出多种方案。
这一步和笛卡尔方法论中所描述的大胆假设是一致的。特别要指出的是,杜威认为对于任何问题,要尽可能地列举出更多的解决方案。也就是说,我们要抱着这样一种意识:总是要尝试寻找更好的方案。
人们在这一点上常常会陷入一个误区,就是想到一个方案就动手了。但是对于一个真实的问题,常常有很多种解决办法,这些办法之间没有对错之分,却有好坏的差别。在动手之前,先要多动脑,因为如果开始行动之后才发现出问题,这时修正偏差的成本就很高了,因此要在动手之前,尽量降低出问题的概率。之前的信里我们强调了做事的行动导向,但行动导向并不意味着盲目行动,而是要理智地行动。
在谷歌内部,开始一个项目之前,通常要经过一个论证环节。有可能是开会论证,也有可能是通过邮件讨论来论证。不论是哪一种,主持项目的人都需要在项目说明书中至少列举两种方案,因为如果只列举一种,通常就是第一反应想到的方案,而不是深思熟虑后最佳的方案。
如果负责人只给出一个方案,这样的项目通常是无法立项的。如果负责人列举了两种以上的方案,至少说明这个想法不是轻率提出的,进行了一些比较研究。
一些资源比较多的公司,甚至会安排两个团队背对背地独立实现两种方案,以免某一种方案有难以预料的致命缺陷,出问题后不好弥补。
不过,制定了不同的方案之后,并不是立刻就实施,试错的第四步是,先理性推演一遍不同设想的效果。
这时候就要尽可能地采用理性推演的方式,去论证这个方案,这比直接投入到实操中去测试成本要低得多了——不仅消耗的资源少,而且省时间。我们在一个企业也好,一个政府部门也好,通常会开一些研讨会或者决策会,根据以往的经验和逻辑,尽可能地判断手头各种方案各自有怎样的优势和劣势。这其实就是做推演工作。我们知道杜威是实验主义或者说实证主义大师,但是他并不主张盲目地实践。
到了第五步,就要进一步观察实践,与之前的推演相对照,肯定或者否定事先的假设,得出可信或不信的结论。
对于一个问题,可以有各种假说,那些假说可能都符合逻辑,都能够自圆其说。但是,正如波普尔指出的那样,“假说并不是科学的,任何假说都只是假设,只有经过验证的,或者说可证伪的假说,才是科学的”。因此,对于经验主义者来讲,验证这件事是非常重要的。在这方面,人们通常又会陷入两个误区。
第一个就是在实践结果否定了假说后,很多人不是放弃假说,而是另想办法去自圆其说。比如说,一个女生想知道他喜欢的男生是否也喜欢她,就做了一些尝试,表示出友好,但是对方完全没有接。这时候女孩儿该得到什么样的结论?很显然,对方对她不感兴趣。
但是有的人不会这么想,他们会觉得对方可能还是对自己有意思,但可能是不好意思;或者那天对方有别的事情;又或者正是因为对自己有好感,故意显得若无其事——但所有这些解释,都是自欺欺人,不符合奥卡姆剃刀原则(“如无必要,勿增实体”)。你在读媒体新闻时如果稍微留心一下,也会发现很多报道存在同样的问题,它们展示的证据得不出假设的结论。这是第一个误区。
第二个误区则是,用个案去肯定或者否定一个假说。这一点不难理解,这里就不展开讨论了。
科学试错中的聚焦原则和迭代方法
按照这五个步骤来,我们就可以更有效地试错,更快地获得经验。在杜威的这五个步骤基础上,我再补充两点我自己的感受。
第一,聚焦原则,整体进步始于单点突破。
之前的信里我讲到过英国自行车队的成功案例,他们整体的进步是很多细小进步积累而成的。但是,如果他们把所有的的改进措施全部一口气投入实践,各个措施的效果好坏很难衡量;如果整体效果不好,是哪里出了问题,也很难查出来。
比如我们使用了10条措施,假设每条措施可以把成绩提高0.1秒,10条加起来的理想情况是提高1秒。但如果我们在试错时,10条措施一起上,结果总共提高了0.2秒,而不是1秒。那么这是什么原因造成的,我们就很难判断。也许是其中有的措施其实是有害的,抵消了其他措施的收益;又或者有些措施的效果并没有想象中的好,是被夸大了。总之有很多可能性。
为了避免这种情况,在试错的时候,我们需要一点一点地去试,确认某个做法有效了,再去试下一条。如果试到第五条,发现有副作用了,我们也知道原因出在哪里。
这个原则在科研和工程中极为重要,这样做看似有点慢,但是却能保证我们不断取得进展。反之,如果所有措施一起上,那就变成了盲目试错。
第二,通过迭代实现完美主义。
完美主义并没有错,关键是如何实现完美。人不可能一口饭就吃成一个胖子,饭要一点点吃,事情要一点点做。虽然我们的目标是最好,但是它是通过每一次比原来更好而实现的,从来就不可能一步达到最好。理解了这个道理,我们就需要在过程中容忍很多缺陷。
很多人希望一次把所有的缺陷都改了,这是不现实的,想要一蹴而就,工作就永远无法完成。很多时候,截止日期需要严格遵守,我们能够做的就是在截止日期之前,把最重要的事情做完,而不是为了把所有事情做完而不断延期。当然,更不能为了达到表面上的完成,在截止日期为了完成任务而去偷工减料。