狼是自然界中真正的掠食者,而哈士奇不过是人类的玩物。两者长得确实很像,就如同IT界的Programmer和Coder。如果用狼和哈士奇来隐喻这两种职业,Programmer无疑是软件业真正的狼。
狼和哈士奇
| 哈士奇的习性 | 狼的习性 |
|---|---|
| 他们写出机器可以理解的代码 | 他们写出人可以读懂的代码 |
| 他们的代码依靠注释读懂 | 他们的代码风格统一并具有自描述性 |
| 他们只在工作时间写代码 | 他们不仅在工作时间,在业余时间也会写代码 |
| 他们不喜欢看书,但偶尔会看看视频 | 他们会看大量的书籍,阅读大量技术资料,当然也会看视频 |
| 他们只会阅读别人的博客,自己从来不写 | 他们不仅阅读别人的博客,他们自己也会写博客,他们认为分享知识是快乐的 |
| 他们关注的仅仅是进度 | 他们不仅关注进度而且更关注代码的质量,提供现实的进度方案,在上司面前坚持自己的意见 |
| 他们仅仅是复制代码 | 他们复用代码而不是复制代码 |
| 遇到问题他们会直接问同伴 | 遇到问题他们会尝试自己解决,访问社区,然后才会询问同伴 |
| 他们总是认为自己会的很多,喜欢用海量的“精通”来装点自己的简历,假装高手 | 他们总是认为自己还能做的更好,并对那些巨人由衷地敬佩,在不是高手时不假装高手 |
| 他们每天沉寂在C+V的死循环中,并不断地抱怨需求变更 | 他们经常在思索如何能够解耦,用灵动的设计应对突然到来的变更 |
| 他们会因为学会了某种代码的写法,而骄傲自满 | 当掌握某种代码的写法,他们看到的往往是背后深层次的问题,并向专业水准看齐 |
| 他们一边在被动地接受需求,一边在抱怨不合理的需求 | 他们会对不合理的需求说不,并在工作中尝试影响他们的领导 |
| 他们不会检查自己的代码,在测试暴露缺陷之前,他们往往难以发现 | 他们会经常重构自己的代码,并维护自己的缺陷核对表 |
| 他们不认为自己要为代码质量负责,那应该是管理者和测试的事情 | 他们认为提高代码质量是自己的责任,并为自己的过失而负责 |
| 他们在拿到任务后会直接开始工作 | 他们在拿到任务后,会在行动之前,进行分析和计划,而不是马上编码 |
| 他们往往具有文档恐惧症 | 他们往往会认真阅读项目文档 |
| 他们并不崇拜专业人士 | 他们和希望提高软件开发技能的人为伍,参加交流会,加入某个社区参与技术讨论 |
| 他们擅长推卸责任 | 他们敢于承认错误 |
| 他们对编译警告弃之不理 | 他们将警告与错误同等对待 |
| 他们只是在写可以运行的程序 | 他们在构建自己彻底理解的程序 |
| 他们会拖延不喜欢的任务 | 他们将不喜欢的任务认为是对自身的磨砺 |
| 他们更容易放弃自己的设计 | 他们往往坚持自己的设计 |
| 他们的编程往往止步于编码的表象 | 他们的编程往往深入语言,触及思想 |
做狼还是哈士奇
狼和哈士奇的隐喻意味着Coder难以在技术实战中战胜Programmer,但现实是,往往Coder更受欢迎,如同哈士奇更讨人喜欢一样。原因很简单,
Programmer在众多Coder之中显得格格不入。Programmer能更快更高效地完成任务,他们讨厌加班,抵制低效的流程,他们对自己的能力深信不疑,并经常坚持自己的意见,对不合理的需求说不。这些,在雇主的眼里就是叛逆。而Coder就低调很多,他们甘于加班,对设计没有意见,不会对需求说不,出了问题他们总在说,这是别人的问题。他们两者的代码,在外行看来没有差别。在雇主眼中,往往那些闭嘴加班的员工更应该重用。
也许,Programmer们并不想让自己被孤立,但现实却是残酷的。人们缺少包容,善意的提醒,也可能会被认为是卖弄,是对权威的挑战。狼只有在狼群中,才能得到自身的认同感。软件的构建者是Programmer而不是Coder。如果你是一匹狼,而你有感受不到团队的认同感,那你不妨换一换环境,因为,和臭棋篓子下棋,永远无法进步。
如果你是位开明的领导者,当你读到这篇文章时,我真切地希望你能留意那些“带刺”的员工,因为很可能,他比你团队中的其他人都看的更远。
如果你是名程序员,那么请你选择到底是做狼还是哈士奇。狼可能没有安稳的生活,没有丰盛的午餐,但却拥有强大的力量,自由,以及尊严。
转自 http://www.cnblogs.com/MeteorSeed/archive/2012/08/04/2621993.html
本文通过狼和哈士奇的对比,隐喻了Programmer与Coder两种程序员的不同特质。前者追求高质量代码与技术创新,后者则更倾向于完成任务。尽管Programmer在技术上更为优秀,但在职场中却可能因个性而遭受排斥。
1272

被折叠的 条评论
为什么被折叠?



