程序员修炼之道阅读笔记1

第一章 注重实效的哲学

1 我的源码让猫给吃了

提供各种选择,不要寻找借口。

2 软件的熵

一句话:不以善小而不为,勿以恶小而为之.

破窗户理论:一扇破窗户给人废弃感,慢慢人们也开始不关心周围的居住环境,开始乱丢垃圾,乱抹乱画,整个社区就废弃了。

3 石头汤与煮青蛙

先出一个『石头』一样的版本,催化大家一起完善它。

不要做温水里的青蛙,随着开发的进行软件的熵可能越来越大,要留心大图景,及时做出反应。

4足够好的软件

不可能存在完美的软件,不要过分完美主义,从而去精雕细琢一些不是十分必要的细节。

其实这暗含了『敏捷开发』的核心思想,我们需要尽快的开发出『可用』的软件,交给市场来反馈,而不是想当然的开发我们认为的『完美』的软件。

5 你的知识资产

对程序员来说,知识就是所有的资产,要像管理资产那样来管理自己的知识。『定期投资』,坚持学习。『多元化』和『管理风险』,意味着不要把鸡蛋放在一个篮子里,不要只关注java的技术栈,多了解其他技术以免被淘汰。『低买高卖』,和股票一样,在技术比较低潮的时候开始学习,这样等技术流行的时候就可以步入行业顶尖,得到很大的回报。不过个人不是很认同这一点,目前新技术层出不穷,与其随时跟风学新技术,不如深入学习一些难啃的底层的东西,比如研究『算法』和读一些大部头的经典的书,选择性的学习潮流。『重新评估和平衡』,学而时习之,不亦乐乎。

6 交流

『交流』在各行各业都是十分重要的能力,尤其作为一个程序员,交流能力甚至重要过coding的能力。『知道你自己想说什么』,要逻辑清晰,表达在点。『了解你的听众』,不要一味的强灌你自己的观念,说服的前提是倾听。选择时机和风格,这个都是经验得来的。做美观的文档,让听众参与,习惯倾听,锻炼自己的邮件能力。

原文地址:https://www.cnblogs.com/Lhxxx/p/14941014.html