专栏首页Java学习网不朽经典,无我编程的十大戒律

不朽经典,无我编程的十大戒律

  无我编程的十大戒律最早出现在 1971 年 Gerald Weinberg 出版的《 程序开发心理学 》里。后由 Stack Overflow 网站的联合创始人 Jeff Atwood 在博客中整理列出。虽然过去了几十年,但这些经典原则仍值得每一位程序员拜读。

  1、理解并接受自己会犯错的事实 – 犯错无法避免,关键要在错误进入生成环境前及时找出。幸好除了一小部分需要在 JPL(喷气推进实验室)开发火箭指导软件的程序员外,大部分程序员都不会因错误招致生命危险。所以我们要从错误中学习,改过并继续前行。

  2、公正地处理代码 – 要记住,代码审查是为了找出问题,并且最终一定会发现问题所在。不要因为代码中的某一错误而对人产生偏见。

  3、山外有山,人外有人 – 不管你怀揣了多少“秘笈”,都不要低估了别人的水平。只要你愿意开口请教,一定会有人教你你所不知道的东西。当你认为某件事没有必要做的时候,不凡问问他人的建议。

  4、不在没有协商的情况下重写代码 – “修复代码”和“重写代码”有明显的区别。要了解它们之间的差异,并在代码审查的框架内进行程式化的变更,而不是孤军奋战。

  5、尊重求教者,并耐心待之 – 与技术人员打过交道的非技术人员通常会认为:这些专业人士虽技术知识过硬,但妄自尊大。因此,我们要用耐心和谦和来消除他们对技术人员的误解。

  6、世界唯一的不变就是改变 – 对世界敞开胸怀,微笑着拥抱变化。把每次需求、平台或者工具的变化看做是一次挑战,而不是一堆麻烦。

  7、真正的权威来源于才能,而非职位 – 知识造就权威,权威带来尊重。所以,如果你想在一个无我的环境中得到尊重,先积累知识吧。

  8、坚定自己的立场,优雅地面对挫折 – 你的想法有时候会被推翻。即使你能证明它是对的,也不用试图报复反对它的人,不要大声嚷嚷:“我早就说过……”。不要把被推翻的想法看做是牺牲品,也不要把它当初战败的哀嚎。

  9、不要封闭自己 – 不要成为一个在小黑屋写代码的人,只在买可乐的时候才出来一下。这样你会失去与外界的联系,淡出人们的视线,失去控制。在开放的协作环境里,你会失去自己的位置。

  10、对“码”不对人 – 批评代码,而不是编码的人。尽可能的让你的言论积极向上,带动代码质量的提升。多多谈及局部标准、程序规范和更好的性能等。

本文分享自微信公众号 - Java学习网(javalearns),作者:javalearns

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-06-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 顶尖程序员不同于常人的5个区别

    顶尖程序员不同于常人的5个区别 《The Effective Engineer》的作者在写书的过程中,为了了解那些顶级程序员和普通程序员的区别,采访了很多硅谷顶...

    用户1289394
  • 如何成为一个伟大的前端工程师

    如何成为一个伟大的前端工程师 最近,我的一个博客读者给我发了一封电子邮件。内容是: 你好,请问如何才能成为一个伟大的前端工程师? 你有什么好的建议吗? 这让我不...

    用户1289394
  • 优秀程序员是如何处理糟糕代码的

    优秀程序员是如何处理糟糕代码的 可能你一行不好的代码也从来没有写过。这是有可能的,但在现实中又不太可能。 现实情况是,和这个星球上的其他所有程序员一样,你会产出...

    用户1289394
  • 如何提高代码的可读性? - 读《编写可读代码的艺术》

    很多同行在编写代码的时候往往只关注一些宏观上的主题:架构,设计模式,数据结构等等,却忽视了一些更细节上的点:比如变量如何命名与使用,控制流的设计,以及注释的写法...

    用户2932962
  • 自建 GitLab 似乎很简单?这些坑也许你不知道

    码云Gitee
  • 写了 100 万行代码的程序员身上发生了什么故事

    看完之后就头皮一阵发麻,让我写一万行的代码?!are you kidding me?(黑人问号脸)我估计写到20万的时候就会突然有个疑问—-“咦?我的头发呢?”

    哲洛不闹
  • 为什么大公司还在用过时的技术?

    本文出自一朋友给我的提问,于是博主呕心沥血给他花式洗脑了几个小时。忽然发现,应该还有许多朋友有同样的疑问。所以整理成文。

    Java技术栈
  • 2018-07-19 如何重构“箭头型”代码如何重构“箭头型”代码

    原文地址:https://coolshell.cn/articles/17757.html

    Albert陈凯
  • 聊聊clean code

    clean code,顾名思义就是整洁的代码,或者说清晰、漂亮的代码,相信大多数工程师都希望自己能写出这样的代码。 也许这是个千人千面的话题,每个工程师都有自己...

    美团技术团队
  • 是什么拉开了前端开发工程师之间的技术差距?

    假设所有的前端程序员的技术水平都是0,二三年之后必然会有一些人水平拨尖。那么是什么造成了他们之间的区别呢?就学习态度来讲,好像许多水平平庸的程序员,他们也是经常...

    web前端教室

扫码关注云+社区

领取腾讯云代金券