程序员修炼之道
第一章
注重时效的哲学
1.责任感
不要害怕承认自己工作中所犯的错误,如延期,bug。不要拒绝承认需要别人的帮助
2.破窗效应
如果一个房屋,有一扇窗户破损,那么整栋房屋都会给人一种废弃感;
同理,完好的汽车停放在路边,不会有人去破坏,如果它的窗户是坏掉的,那么很快就会被人破坏殆尽。
代码中出现的设计不合理,代码不规范等情况,要及时的去修复;就算没时间修复,也应该及时的放上TODO。
熵是指无序的状态,如果软件中熵值越高,越容易滋生软件腐败。
3.石头汤与煮青蛙
一队士兵经过战乱的村庄,无法获得食物,他们就开始用锅煮石头,村民很好奇,问就煮石头吗?士兵回答,如果有点胡萝卜就更好了。于是有村民提供了胡萝卜;加完胡萝卜就好了吗?士兵回答,如果再加点土豆就更好了。于是有村民提供了土豆….
- 我们要做催化剂,去促使项目的开展,然后不断的完善
- 我们在做我们自己的事情时,也需要观察周围环境。避免成为温水里的青蛙
4.足够好的软件
今天了不起的软件 远胜于 明天完美的软件
用户可以使用毛毛草草的软件,也不愿意等上一年使用一个完美的软件。事实上发布一个软件,倾听用户的反馈,更适合
- 让用户的反馈指导软件的进步
- 编程如同绘画,应该知道何时止步。过分的修饰或追求完美是不可取的
5.知识资产
知识的投资总能得到最好的回报
- 定时投资你的知识;
- 多元化的投资,及时的了解行业的动态,知道新的方向;
- 管理风险,不要把知识的鸡蛋放在同一个篮子里;
定期阅读专业书籍;
定期学习一门新的语言;
定期阅读一本非专业书籍;
遇到问题,找出答案或者找到能找出答案的人。不要搁置问题
学会去请教大牛!
- 知道自己想要请教什么问题;
- 小心组织语言;
- 判断请教时机;
- 注意请教语气,是请教问题,而不是要求对方回答;
- 耐心等候答复;
6.学会交流
你说什么和你怎么说同样重要
1. 知道自己想要说什么?当自己要介绍一些东西的时候,先自己讲一遍,然后询问自己是否讲清楚了;
2. 了解听众,明白自己跟谁讲。你想让他们学到什么?他们对你讲的什么感兴趣?他们有多少经验?他们想要多少细节?你想要谁拥有这些信息?如何促使他们听你说话?
3. 选择合适的风格。有人习惯严谨的书面报告,有人喜欢轻松的对话交谈。选择合适的风格,反馈也是一种交流;
4. 文档的美观很重要,程序员大多不重视文档,然而文档也是程序员反映工作能力的一种方式;
5. 让听众参与。单方面的讲话不是交流。鼓励听众提问,让会议或者报告变成对话;
6. 做倾听者;
7. 回复他人。我们讨厌被忽视,所以也不要忽视他人,如果时间紧张,也可以告诉他们稍后回复。