【51CTO经典译文】“人族”程序员
吃苦耐劳型,“人族”程序员的个人能力并不是很强,但是他们的能力足以完成各种工作了。他们的代码既不迷人,也不优雅,但是这些代码可以完成任务,并且工作得也还可以。他们可以使用公司能够驾驭的任何工具。
坚韧不拔的人族程序员
通常,在一个创业型的公司中,一个人族的程序员可以发展的很好,或者也可能会成为一个技术方面的领导者。37 signals就是一个以人族程序员为主的公司。
“虫族”程序员
对于一个公司来说,“虫族”程序员是十分重要的。他们需要使用他们熟悉的IDE(也就是说,他们需要“虫族”的土地)。管理层必须要聘请足够多的虫族程序员才能按时交付产品,即使对于最基础的产品来说,情况也是如此的,但是他们可以聘请一大堆虫族程序员来解决扩展的问题。他们依赖于他们的“女皇”。
Visual Studio与Oracle是虫族程序员的好伙伴
《Visual Studio进化史》让你更了解微软Visual Studio的物种起源。
在公司这个“大机器”中,作为一个“小齿轮”,一个“虫族”程序员可以很好地发挥作用,他们更喜欢使用微软或Oracle的产品。大多数离岸外包公司都是一个以“虫族”程序员为主的公司。
“神族”程序员
高级的数学知识是“神族”程序员的主要工具;这极大低限制了他们的数量。他们可以使用像Lisp或ML那样的语言开发出令人叹为观止的产品。
51CTO延伸阅读:《2010年12月编程语言排行榜:触摸经典语言化石之Lisp》
ML是一个通用的函数式编程语言,它是由爱丁堡大学的Robin Milner及他人在二十世纪七十年代晚期开发的。它的语法是从ISWIM得到的灵感。作为元语言的ML是为了帮助在LCF定理证明机中寻找证明策略而构想出来的。(之前的元语言是pplambda,它联合了一阶逻辑演算、多态及Λ演算)。它使用了Hindley-Milner类型推论算法来推测大多数值的类型,而不需要四处使用注解。
神族程序员的起源(陈景润与华罗庚)
在“神族”程序员成熟到到具有创办一个公司的远见卓识之前,他们会一直呆在学术界,例如,Google的PageRank就是一个“神族”程序员的远见卓识,他一手创办了Google公司,因此,Google公司是一个以“神族”程序员为主的公司。
寓意
如果你创建了一个公司,那么你必须要聘请员工来做事。你必须找的合适的人,把他们放到合适的工作岗位上,这样的话,公司才能作为一个整体运营下去。
在一个公司中,每种类型的程序员都有他们的优点和缺点,我们的目标是利用这些优缺点,调整公司的组织结构,让大家可以高效率地在一起工作。
如果我们忽略掉了他们之间的区别,或者对他们之间的区别存在错误的认识,那么我们会丧失他们可以在一起工作的可能性,这样的话,就无法做出真正伟大的产品了。
原文标题:3 Types of Programmers: Zerg, Terran, Protoss
【编辑推荐】