今天工作上遇到了一个十分费解的事情。
一条命令,经过多方充分测试之后上线了,使用者却反映有问题。
于是复制了代码到测试环境跑了几遍,没有发现任何问题,一切正常。
再到正式环境上进行验证,该命令大部分情况下是失败的,可却偶尔会返回成功。
纳闷ing
求助同事,在同事的丰富的调试经验帮助下,最终发现问题所在。
而我今天领悟到的并非问题的答案本身,而重点在于查找解决问题的方法。
一般情况下,一个问题,如果一上来就给我们以挫折,我们就会一点一滴地去将问题本身分解,逐步逐步找到问题的症结所在。
而如果一开始就让我们尝到成功的甜头,或者给予一点点的成功,我们便会不自觉地就会将问题本身细分,直到脱离我们的眼线。
我们看到的更多会是为什么能成功,因为我们期望它是成功的;至于为什么会失败,我们会觉得那是偶然的,或者是不应该出现的。
我们自己蒙敝了自己,异常的成功使得原来对问题的分析能力直线下降。
分析一个问题,应该就建立在我们之前的想法是错误基础上,即使有时成功,有时失败,那也应该认为都是失败的,问题本身是存在的。
接着从结果出发也发,从源头开始也好,进行逆向或者正向的分析,不断地将查找的过程与最终结果相比对,两条线重合之时,就是问题解决之时。
可能我们面临的问题会千变万化,但是解决问题之道却会通用得多,起码下次再碰上这种偶乐出错偶尔正确的情况,我的做法会是直接认定它是错误的,
然后再从错误出发,找到根源。暂且称之为置之死地而后生吧~