澳门新葡亰平台官网:无我编程的 10 条戒律

by admin on 2020年4月9日

【导读】:无我编程(Egoless
Programming)是一种编程风格,不是代码规范,旨在把代码评审中的人为因素最小化,应当在一个友好、合议方式进行,个人感情放一边,从而提高代码质量。

本文由 伯乐在线 –
tecla
翻译,Panblack
校稿。未经许可,禁止转载!
英文出处:Jeff
Atwood。欢迎加入翻译组。

来自写于1971年的《程序开发心理学(The Psychology of Computer
Programming)》,下面就是这无我编程十条诫律:

在《The Psychology of Computer Programming |
程序开发心理学》书中,温伯格首次提出了无我编程十诫。本文则是 Stack
Overflow 联合创始人 Jeff Atwood
对这十诫的注解。程序员普遍很自我(ego),都应该看看本文,时刻提醒自己。

【伯乐在线导读】:无我编程(Egoless
Programming)是一种编程风格,不是代码规范,旨在把代码评审中的人为因素最小化,应当在一个友好、合议方式进行,个人感情放一边,从而提高代码质量。

理解和接受自己会犯错误。关键是要尽早发现,在错误进入到最终产品前发现它们。幸运的是,除了我们少数几个在喷气推进实验所开发火箭导航系统的人外,在软件行业中犯错误通常不会导致灾难性事故。我们可以,也应该从错误中吸取教训,微笑,并继续前进。

澳门新葡亰平台官网 1

在《The Psychology of Computer Programming |
程序开发心理学》书中,温伯格首次提出了无我编程十诫。本文则是
Stack Overflow 联合创始人 Jeff Atwood
对这十诫的注解。程序员普遍很自我(ego),都应该看看本文,时刻提醒自己。

你不是你的代码。记住代码审查的全部目的就是去发现问题,相信问题会被我们发现。当有问题疏漏时不要自责。

1. 理解并接受这个事实:人都会犯错

澳门新葡亰平台官网 2

不管你对“空手道”有多了解,一定会有人知道的更多。如果你去问,这样的人可以告诉你一些新的招数。从别人那里寻找和接受新的知识,特别是那些你认为不需要的知识。

关键是在错误引入到产品前,尽早发现。幸运的是,在我们的行业中,除了那些在喷气推进实验室(JPL)开发火箭导航软件的人来说,大多数错误并不要命,所以我们可以并且应该从错误中学习,一笑了之然后向前看。

1. 理解并接受这个事实:人都会犯错

关键是在错误引入到产品前,尽早发现。幸运的是,在我们的行业中,除了那些在喷气推进实验室(JPL)开发火箭导航软件的人来说,大多数错误并不要命,所以我们可以并且应该从错误中学习,一笑了之然后向前看。

不要在没有讨论的情况下重写代码。在“调整代码”和“重写代码”之间有一条很细致的界限,你应该在代码审查的制度下做风格上的调整,不要独断专行。

2. 你和你的代码是两回事

2. 你和你的代码是两回事

切记,审查代码是为了找出问题,问题当然会被发现。当发现问题时,别有情绪,别往心里去。

对那些不如你的人要尊敬,礼遇,有耐心。经常跟开发人员打交道的非技术人士通常持有这样的观点:程序员凭借一技之长狂放不羁。不要让你的发怒和缺乏耐性让他们心中的这种形象加深。

切记,审查代码是为了找出问题,问题当然会被发现。当发现问题时,别有情绪,别往心里去。

3. 天外有天,人外有人

三人行必有我师焉。寻求并且接受其他人的意见,特别是当你认为不必要的时候。

这世界上唯一不变的就是变化。开放思考,面带微笑的接受它。把需求上、平台或工具里的每个改变都视作一种新的挑战,而不是把它们当作大麻烦来抵制。

3. 天外有天,人外有人

4. 不要盲目地重写代码

修改代码和重写代码,两者有明确的界限。搞清楚区别,通过代码审查,改变代码风格,而不是做一个孤独的执行者。

真正的权威来自知识,而不是职位。知识造就权威,权威带来尊敬——所以,如果你想在一个无私的环境中获得尊敬,去培养自己的知识吧。

