也许你已经知道了,咱们正在招聘最优秀的程序员。不错,每一个人都这样说。可是咱们的程序员能战胜大家的——任什么时候候。好比,米奇虽然只有5英尺高,但他是一个有至关实力的击剑手。维托尔德之前是一个6’3″的职业冰球选手。内特喜欢以丢匕首为乐。固然,他们都是颇有水平的程序员。程序员
发现这些人才,并非你好好上班就能完成的事。事实上,我生活的一半时间都花在了上面,而丽莎差很少投入了她所有的时间。咱们有一支招聘大军,搜遍世界任何一个角落,没有一份简历漏掉。总共算起来,咱们有大量的简历。不少咱们根本不看,由于简历——说实话——彻底没有价值。相反,咱们把全部的重点都放在了几个关键问题上,咱们会问全部的应聘者,每一个问题的主旨都是要揭示一个关键信息:这是咱们真的想要的人吗?编程
你知道,经验是廉价的。只要有时间,你就能有经验。技术本领难求,但事实上只要你努力就能获得——不少人都能作到。可是态度就不同了。你要么有,要么没有。咱们要找的是对编程有热情的人,他们离不开编程。他们大可能是大学以前——有些是中学以前——就开始编程了,并且一开始就停不下来。他们开发各类程序,从汇编到jQuery,从我的电脑到移动手机,从复杂的底层计算图形到高端的社交网络。他们各个领域无所不至。无所不至,可是,不包括.NET。服务器
让我来解释一下——.NET是一个很不错的语言。它很新潮,很独特,各类花哨的东西应有尽有。若是你要是开发Windows Mobile 7应用(统计数据显示你应该不是),它应该是你的不二选择。选择.NET也是一种选择,若是有谁要作这样的选择,我不会阻止,但要问一声“为何?”网络
不要误解个人意思:.NET在你的简历上并不意味着一个大红叉。但在电话筛选中的确会引发个人疑问,其中的理由让咱们用个开心的比喻来解释:架构
用.NET进行编程就像是在麦当劳作烹饪。那里有全套神奇的设备可以自动的造出全部的东西。只有你按一下正确的按钮,跟着提示灯的指示,你就能够批量的制造出天衣无缝的1.6盎司的汉堡,比地球上的任何其余人都要快。app
然而,若是你想作出一个1. 7盎司的汉堡,很抱歉,你作不到。很简单,没有这样的按钮。馅饼是预先作成了那样的尺寸。它们作出来以后就被冷冻,全部你没法把它们揉到一块儿作成其它尺寸,解冻机和烹饪机是一体的,你没有办法在它们之间进行拦截。麦当劳的厨房产出的食品精确的和麦当劳的菜单保持一致的——这种模式使你的大脑不须要任何的思考。但是,它不能偏离菜单,对烹饪机器的任何你妄想的压挤变形都会致使它中止工做,而被送回返厂维修。less
然而,咱们要找的是另一种人。一种可以用削尖的树棍在野外篝火上烧烤松鼠的人——那是在深山老林里为了生存而捕捉并剥了皮的松鼠。咱们不须要快餐店厨师长,咱们要的是由野狼带入文明社会的《蝇王(Lord of the Flies)》,在堆满铜钱底壶和精选香料的法国厨房里喂养大的人。咱们要的人不只仅能作汉堡,他要可以从无到有作出任何东西。工具
你也看见了,微软是特地这么作的(并且很是成功)。.NET要跟其它全部东西都表现出尽量的不一样,让程序员们远离细节,这样就致使他们彻底完全的依赖微软神奇的编程工具套件,让这些工具替他们思考。微软早在舞台上只有他一个演员时就这样作,明确的使这些东西要么很难移植到非Windows平台,要么看起来很难实现,以此来保持他的垄断地位。开发工具
这种作法——或者这种对立的思惟——致使了无数的分歧。小的方面,好比在文件路径中使用反斜杠,而不是像其它经典系统中使用正斜杠,或在DirectX中使用左旋坐标系统,而不是使用自从计算机诞生以来就采用的右旋坐标系统。大的方面,好比经过无数的分层把网络架构搞的晦涩难解,令人们很难想象出字节在网络中如何传输的。还有成百上千这样的事情:他们的开发工具在你没有写任何代码前就先生成了一大堆复杂的文件,笨重的服务器上原本对于任何人只须要敲几下键盘的操做却非要启动一个远程的GUI终端,那是一个对开源许可协议过敏的编程文化。这样的事情举不胜举。spa
这些并不会让你成为一个“差程序员”。若是你只想尽快的作出一个1.6盎司的汉堡,把余生奉献到无尽的系列菜单上,那全部的这些特立独行对你来讲不会有任何影响。可是,天天你在那种厨房里的日子并非真正的厨房生活,学不到如何作真正的食物,写不出真正的代码。
更糟糕的是,在微软厨房里学一天的东西须要两天去忘记,我是说,一旦你问心无愧的走上了.NET的事业道路,你很难再走回头路。由于你被深深的桎梏到了这些工具和技术里,而这些工具和技术跟.NET以外的东西绝不相干,这样一来,对于一个创业公司来讲,你实际上没有什么价值,你的这些年就如南柯一梦。
那么,这篇文章是要告诉你什么?两个事情:
这些听起来很刺耳,但倒是事实。有时候咱们只有松鼠能够吃,咱们须要能把它作出好的味道。