100分程序员的8个习惯

转载 2015年11月18日 09:50:02

这篇文章其实来自于后台粉丝的一个问题:“在程序员的职业生涯初期,哪些习惯是应该从一开始就养成并保持住的?”


我不是最适合回答这个问题的人,但是作为一个技术出身的媒体人,有义务提供自己的答案。经历了7年的技术生涯,后来作为媒体人又有机会接触到各种顶尖的技术大牛,我觉得这些习惯是值得养成的:


慎于说Yes


在没有搞清楚开发需求、任务工作量、团队期望值之前,100分的程序员不会轻易答应。特别是对于新人来说,比较急于表现自己,对于同事或者老板的工作安排来者不拒,精神可嘉,方法不可取。承诺太多,会出现自己无法按时完成的情况,即使按时完成,也可能没有达到别人的期望值,长期以往别人对你的失望会越来越多。所以推荐的做法是在接受任务时,多问几个为什么,哪怕招人烦也问题不大,把要做的事情弄清楚,和同事和领导多交流明白,之后再说Yes也不迟。


敢于说No


看起来和第一条雷同,其实细究起来不一样。第二条执行起来比第一条难得多。当遇到明显不合理的要求时,可以考虑拒绝,前提是准备好了全面充分的理由。不要经常说No,但是一旦说了,就要切中要害。100分的程序员不会闷头干活,知道自己的定位和团队期望,分清楚哪些是不合理的要求,哪些是合理的要求,然后把明显不合理的要求和领导沟通下,取得支持。


构建自己的知识体系


在信息爆炸的年代,碎片化的知识很多,系统学习的时间越来越少,如果没有自己的知识体系,很容易被淹没在知识的海洋中,而且难以记忆。100分程序员推荐的做法,通过Wiki或者其他知识管理工具构建一个知识框架,大的分类可以包括软技能、架构、语言、前端、后端等,小的分类可以更细化。每周定期把脑海中的东西梳理到管理工具中,让大脑卸下负担,只记住框架、大的分类和关键点,这样可以继续吸收新的知识。工作中的收获不断填充上去,慢慢就形成知识体系了。


培养大局观


程序员比较容易陷入的困境是专注于自己的一亩三分地,不关心团队的进度和业绩,也不关心软件的整体架构和其他模块。这种状态长期下去没有好处,特别是在大公司中,逐渐成长为一颗螺丝钉。100分程序员会在工作之余,多看看其他在做什么,看看团队的整体规划,看看软件系统的架构和说明文档。对自己的工作更理解,而且知道为什么这个产品应该这样设计,为什么领导应该这样做规划,这种大局观非常有利于自己的职业生涯。


代码规范


程序员在新手时期需要培养良好的代码规范。最直接的办法,遵循公司已有的代码规范(如果没有类似的规定,也是醉了),从简单的变量命名到模块划分,有些规则可以导入到编码工具中,更多的部分需要自己体会和遵守。关于此方面的知识,最权威的书籍是《代码大全》,别误会,书名是个美丽的错误,里面不是代码集锦。对于新手来说,养成一个统一的编码风格非常重要,是基础一步。不要把重点放在哪个代码规范更好的争论上,肯定是各有利弊,选定一个遵循即可。


代码审查


把这个单独拎出来说,是因为对于程序员来说很重要。很多快速成长的公司没有这个步骤,建议大家能够坚持下来。让别人审查自己的代码,可以得到更多的反馈,也是和同事交流的好机会;审查别人的代码,可以借鉴别人的经验和思路。通常情况下,代码审查比自己写代码的收获更大,对于新手来说更有价值。只要你想做,不论形式是不是正规,都可以执行下去,最好形成团队的习惯。


学习业务知识


作为100分的程序员,除了精通开发知识,还应该了解业务知识。很多情况下,来自于业务部门的需求是不清楚的,了解业务知识的程序员可以更好地和业务部门交流,而且从业务和技术角度两方面来考虑问题,可以对产品有更好的设计和架构,并可以树立自己在团队中的地位。学习业务知识,可以从基本的内容开始,先了解与自己工作相关的内容,然后逐渐拓展到其他部门,应该对整个业务领域有一个了解。这就是为什么有些领域的公司研发部门在招聘程序员要求具备对应专业的资格证书。


