注重实效的哲学程序员修炼之道第一章阅读心得
注重实效的哲学——程序员修炼之道第一章阅读心得
强烈推荐这本书《程序员修炼之道——从小工到专家》 https://book.douban.com/subject/5387402/
注重实效的程序员的特征
他们处理问题、寻求解决方案时的态度、风格、哲学。
- 能越出直接问题去思考更深层次的东西。总是设法把问题放到更大的语境中,设法注意更大的图景,以最小代价达到最佳效果。
- 项目代码的维护,对自己的代码负责,将项目代码保持整洁优雅。
- 善于发现变化、接受变化、自我改变。能克服惰性,在改变中,提高效率,自我提升。
- 注重积累自己的知识资产。定期读好书、学新知识、温故总结。
- 更好的和他人交流。工作生活中我们会有快一半的时间用于交流,我们应该在交流中学习,提高交流的效率,在交流中收获良师益友。
以上我从书中总结的五点非常重要,下面会结合实际情况详细分析、并找到如何做的方案。
以及个人认为时间的规划也很重要,长期安排和短期安排都很重要,附 Geek 工作效率图
项目代码的维护
在所有弱点中。最大的弱点就是害怕暴露弱点。
软件的熵
当软件在无序增长时,也就是熵增加,软件趋向于腐烂。
但是显而易见的,有两种项目:一种随着开发,软件的熵越来越高,有着指数般的成长趋势,项目逐渐腐烂;而另一种,随着开发,软件的熵得到了很好的控制,线性般的成长趋势,甚至就好像有一个上限值一样,成长趋势越来越慢,几乎停下来。
那么是什么造成了这样的差异呢?
破窗理论
在市区,有些建筑漂亮整洁,而另一些却是破败不堪堆满垃圾。根据研究者调查发现了一种触发机制,一种很快能将整洁、完整的建筑变为破败的废弃物的机制。
破窗户
一扇破窗户,只要有那么一段时间不修理,就会给建筑的居民带来废弃感。很快有一扇窗户破了,人们开始乱扔垃圾、乱涂乱画,严重的结构损坏开始了,这个时候废弃感成为了现实,每个人都感受得到。
破窗理论启发了纽约和各大城市的警察部门,他们对一些轻微的按键严加处理,以防止大案的发生,这非常奏效。
所以我们不要留着破窗户(低劣的设计、错误的决策、糟糕的代码)不修,发现一个就应该修一个。
我们看到过整洁、运行良好的系统,一旦窗户开始破裂,就相当迅速的恶化。
如果你发现自己在有好些破窗户的项目里工作,会很容易产生这样的想法:“这些代码的其余部分也是垃圾,我只要照着做就行了。”项目在这之前是否一致很好,并没有任何关系。比如一辆飞起的轿车放了一星期,无人理睬,而一旦有一扇窗户被打破,数小时车上的设备就会被抢夺一空。
同样的道理,如果你发现你所在的团队和项目的代码十分漂亮——编写整洁、涉及良好并且很优雅——你就很可能会格外注意不去把它弄脏,因为你不会想成为第一个弄脏东西的人。
所以修复破窗非常非常重要,见到一个就立马修复它。
足够好的软件
- 让用户参与权衡
- 知道何时止步(编程就像画画,不要过度修饰和过于求精)
变化
温水煮青蛙的事常常发生在我们生活中,随着时间的推移,任何事都会有变化,假如我们不去发现变化、并做出改变来应对,我们其实就和青蛙没有什么区别。
- 我们要克服惰性,做变化的催化剂,用一些改变的成果(demo)给团队惊喜,和团队宣传变化后的大图景(new future),团结团队迎接变化。
- 变化更是挑战,正面迎战挑战,可以获得提高效率、提升自我的成果。
注重积累自己的知识资产
经营管理知识资产
知识是有时效性的资产
就好比一百多年前最厉害的武器 火枪大炮,在如今早已被AK、导弹所替代,更何况在当今这个每过十年都会有翻天覆地变化的时代,旧知识的价值的降低速度非常之快。
所以我们应该善于经营管理自己的知识资产,我认为更重要的是
- 新知识和旧知识并不矛盾,应该携手共进,知识是相通的。
- 培养核心学习能力。学习知识的核心,而不是只学习知识的 形。
- 培养学习习惯、终身学习。
书中的观点:
- 定期投资
- 多元化
- 管理风险;低买高卖。
最重要的是,定期为你的知识资产投资
目标
制定目标并执行是一个非常好的定期投资方式。
书中举例的目标:
- 每年至少学一种新的语言
- 每季度阅读一本技术书籍,也要阅读非技术书籍
- 学习新的思想
- 跟上技术潮流,
- 试用不同的环境、工具。
我的目标:
- 跟进社区技术发展,关注社区文章、动态
- 写一篇技术文章
- 看一本技术书籍
- 做一次技术分享
- 在技术上,给自己以新的领域的挑战
高效的获取知识
学习机会
- 解决问题
- 和厉害的人一起交流自己解决不了的问题
- 让自己无聊的时候(排队、坐车)有东西可以学,强烈推荐 pocket
谷歌、问问题
- 首先要明确自己的问题是什么
- 精确地的描述问题
- 锲而不舍、不断思考
高效的交流
- 知道你真正想要什么
- 了解你的听众,知道他想听什么,能听懂什么
- 选择好时机
- 选择风格:简短?正式?随意?详细?
- 让听众参与、做倾听者