当我们无法选择的时候,原因并不在我们自身,
在于客观上还不具备能够进行选择的条件。
可悲的是,人们习惯性的把这种状况理解为内心的纠结,
反而忽视了决策形成条件的推动和促成。
未来是朦胧的
我们所做的事情,虽然业界有很多方案可选,
但是我们实际上并不知道最终方案长什么样。
我们自己也不知道最终能否实现,只能通过感觉,
我们更无法确定什么才是『最终方案』,连问题都在变化。
因此,到底应该如何选型呢?
经验就一定是正确的吗?
选择的利弊应该通过什么来衡量呢?
现状是瞬息万变的
软件领域中,
仅仅根据现状找到解决方案是不可行的,
因为世界不会等我们的方案实现之后再去变化。
等代码写完,一切都变了,
到时候我们又要怪罪需求变更了。
那么,软件应该怎样设计呢?
那些看起来优雅的设计,真的能发挥作用吗?
不好的设计,在长远看来真的就不合理吗?
带着遗憾向前
其实,最难的事情就是直面自己的无能为力,
如果无法做出决策,那就先承认它。
只有承认了,在此基础上才能找到新的思路。
而那些好的决策,并不是当场做出来的,
而是向前走得足够远,再绕回来修正的。
一个总是能有正确判断的人,并不是因为头脑灵活,
而是因为努力掌握更多的信息,拥有全局观点。
因此,如果现在无法决定,就说明无论如何决定都是不可衡量的,
这个时候,就需要大胆尝试一个,带着遗憾去探索,
不要冥思苦想,原地打转。
努力的目的,就是为了验证我们的选择。
从现状看趋势
世界无时无刻不在变化,现状只是这种变化的某个快照,
因此,拥有动态发展的观点,能通过历史和现状看到趋势,才是重要的,
只有沿着趋势生长,软件才能活下来。
不好的设计,违背发展趋势,与问题渐行渐远,
优雅的设计,和问题共生共荣。
要看清趋势,并不是一件容易的事情,
这需要要理清所有相关责任人的想法,
因为,软件是人来做的,也是要用来解决人的问题的。
沟通能力,并不是指把一件事情说清楚的能力,
而是主动了解信息,挖掘可能性,让事情向前发展,
打破僵局,促成一件事情的能力。
快速试错
一件事耽搁的越久,成本就越大,
再退回去重新选择,几乎就不太可能了。
在经济学和商业决策制定过程中,会用到沉没成本,
指的是已经付出且不可收回的成本。
因此,我们需要的是快速试错的能力,
考虑的太周全,就什么也得不到,错过很多机会,
犹豫不前不如快速失败。
前进一步再退回来,重新选择,
再前进再退回来。
我们会获得额外的信息,得到直接的经验。
结语
当出现选择困难的时候,勉强进行选择,才是危险的,
此时此刻,我们应该去尝试,并证明某个选择不可行。
如果永远无法证明呢?
那就相信命运。
有些事情不是人力所能及,
每个人都有完成工作的方式,
很难说哪种方式更好。
最难的事情就是直面自己的无能为力,
遗憾是生活的必需品。