坚持


任何习惯的养成都需要坚持,理论说的再花哨没有实践也是白搭,三分钟热血的事情太常见,好的建议很多,坚持个几项下去就可以受益良多,所以100分的程序员不是最聪明的那批人,而是具有好习惯最多的人。


最后的最后说一句,学无止境,100分的程序员和90分的程序员区别大吗?100分的程序员之所以得100分是因为满分只有100分,而90分的程序员是真实的水平反映。


[转载]100分程序员的8个习惯

100分程序员的8个习惯 作者 崔康 发布于 2015年8月3日 |          http://www.infoq.com/cn/news/2015/08/best-coder-experi...
  • red_sirius
  • red_sirius
  • 2015年08月04日 16:38
  • 80

100分程序员的8个习惯

慎于说Yes 在没有搞清楚开发需求、任务工作量、团队期望值之前,100分的程序员不会轻易答应。特别是对于新人来说,比较急于表现自己,对于同事或者老板的工作安排来者不拒,精神可嘉,方法不可取。承诺...
  • wzk456
  • wzk456
  • 2015年08月04日 19:24
  • 274

学习笔记之《高效程序员的45个习惯》

有本关于敏捷开发方面的书非常不错《高效程序员的45个习惯-敏捷开发修炼之道》,Venkat Subramaniam和Andy Hunt著,该书简短、易读、精炼、深入,深刻且实用。对于想要采用敏捷方法的...
  • Jerry_1126
  • Jerry_1126
  • 2015年04月25日 21:29
  • 2447

优秀程序员所具备的7个好习惯

当我们被采访的时候,常常会问及这样一个问题——一个伟大的程序员需要具备哪些特质。大多数人回答的是逻辑、机智、耐心以及勤奋。对于这个问题,其实并没有标准答案,但是除了这些特质,习惯也是非常重要的因素。而...
  • hephec
  • hephec
  • 2014年10月24日 09:50
  • 572

优秀程序员的良好的学习方式,特征,生活和学习的习惯

优秀程序员的良好的学习方式,特征,生活和学习的习惯
  • txl16211
  • txl16211
  • 2015年01月07日 19:50
  • 1401

『高效程序员的45个习惯:敏捷开发修炼之道』读书笔记

这是我近些日子的读书笔记。 电子书见:http://www.amazon.cn/mn/detailApp?asin=B00ALPRKJ8&tag=baiduiclickcn-23&ref=p...
  • sharetop
  • sharetop
  • 2014年10月20日 15:46
  • 1221

程序员,你是否有编写软件工程文档的习惯?

          针对大多数程序员没有编写软件工程文档的习惯,专门写了一篇阐明软件工程文档重要性的文章,里面所有实例都是本人所在公司曾经发生的事情,事实上里面所提到的现象在软件工程相关领域里面都有专...
  • ITuring
  • ITuring
  • 2007年05月06日 22:02
  • 2124

成功程序员的8个习惯

对成功的渴望或许是我们与生俱来写在基因里的一部分。成功会让人幸福,并且几乎每个人都在争取幸福。当我们感到幸福的时候,我们大脑中的化学物质会迸发积极的情感,激励我们获取更多的成功。 成功的职业生涯通常是...
  • tangzenglei
  • tangzenglei
  • 2016年02月03日 10:16
  • 538

程序员应该具备的十个代码习惯

程序员是一群艺术家,用代码创作项目,向用户展示流畅而友善的体验。 程序员境界:烂、低调、业余、普通、胜任、知名、成功、不朽,这是八个等级。 前几种不需要讲,工作中不会碰到,公司招聘也只会从普通程序员开...
  • liuxian13183
  • liuxian13183
  • 2015年05月14日 10:44
  • 5285

优秀程序员的习惯

作为一个优秀的程序员,我简单跟大家分享下我的心得: 1.时间观念 每个人都不喜欢别人迟到,公司更是如此,没有那个领导喜欢爱迟到的员工。作为程序员,有时不得不为了完成当天的工作而加班...
  • xiaochao199404
  • xiaochao199404
  • 2016年09月22日 20:55
  • 129
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:100分程序员的8个习惯
举报原因:
原因补充:

(最多只允许输入30个字)