三人行必有我师焉。寻求并且接受其他人的意见,特别是当你认为不必要的时候。

5. 以尊重、敬意、耐心对待非技术人员

经常和程序员打交道的非技术人员普遍认为程序员充其量不过是一群自负的人,还是爱哭的娇气包。不要用生气和不耐烦强化这种偏见。

为信仰奋斗,但我文雅的接受失败。要理解,有时候你的想法会被拒绝。即使你是对的,你也不要报复或说“I
told you so.”千万不要让你心爱的被抛弃的想法变成殉道者或抱怨素材。

4. 不要盲目地重写代码

6. 惟有改变方永恒

以开放的态度对待改变并用微笑接受改变。将每一次需求、平台、工具的改变看作一个新挑战,而不是一些要反对的麻烦。

不要成为“角落里的程序员。”不要成为隐藏在黑暗办公室里、只因为口渴才出现的人。藏在角落的里程序员短视、与世隔绝、不受控制。这样的人在公开的、合作的工作环境中发不出声音。参与到交流中,成为你的办公室团体中的一员。

修改代码和重写代码,两者有明确的界限。搞清楚区别,通过代码审查,改变代码风格,而不是做一个孤独的执行者。

7. 真正且唯一的权威来自知识,不是地位

知识带来权威,权威带来尊敬。所以如果想在无我的环境里获得尊敬,那么请增长知识。

批评代码而不是人——对编码人友善,但不要对代码友善。尽可能的让你的批评具有积极性,以改进代码为目标。批评要联系本地标准,编程规格文档和提高后的性能等。

5. 以尊重、敬意、耐心对待非技术人员

8. 为信仰战斗,但也要优雅地接受失败

要清楚,有时候你的想法会被否定。即使结果证明你是对的,不要报复,或者最多说几次‘我早就告诉过你’,不要让你过去的想法成为殉道者或者战斗口号。

这个十条诫律至今伴随这我。它让我成为了一名更好的程序员。

经常和程序员打交道的非技术人员普遍认为程序员充其量不过是一群自负的人,还是爱哭的娇气包。不要用生气和不耐烦强化这种偏见。

9. 不要做个死宅

不要成为一直在小黑屋里编程,只在买可乐时出现的人。这样的人不与人接触,不被重视,不受控制并且不能融入开放合作的环境。

6. 惟有改变方永恒

10. 对事不对人

要批评的是代码,不是写代码的人。尽可能让评论正面,并且只关注于提升代码。评论只涉及内部标准、编程规范、提升性能等等方面。

 

软件的人性标准是永不过时的,《The Psychology of Computer Programming |
程序开发心理学》英文版早在
1971 年出版了,正好是我出生后第二年。

1 赞 6 收藏
评论

以开放的态度对待改变并用微笑接受改变。将每一次需求、平台、工具的改变看作一个新挑战,而不是一些要反对的麻烦。

关于作者:tecla

澳门新葡亰平台官网 3

喜欢逻辑,虽然不是很精通,喜欢英语,虽然不是都能完全理解。不是聪明人,但是希望能成为快乐的奋斗人。

个人主页 ·
我的文章 ·
10 ·
   

7. 真正且唯一的权威来自知识,不是地位

知识带来权威,权威带来尊敬。所以如果想在无我的环境里获得尊敬,那么请增长知识。

8. 为信仰战斗,但也要优雅地接受失败

要清楚,有时候你的想法会被否定。即使结果证明你是对的,不要报复,或者最多说几次‘我早就告诉过你’,不要让你过去的想法成为殉道者或者战斗口号。

9. 不要做个死宅

不要成为一直在小黑屋里编程,只在买可乐时出现的人。这样的人不与人接触,不被重视,不受控制并且不能融入开放合作的环境。

10. 对事不对人

要批评的是代码,不是写代码的人。尽可能让评论正面,并且只关注于提升代码。评论只涉及内部标准、编程规范、提升性能等等方面。

软件的人性标准是永不过时的,《The Psychology of Computer Programming |
程序开发心理学》英文版早在 1971 年出版了,正好是我出生后第二年。

稿源:伯乐在线

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图