为什么不给程序员配好电脑 [翻译]
有人抱怨很多“技术公司”愿意给程序员数百元的小时工资,却不肯给程序员配价值上万的好电脑。开发人员只能使用和哪些只用用Office软件,浏览网页的工作人员一样的烂PC,导致程序员在编译等情况下只能做漫长的等待,而这些等待的时间足够买很多好电脑,于是在网上发布信息咨询这个问题。有人如下回复这个问题:
很多公司在这一点上脑子是毫无疑问地坏掉了。
真的,如果你咨询一万个技术经理,“假如你花一亿来聘请了迈克尔·舒马赫,你认为他可以骑自行车赢得F1比赛吗?”,应该没有一个人会回答“是”。然而就是同样的这批人却认为高薪聘请的程序员可以在糟糕的办公环境里,使用垃圾工具编码的速度和质量,是能够和在舒适环境下使用高配电脑的编码有的一拼的。当然啦,给了那些“懒惰的”“不可理喻的”程序员开了那么高的工资,理所当然的他们可以,也应该把”自行车”骑得更快些。
不过话说过来,好工具也要根据具体需要做的工作来确定,比如写Linux内核的人对硬件的要求肯定和网页设计人员不一样。但是对于公司来说,只要出得起钱,不给自己的员工配能够尽量提高她们生产率的硬件实在是不可理喻。
有人曾经在一家有9G源代码(C语言为主)的公司工作,在这家公司工作中碰到的最让人烦恼的事情(没有之一)就是编译速度。但更不幸的是,大多数员工还都在使用5年前标配的计算机工作,导致没有人愿意和当年一样频繁编译,这样就导致了生产率低下,系统也有较多的质量问题和大量的编译失败。虽然这家公司有足够的钱为员工更换更好的设备,但坚持地不肯这么做。去年夏天由于多次没能如期交付软件,他们最大的两个客户不再跟他们继续合作,造成了超过上亿的损失,公司只能关门了事。公司曾经问大家如何才能增加效率,有人提出了这个建议并作了投资回报分析,但却管理层以“你的分析肯定有问题, -我们可没有那么笨呃”为由拒绝了。
另外还有一家公司给程序员提供了不错的电脑,却坚持要打架都必须要在一个没有做任何分割,所有人挤在一个的大牛棚,每个人只能在超级迷你的小桌子上工作。这样导致了很多问题,因为这家企业的很多员工都是做硬件原型,这些原形都很脆弱。由于只有很小的地方来放置这些原型,人们来回走动的时候很容易挂到它们,有时候甚至会把他们碰到地上去。最终他们浪费了VC近5千万美元的投资却连个屁也没有搞出来。
当然也不是说这些公司垮掉的原因只是这些烂工具和嘈杂的工作环境,但是还是要强调付给员工高薪就期望他们可以有高效的有效产出。不给员工合适的工具无疑是缘木求鱼,这种做法最终会导致公司在竞争中含恨离场。
一般而言,影响程序员效率的第一杀手就是打扰,其次就是缓慢的编译。比如经常有程序员抱怨说点了”编译并调试”后,由于编译需要5分钟才能完成,此时程序员就设个闹钟然后去做其他事情了,比如去倒杯咖啡或者阅读一些其他材料比如本文,等到闹钟响了才回来开始做测试,当然有些时候会过更长的时间才会回来。然而在员工被迫用这样的方式来无意义的消耗时间,公司仍然需要按照正常工作来付薪酬。无论是对员工还是公司来说,把这笔钱花到硬件要有意义的多。但人的本性如此,对于老板们来说每个人都能够像超人一样有自空能力,大家还是承认并接受这一点吧。
翻译自 stackexchange链接