前言
要想达到一个目标,你必须清楚的看到以下几个要素:
1.所追求的目标的本质
2.达到目标所具有的意义
3.现有的条件
4.从现有的条件到达目标,切实可行的路线
5.前进道路上可能遇到的问题,以及解决它们的计划
——王垠《谈谈理想主义》
正文
不得不说,王垠看问题的确实很深入,也相当犀利。看问题的透彻,解决问题的方法,能够跳出平常惯性思维,也许他的惯性思维就是这样,但这是我做不到的,至少现在的我做不到。
当我遇到到一个问题的时候,并不是同王垠一样思考它的本质,现有的资源,最优的解决办法,以及会遇到的问题这样一个思维方式。通常会以感性的思维去解决,或者直接通过搜索引擎看别人是怎么做的,有时候干脆在github上找一段代码,修改,使用,不甚了了。并没有自己思考的一个过程,这也是我现在所缺少的。
有时候我会感叹自己记住的东西不多,学习的效率不高,写过的代码回过头,依然是需要查资料才能解决。一直觉得这样是一种病态,不仅仅是编程的惰性,更是思维的惰性,人性的惰性。然而这种惰性的由来多部分是由于没有审视现有的条件,以及从现有的条件到达目标,切实可行的路线这样去思考问题。一味地使用别人的代码,别人的东西不一定是最适合自己的。所以从自身出发去编程,是非常重要的。
何为从自身出发去编程?
我所理解的就是从王垠《谈谈理想主义》那里得来的那几个要素。
首先,认清本质。我们要做的是什么东西,需要实现什么功能,以及考虑到以后的拓展。做这件事的意义是什么,我们能得到什么,也是需要思考的。虽然有很多的不可控,但是这是一个过程,将不可控变为可控,不是吗?
其次,现有的条件,以及从现有的条件到达目标,切实可行的路线。这里就强调了从自身出发。其对立面就是王垠所提到的“理想主义者”。他举了个例子:
每当理想主义者失败的时候,他们总是喜欢抱怨世界。比如,如果他们是做软件的,也许失败之后会跟你说:“我的想法超越这个时代太多了,目前的硬件水平无法支持我的设想……”
王垠说“你连现在的硬件能做什么,不能做什么都没搞清楚,就开始做软件,当然会失败了。”
这是没有考虑现有条件所导致的失败。
换一个角度,我们编程的时候,更需要思考这样的一个问题——“从现有的条件到达目标,切实可行的路线”。这样其实也就强调了平时的积累,不积跬步,无以至千里,更不会写出好的代码。
从自身出发去编程,用自己的思想去编程,可谓难得。但愿我已经在路上了。
读王垠博客有感,二零一五年九月十一日。
传送门
王垠的博客