简析解决问题的通用方法论

1,469 阅读6分钟

原创文章,谢绝转载。

  生而为人一生中难免遇到各种各样的问题,学习上的、生活上的、工作上的、恋爱中的等等。今天,本猿来谈谈解决问题的通用方法。是的,是解决所有问题的通用方法,而不是单纯是编码上的。为什么讲这个呢?因为近几年遇到太多向我提问的朋友了,各种领域的问题都有,虽然大家的问题类型各不相同,但是其实解决思路都是殊途同归,这就好像不同的编程语言而已,虽然各自不同,但是本质并没有太大区别,当你能够理解编程的思想后,学习其他语言并没有太多门槛存在。解决问题也是如此,不管具体问题是什么,其实解决的思路都是通用的,当你能够掌握解决问题的思路时,遇到任何问题,就基本都能够高效的解决了。

  那么遇到问题如何解决呢?我简单概述为以下几个步骤:

一、分析问题本质

  这是最重要的一步,但是往往是大部分人最容易忽略的。为什么说是最重要的,因为如果你连一个问题的本质都没有搞懂的时候,后续的解决方法基本就已经开始偏离了,自然达不到你想要的效果。那么既然是最重要的,为什么大家却最容易忽略呢?因为很多时候人们想当然的自认为理解了问题的本质,本身就没有去仔细思考过问题的本质,自然也就很容易误判。
  举个例子,你的邻居来找你借个斧子,但是你家没有这个东西。假如说在一定要解决此问题的大前提下,那么很多人思路肯定也就是去帮他找其他人借。但是,如果仔细思考一下这个问题,他的问题关键肯定不是在于斧子,而是在于用斧子做某件事,比如他想用斧子砍断某个东西,这时候你会发现,虽然你没有斧子,但是你有锯子,同样能解决这个问题。这时你就能以最小的时间和空间成本解决这个问题了。
  所以,上面这个例子中问题的本质是如何解决切断某个东西这个问题,而不是怎么找到一把斧子这个问题。当然了,上面只是为了让大家好理解而使用了非常浅显易懂的案例。真实场景下,问题本质的分析自然是不会这么简单的,这也是为什么很多人一学就会,一用就废,因为太多人就算掌握了理论也不会去实践。至于如何在实践中结合理论,这点后续有机会我会单独再出一篇文章解析,这里不聊太远了。

二、拆解

  解决问题的第二步就是拆解,这里的拆解包含两类,问题的拆解和步骤的拆解。
  首先说说问题的拆解,一般需要使用问题的拆解主要是因为这个问题太大,所以不得不拆解开来。举个例子,现有问题如下,如何造一辆超音速汽车?乍一看这个问题就几乎无解。但是如果划分为很多问题的话其实也不是不能解决的,比如:如何制造能够承受如此速度下的轮胎,如何直接能够在此速度下保持平稳的减震系统,等等,把上述问题划分为许多个小问题,如果每个小问题依然感觉很难执行,那么就进一步细化。
  至于步骤的拆解,通常是因为某个问题的解决过于漫长,这时候最好的方式就是分步进行。例如:10年内由本金10w赚到1000w。这就是一个长期的问题,那么最好的做法肯定不是一直去思考怎么用10w赚到1000w,因为这个事情本来就是一个长期的问题,没有必要跨越这么长的时间周期去思考解决方案,完全可以分成三步,3年内赚100w,6年赚300w,10年赚1000w,那么这时候你只需要思考第一步,如何用10w本金,3年内赚100w,虽然说对于大部分人来说依然很有难度,但是和之前的问题相比,至少从实现思路来说已经可以想出不少方案了。

三、求解与执行

  当问题和解决步骤明确后,下一步就是想出每一步的解决方案和执行了,既要做思想上的巨人亦要做行动上的超人。很多人明明已经知道了该怎么做,却因为懒、害怕出错等各种原因而不愿意付出行动,这也是很多人遇到问题总感觉很难解决的原因之一,光是思考是无法解决问题的,最终还是需要行动才能解决,问题不会因为你思考的多么透彻就消失。这就是大家一直强调的执行力,高效的解决问题能力,执行力是必不可少的。

四、验证与循环

  这一步同样是很多人会忽略的一步,解决完问题就完了,没有反过来观察与验证解决方案的效果。往小了说,这样可能会造成你这个问题没有解决彻底而再次出现,往大了说,没有这种习惯会造成以后缺乏能完整解决各类问题的能力。所以验证是必须的!如果没有达到预期效果,那么就开始从第一步循环,再次来解决。

上述内容就是本猿解决问题的方法论了,虽然字数比较少,但是对于真正的实用主义来说,我觉得并不需要太多文字的修饰,我写作的一向原则就是,用最简单话讲大家都能听懂的事情。理解能力比较强的同学应该不难发现,上述内容,很多和编程思想都是类似的,正是如此的,编程的一大思维就是逻辑思维,而解决问题也需要强大的逻辑思维能力,逻辑能力差的话,通常都会把问题搞得一团糟。所以,越是逻辑思维不好的同学其实越应该接触一下编程呢!