今天看了飙高音,不免有些感慨,分享给大家。
http://www.ruanyifeng.com/blog/2008/11/finding_great_developers.html
用许多平庸的程序员取代少数优秀的程序员,这种做法的真正问题在于,不管平庸的程序员工作多长时
间,他们做出来的东西,都无法像优秀程序员做得那样好。
五个Antonio Salieris[4]也写不出莫扎特的《安魂曲》。永远也写不出,埋头写100年也没用。
五个Jim Davises——他是一点都不好笑的卡通人物加菲猫的创造者,“加菲猫”里面20%的笑话是在讲
星期一有多糟糕,剩下的笑话则是那只猫有多么喜欢意大利 面(而且这些话都被当作妙语)……哪怕五
个Jim Davises把余生都用来写喜剧,也永远写不出电视连续剧《宋飞传》(Seinfeld)中“Soup
Nazi”那一集的剧本。
Creative公司的音乐播放器Zen的开发团队即使再花上许多年,对他们那个丑陋的iPod仿制品进行美
化,也永远造不出像苹果公司的iPod 那样优美雅致、令人陶醉的播放器。他们不会对苹果公司的市场
份额,造成任何影响,因为他们的团队中没有那种神奇的设计天才。他们就是缺少设计的天赋。
一流的歌唱演员不管在什么时候,都可以很轻松地唱出高音,而平庸的歌唱演员就是永远做不到这一点。
莫扎特的歌剧《魔笛》中有一段著名的咏叹调 “Queen of the Night”,音高必须达到F6[5]才能唱
好这首歌,世界上能达到这个标准的女高音都快要绝迹了,而飙不到著名的F6,你就是不能表演“Queen
of the Night”。
软件真的与歌唱家的高音有关系吗?“可能只是某些方面吧,”你说,“不过应该同我关系不大,我为医疗
废物行业开发应收账款的用户界面。”说得不错。 我针对的是生产最终产品的公司,它们的成败完全取决
于产品的质量。如果你开发的软件,只是为了在公司内部使用,开发的目的是为了配合公司的运营,而
不是销 售,那么这种软件对你来说,可能只要够用就行了,而不需要特别优秀。
在过去的几年中,我们已经看到了非常多的优秀软件,它们是真正的高音选手,它们的音高是平庸的程
序员所无法企及的。
分享到:
相关推荐
"成为优秀程序员的 101 个技巧" 本资源为程序员提供了 101 条实用的技巧,从搜索问题答案到编写有用的注释,从承诺不足到超额交付,从寻找导师到成为导师,从适当命名变量到删除不用的代码,从学习阅读代码到建立...
### 优秀程序员所具备的几项本领 在IT行业中,成为一名优秀的程序员不仅仅意味着掌握高超的技术,还需要具备一系列软技能和个人素质。以下将详细介绍成为优秀程序员所需要的关键能力: #### 一、掌握语言与工具...
面对复杂的问题,伟大的程序员首先会花时间去深入理解问题的本质,而不是急于寻找解决方案。通过细致地分析问题并将其清晰地表达出来,无论是通过文档还是口头交流,都能帮助团队成员更好地理解问题所在,从而制定出...
### 优秀程序员必须知道的32个算法 #### 1. A* 搜索算法 - **定义**: A* 是一种图形搜索算法,用于从给定点到目标点计算出最佳路径。它结合了广度优先搜索和启发式搜索的优点。 - **特点**: - 使用启发式函数对每...
第一章“大学四年应这样度过”着重讲述了在大学期间如何为成为一名优秀的程序员做准备。它可能涵盖了基础课程的学习,如计算机科学、数据结构、算法等,以及如何通过实践项目提升编程技能。此外,这一章可能还强调了...
优秀程序员应该具备的素质和能力是多方面的,以下是对【标题】中提到的15件事的详细解读: 1. 懂得分享:在软件开发领域,开源是一种文化。优秀程序员应该支持开源项目,并在有能力的时候为其贡献力量。通过分享和...
只有这样,才能在日新月异的IT行业中保持竞争力,成为一名既懂理论又擅实践的优秀程序员。通过深入理解和实践,我们可以将所学知识转化为强大的技术武器,为软件开发领域带来更多的创新和价值。
【程序员简历模板】是针对那些想要在IT行业中寻找工作的毕业生或有一定经验的程序员设计的,目的是突出展示他们的技能、经验和项目经验,以便吸引潜在雇主的注意。以下是一份优秀的程序员简历应该包含的关键部分: ...
这份"程序员优秀简历模板.zip"包含了一份精心设计的简历模板,适用于那些希望在软件开发领域寻找工作的专业人士。模板旨在帮助求职者以清晰、专业且吸引人的方式呈现他们的技术能力、项目经验以及教育背景。 首先,...
首先,优秀程序员应具备的第一种行为是善于自我反省。在遇到问题时,他们不会立即归咎于外部因素,而是先审视自身的假设和代码,寻找可能的错误源。这种批判性思维能力有助于更快地定位和解决问题。 其次,不断学习...
从给定的文件信息中,我们可以提炼出一系列与C程序员成长相关的知识点,这些知识点对于初学者尤其具有指导意义。...希望这份成长计划能为每一位致力于成为优秀C程序员的朋友提供有益的指导和启示。
3. **持续学习能力**:作为一名优秀的Java程序员,持续学习新技术是非常重要的。可以通过提及自己在业余时间自学的新技术和工具,或是参与的开源项目等方式来体现这一点。 #### 三、团队合作与沟通能力 团队合作...
【程序员简历模板-优秀毕业生13.zip】是一个包含有针对应届毕业生的程序员简历样本的压缩文件,主要适用于那些希望在IT行业中寻找工作,尤其是刚刚走出校园的计算机科学或相关专业学生。这个压缩包中的核心文件是...
"程序员简历模板"这个资源为想要在编程领域寻找工作的求职者提供了一种高效、专业的自我展示方式。下面将详细介绍如何利用这些模板来创建一份引人注目的程序员简历。 一、基本信息 在简历的开头,你需要列出自己的...
为了成为一名优秀的JSP程序员,你需要寻找优质的教程和实践项目,如官方文档、在线课程(如Coursera、Udemy)、技术博客和Stack Overflow上的问答。同时,参与开源项目,阅读他人的代码,实践是最好的老师。 **开发...
通过不断地实践和积累经验,最终能够成长为一名优秀的JAVA程序员。 ### 总结 以上就是从给定信息中提炼出来的JAVA程序员心得要点。每一点都旨在帮助JAVA程序员们提升自我、实现职业生涯的成长。希望这些心得能够对...