【书摘】开源软件行业不一样的公平报酬
2013-11-11 15:19 开源 软件 行业

自由软件和开源软件的成功,让经济学家非常难堪。主要通过志愿者完成的软件,怎么会比付费的开发人员写出来的软件还好呢?更加不可思议的是,这些志愿者不将代码据为己有,也不收取任何费用。由于这太令人难以置信了,以至于“为什么每个人都将他们的时间和能力贡献给了协作型网上项目”已成为很多领域的研究课题。研究工作始于经济学领域,后来又扩展到计算机科学、加工工程和人类学等众多学科领域。调查及其他研究工作一次次给出的答案,与我们到目前为止所讨论过的社区、公平、互惠和遵守行为规范等内在动机完全一致。

编辑:杨硕

【i黑马导读】自由软件和开源软件的成功,让经济学家非常难堪。主要通过志愿者完成的软件,怎么会比付费的开发人员写出来的软件还好呢?更加不可思议的是,这些志愿者不将代码据为己有,也不收取任何费用。由于这太令人难以置信了,以至于“为什么每个人都将他们的时间和能力贡献给了协作型网上项目”已成为很多领域的研究课题。研究工作始于经济学领域,后来又扩展到计算机科学、加工工程和人类学等众多学科领域。调查及其他研究工作一次次给出的答案,与我们到目前为止所讨论过的社区、公平、互惠和遵守行为规范等内在动机完全一致。

 


在一项经典研究工作中,卡里姆 ·拉哈尼( Karim Lakhani)和罗伯特 ·沃尔夫( Robert Wolf)发现,参与开源软件开发的最普遍的原因(有 44%的回答者选择),就是这项工作提供的智力激发( intellectual stimulation)乐趣。第二重要的原因,是提高自己的技能。另外一个广泛报道的动机更具有规范性——三分之一的开发者认为“源代码应该公开”。换句话说,他们参与的动机,仅仅是他们认为这样做是对的。有 28%的回答者说,是回馈社区的责任感,因为社区已经给他们提供了如此强大的工具。团结和群体认同也起着很大的作用:高达 80%的回答者将自由软件黑客社区( hacker community)描述成他们的认同感的主要来源; 20%的回答者说,他们的积极性来自于团队合作。

人们奉献他们的时间和努力,因为他们觉得这样做是对的,因为他们觉得奉献是公平的,因为这样做增强了他们的认同感和社区感,或者更简单地说,因为很有趣。但是,让我们暂时回到“卡尔 –本科勒”赌注上来。如果你往“混合饲料”中加一些报酬,会发生什么事情呢?它会挤出这些社会和情感动机吗?或者,它会让最好的人才放下他们的志愿者工作,转向有报酬的地方吗?

在欧洲和美国,大约一半的开源项目贡献者报告说,他们的工作是有偿的,而且这一数字仍在增加。 Linux基金会 2008年发表的报告称, Linux 内核(差不多是最好的开源工具之一)上 70%的工作,是由付费程序员完成的。这是否意味着挤出理论是假的?该怎样解释我们对公平的永恒期望呢?为什么这些没有报酬的人,在知道别人的工作是有报酬的情况下,仍继续做无报酬的工作呢?弄清楚这两个问题,有助于我们理解怎样在不将社会动机挤掉的同时,把金钱激励结合到一个体系中来。

