思与行的取舍_风闻
code2Real-有人就有江湖,有code就有bug2022-05-07 08:42
俗话说:知易行难,反之亦然,知难行易。
普通程序员解决一个问题:
1.拍脑袋想三分钟
2.撸起袖子写代码半个小时
3.遇到问题debug一周
4.遇到新的需求,推倒重来,写两个小时,debug一周……
高级程序员遇到一个问题:
1. 思考一周,画设计草稿,写测试用例,寻找可复用的库……
2.写代码两个小时
3.debug两个小时
4. 遇到新的需求,再写半个小时,debug半个小时……
普通程序员因为受到上面的压力,没有足够的时间去思考,因为上面不愿意看到程序员坐那里思考,更愿意看到程序员不停地敲键盘。好象生产力是来自于键盘,而不是来自于思考和认知。
有一个农民,有一天劳动时中风了,每天只能躺在床上。
虽然农民不能做事了,但是还能思考和说话。
于是农民有了充足的时间思考,之后向家人交待各种事宜,既然不能种地了,那么可以考虑通过其它方式赚钱。
上帝关上一扇门的同时,为他打开另一扇门。
两年后,家里并没有因为缺少一个劳动力而陷入经济困境,反而因为这位农民的思考获得经济上的改观。
因为行动看得见,而且可以考核,所以大家都喜欢行动。
思考看不到,而且难以考核,所以大家不太愿意思考。也许思考太多,会引发分析瘫痪症。哈姆雷特就是因为思考太多,而错失行动的良机。
很少有人去思考:如何让思考变得可以考核,可以量化,可以持续改进……
这是一个关于思考的思考。
在农耕时代,人们尽可能地压缩思考时间去行动,毕竟生产力低下,手停口停。
在后工业时代,机器生产的效率已经超出农耕时代的数万倍。理论上,只要分配公平,大部分人不会饿死。理论上,大部分人可以拿出更多的时间去思考。
但是作为一种传统或习惯,大部分人还是行动第一,思考第二,先射击后瞄准。
即使到了需要重视思考的软件行业,大部分从事者仍然没有学会思考,留给思考的时间只有几分钟,不愿意浪费时间写文档,画设计图,寻找可复用库。
别以为我闲得没事会研究历史,在程序员眼里,一切都是代码库,包括历史。
有现成的历史经验(库)不用,重新发明历史(轮子)太费事了,所以程序员是真正的懒人。