大概是四五年前的时候,当时看到的推荐的书单里,看到这本《程序员的修炼之道》,因为当时还是学生,对未来要成为的这个职业还是比较好奇的,又或许因为名字中含有修炼之道。于是乎,一时兴起就买了这本书,但是随手翻了几年,发现挺无聊的,并没有所谓的修炼之道。时隔多年又一时兴起,再次翻开了它。
首先,读了序言就很佩服作者的远见。 作者首先提到了一种趋势,静态语言的应用率在逐步降低,而更动态需要的语言(比如Python和Ruby)的普及率上升。在体系结构方面,早起的应用集中在数据中心,后来快速过渡到桌面电脑,现在又以同样的速度向云端迁移。这两个观点放在今天是显而易见的,但是这是作者2009年8月写在序言中的。
1.我的源码让猫给吃了
作者强调应该有一个负责任的态度。而我日常中这一点做的非常不好,经常答应leader的时间,总是一而再再而三的delay。然后总是找各种借口,解释自己为什么delay。上一家公司的leader为此说过多次,并且强调要好好想计划,把各种意外因素考虑进去,给出一个能够完成的due date。我总是想着都是内部需求,拖一下又没关系,之前不是没系统也好好的嘛。抱着这种思想,工作效率极其低下,于是便会一而再再而三的delay。leader都会很讨厌这种人,觉得这样的人缺乏诚信,态度不够端正。而且可能因为你的原因,会影响到他的计划。这个问题必须改正,人无信而不立。对于一份工作也应有基本的责任感。
作者还强调,对于用户或者上级。我们应该能提供各种更多的选择,而不是他们反问你,“这个你试了吗”或是“你没有考虑那个吗”。我同样在这方面做的及其糟糕,遇到问题总是喜欢去问leader或者有经验的同事,明明有时候有些问题,自己心里已经有答案了,还是喜欢去咨询别人。总是喜欢以新人的姿态来标榜自己,做事缺乏严重的主动性。代码只会复制,没有例子就不知道怎么写。处理问题只会用已有的经验,当已有经验不适用时,就不知所措。面对问题不能提供多种有效的解决方案,思维呆板。主要原因积累不够,知识面太片面,已知的掌握的不够深刻,缺少实践,不能灵活的运用。