我们已经知道,挤出效应发生之时,要么是提供的物质奖励与一个人对互动(可能是商业性的,也可能是社会性的)的期待不一致,要么是提供的物质奖励妨碍了某个人的自主感和控制感。在商业环境下,前者不应该是问题,因为人们希望别人为他们的工作支付报酬。但如何解决控制问题呢?如果我出钱让你做某件事,我是不是冒着“你会觉得你的自主受到了威胁而失去做这件事的兴趣”这样的风险呢?除非我以某种方式对任务进行重新安排,让你保持一定的控制水平。开源项目如此成功的原因之一,就是它们在做什么项目、往哪个方向走等问题上给开发者足够的自由。研究这一现象的人发现,即便当公司聘用一个软件工程师开发某一特定的自由软件项目时,公司也不会对这个工程师的工作指手画脚,甚至在工作成果如何使用的问题上,公司也很少发表意见。安德鲁 ·莫顿( Andrew Morton)是 Linux内核开发的领军人物之一,他解释说,付费的开发人员经常会拒绝工程师们的某些要求,如果他们不认为这些要求“有益于这个内核”的话。大多数熟悉这一行的人都有同感:如果公司派支付报酬的员工参与自由和开源软件项目,但不放弃对员工创造力的诸多控制,这些员工将失去对这一自由软件项目本身的兴趣和社会资本,而这些东西本来能让他们成为最有成效的员工。无论是心理的、内在的影响,还是社会影响,都要求企业主放开他们聘用的支付报酬的软件开发人员的手脚。

另外一个有助于保护开发人员自主感的有趣做法是报酬和指令来自于不同的地方。报酬来源于购买软件的公司(比如 IBM),而指令来源于工程师(在开发人员允许的范围内)。这非常重要,因为这似乎有助于开发人员在心理上将创造过程与报酬分开,将内在动机与金钱激励分开。这可能就是为什么引入政府奖金的努力——以直接报酬换取某些特定的贡献,从未大范围铺开的原因,因为这让报酬对贡献有一定程度的逼迫感。(在一些网上分布式劳动力市场里,人们可以“租个程序员”,这些付费项目对自由软件开发没有起到多大作用。但是,它们为在自由软件项目中经受过锻炼的人提供了便利,又为他们提供了一个选择:即便没有公司雇用他们开发开源软件,他们也可以靠自己的技能赚钱。)软件领域的众多例子再三告诉我们,在激励人们参与协作性项目的问题上,不紧密联系的、婉转的报酬支付方式,效果要好得多。“按绩效付酬”(pay-for-performance)的直接模式(尼古拉斯 ·卡尔称之为“加拉加尼斯的钱包”),对于努力追求内在利益的那些人来说是一种伤害。必要而又可取的报酬模式,要与内在动机驱使的行为彻底分开。

因此,在开源软件领域,并不存在挤出效应。因为,这个行业的做法使软件开发人员拥有充分的自主,他们会觉得创造过程非常有意义。但是,这并没有涉及公平问题,或者说,并没有对下面这个问题给出答案:为什么没有报酬的工程师没有因为觉得被人看不起而拒绝参与软件开发呢?一半的开发人员有报酬,而另外一半开发人员却没有,这究竟是为什么呢?我们在第 5章曾讨论过,公平并没有确定的定义,对不同的人、不同的境况来说,公平的定义也不尽相同,它还深受社区和文化期待( cultural expectations)的影响。开源软件领域的公平报酬,似乎与其他领域的公平报酬有很大差别。因为自由和开源软件项目在物质报酬之外还有很多其他回报,比如别人的承认和地位等。根据我以及其他研究人员的观察,在自由和开源软件开发社区里,一个人的地位完全是由他的能力、所写代码的质量和完美程度决定的。这些无形的报偿——别人的尊敬和钦佩,对项目开发的影响力是极其宝贵的。所以,尽管志愿者没有得到传统意义上的报酬,但他们在这个社区里获得的社会奖赏,也足以称得上“公平的酬劳”。事实证明,这足以缓解可能存在的任何不公平感。在对自由和开源软件项目的众多研究工作中,从未发现付酬工程师和无报酬工程师之间存在紧张关系。

无论是在学术界还是企业高层,维基百科还是自由软件,政府还是非营利机构,我们观察到的情况都是:如果这个工作本身就是值得做的,或者在很大程度上与社会上的尊敬和价值有关联,那么,吸引最优秀的人才来工作,报酬就既不是必要条件,也不是充分条件。这些与精心设计的、支持全心投入和专注的社会结构相结合的工作岗位,倾向于吸引在这些条件下生机勃勃的人,这些人会为了让他们投身的企业发展得得更好而比别人多做一些。

以上内容来自《企鹅与怪兽》湛庐文化出版