引言
彼得·德鲁克(Peter Drucker) 在其著作《卓有成效的管理者》中提出:做正确的事比正确的做事更重要。这句话主要是想表明,体力工作的衡量方法和制度不适用于脑力工作,脑力工作应该更注重有效性(做正确的事),而不是效率(正确的做事)。
我本来一直是赞同这句话的,但在面对高度不确定的问题时,我有了不同的观点。我原来以为,”做正确的事“是说有一件事是正确的,我们需要选择这件正确的事去做。可实际上并不是这样,正确的做事可能更重要。
为什么正确的做事更重要?
首先,正确的事情是不存在的。《卓有成效的管理者》中提到,“所谓选择,通常不是对与错间的选择,最多是大概是对的与也许是错的之间的选择”。 在一件事情发生之前,没有人知道这件事情会产生什么后果。我们之所以觉得这件事情是正确的,是因为类似的事情曾经发生过,而且结果对我们有利,那么这件事情的后果应该是类似的,也应该对我们有利,是正确的。但这只是我们的推理,事情不发生,我们就无法证明它是正确的,只能说根据以前的经验,正确的概率比较大。所以,我们称之为正确的事情,其实是大概率正确的事情。
其次,大概率正确的事情是可能错误的。我们看到的所有天鹅都是白色的,那见到的下一只天鹅也大概率是白色的,但去过澳洲的人知道世界上是有黑天鹅的。在牛市,连续三天股市都是上涨的,那明天的股市也大概率是上涨的,我们会认为应该买进,但有更多投资经验的人知道还有熊市存在,随时都可能来袭。
然后,小概率的错误可能是成本高昂的。一次投资失败可能会亏掉前面所有的投资收益。一次驾驶失误可能会带来致命的伤害。一次线上事故可能会导致巨额赔偿。我们可以成功很多次,但一次失败就有可能让我们一蹶不振。
最后,只有正确的做事方法才能避免成本高昂的错误。我在《如何处理未知问题?》中讨论过,正确的做事方法至少要考虑减少损失和建立反馈。市场环境是瞬息万变的,等待所有功能开发完成再投放市场有全面失败的风险(不可接受的损失),所以我们要改变传统的瀑布开发方式,采取敏捷开发,不断的将最少的功能以最快的速度(减小损失)投放到市场,根据市场的反馈调整后续开发(建立反馈)。故事卡中的信息可能是不完整的,等开发完成后再进行测试有测试不通过的风险(不可接受的损失),所以我们采用TDD的方式进行开发,不断的对最小粒度的代码以最少的测试用例进行测试(减小损失),根据测试结果调整实现(建立反馈)。
什么是正确的做事?
首先,正确的做事包括“做正确的事”,不过这里“做正确的事”是指科学的界定问题和制定解决方案。在面对高度不确定的问题时,我们是不知道问题的最优解决方案的,甚至对问题本身都没有清晰的界定。在这种情况下,首先要做的是界定问题和制定解决方案,而不是自以为是的提高效率,在可能错误的方向上快马加鞭的奔跑。
其次,正确的做事就是以值得信赖的方式去做事。我在《如何让团队真正接受AI编程助手?》中介绍过信任模型,信任由结果(Performance)、过程(Process)和动机(Purpose)组成。结果就是要“做正确的事”,而在“正确的事”无法清晰定义时,我们首先要使自己的动机与团队动机保持一致,也就是《卓有成效的管理者》中说的,时刻问自己“我能对团队做出什么贡献?”,这样即便现在还不清楚正确的事是什么,我们也可以用动机来判断我们的行动对团队是有益的还是有害的。其次,我们要用团队认可的方式(Process)去做事,比如如何界定问题,如何制定解决方案,如何协调资源,如何处理突发情况,如何向上管理,如何反馈等。通过这种方式去做事,虽然我们不能确保结果完全正确,但是我们可以提高结果正确的概率。
最后,在现实生活中我们可以看到很多唯结果论的例子,例如我们经常会听到,“我不管你用什么办法,...之前必须...”。在问题和解决方案明确的情况下,似乎我们只需要努力解决问题就好了,但我们还是有必要去正确的做事,因为随着任务的推进,信息的增多,问题和解决方案是可能会变的。例如,开发人员在做故事卡的时候会经常遇到这种情况,卡做到一半,需求变了,那我们是要忽略新需求继续做卡?还是接受新需求不断修改实现?这时我们就需要有一套需求变更机制来处理这种情况,也就是一套正确的做事方法来处理这种情况。
总结
在面对高度不确定的问题时,正确的做事更重要,因为正确的做事是避免高昂损失和提高成功概率的关键。