为什么依赖开源项目的公司必须坚持强有力且可实施的行为准则?

原作者:Jonathan Vanian

原文链接:https://gigaom.com/2014/10/25/why-companies-that-rely-on-open-source-projects-must-insist-on-a-strong-enforceable-code-of-conduct/

曾经饱受嘲笑和法律攻击的开源软件,如今已成为技术产业中的一股势力。诸如Docker,Hortonworks和Cloudera这些鲜活的例子,证明了与开发者社区合作能够使公司茁壮成长,社区贡献者们能够帮助其核心技术跟上时代,应用最新的功能特性。

许多软件工程师利用他们的空闲时间为开源项目做贡献,产生出了大量的创新和免费的劳动成果。但是开源技术也有它的另一面,不同于传统商业环境中雇员的错误行为会导致受到惩戒,开源社区中的成员通常没有等同的约束,因为没有“开源人力资源部门”这样的部门去负责管理这些事务。

来自Chef公司的工程师Seth Vargo就是一个例子,Seth负责Chef开源配置管理工具的商业化支持,他最近因为收到了某些社区成员的死亡威胁而同时离开了公司和Chef社区,仅仅因为他对开源项目做的一些贡献遭到了某些人的不满。

这种窘境暴露出一个微妙的问题,依赖于开源技术以实现商业成功的这些公司,需要尝试去对那些没有实际控制的开源社区进行合理的管制。

当公司开始管制开源社区行为的时候,他们会非常谨慎,因为这可能会扼杀创新或导致社区成员质疑这帮公司监工的动机。如果形势开始难以控制的时候,对于公司来说明智的方式是行动起来,让开源人才不要离开,避免紧张升级。

有一种能够与错误行为斗争并建立起基本秩序的方法,那就是建立一种强有力的行为准则————一组规定了社区内可接受的行为的指导原则。Ada Initiative是一个支持女性从事开放技术的非盈利组织,针对多起在开源会议中发生的性骚扰和性攻击等严重事件,该组织发展和普及了一套行为准则,以帮助社区成员一致认清不适宜的行为,以及针对一些无法容忍的事情发生后相关的处理方法。

公司对于其开源社区的法律责任

专注于开源许可的法律公司O‘Melveny&Myers的合伙人Heather J. Meeker说,开源项目一直以来是由一些自我管理的技术成员构成,它的产生并不依赖于特定公司和组织实体的发起。

“开源社区倾向于非常直接了当和畅所欲言的表述他们的观点,当把这一点和匿名留言结合在一起时,带有强烈观点的声音会表现出来,而这在实名制的情况下可能就不会发生。”

Heather J. Meeker, O‘Melveny & Myers

开源组织的创建例如Linux基金会和Mozilla基金会,两者均监管着各自的开源技术,他们认为这类项目只有在离开自己的设备才能成功。而现在,其他公司也开始行动起来,承担起类似的角色以开发利用开源社区的智慧。

出于对法律的考虑,这些开源社区通常会从企业中剥离出来,并且公司喜欢这种方式,Meeker说。从社团中的法律分离使得开源社区从常见的管理问题中解放出来,这些问题包括专利方面的考虑,因为他们不得不根据会计和其他债务事务进行汇报。

由于公司对于开源社区没有法律责任,这也使得,公司“只能以道德劝服作为执行权威的唯一手段”,Meeker说,当社区成员决定制造点小麻烦时,这个问题很容易导致出有趣的窘境。

收到死亡威胁的Chef公司工程师

Seth Vargo后来去了一家做数据中心管理工具的公司HashiCorp,对于社区来说,他的离职让Chef公司脸上无光。Vargo没有详细说明他的忧虑,并且拒绝评论此事。

Chef公司开源社区总监Nathen Harvey说,曾经Chef公司制定了一份类似于行为准则的社区指导规则,其中概述了公司对开源社区所期待的可接受的行为,而Vargo事件让公司重新回来更新了条款以帮助缓和未来可能发生的未知事件。

Chef公司最初的行为准则包含了行为建议,诸如如何对其他人保持尊重,以及认真措辞以避免自己看起来像个性情古怪的人。

而最新的草案除了列出一系列不可接受的行为外,还包含了更多处罚措施,并引入了一个新的由律师、巡视官和决策人组成的社区管理团队;该团队的职责是在邮件列表、GitHub和其他社区成员活跃的地方寻找问题。

如果律师或者巡查官(Harvey目前担任此职责)发现了负面行为,全体团队成员会尽全力检查事件发生的环境并找到谁应该对煽动此事负责。如果有必要的话,Chef公司的CTO兼合伙人Adam Jacob会来决定下一步怎么做,包括可能会删除该用户在Chef社区上的在线空间。

在该草案实践中,一位社区成员感觉到自己的安全受到损害,这个指导原则看上去更像是强制性的法律。

“我们并没有说这是我们的社区准则”,Harvey说,“我们和社区是一起协作来制定这些准则的。”

社区自我调节和外部介入的重要性

Ada Initiative合伙人Valerie Aurora认为,即使一家公司在开源社区上没有法律权力,建立一个委员会以监管社区成员之间的交流也变得越来越重要,尤其要在一个固执己见的文化中制造出礼貌的氛围。

“许多公司目前采取的是不干涉的方式”,Aurora提到一些公司为什么认为不能监管太多,“他们会停止为自由生产价值。”

Rackspace软件开发者Alex Gaynor(Python软件基金会总监,Django软件基金会前任总监,OpenStack的开源贡献者)认为,Django开源项目极大的受益于采用仲裁者授权采取行动的行为准则。

“‘嘿,这话在这说不对,’”,Gaynor描述了仲裁者需要对行为不端的成员说的话,“你警告后如果他们看起来不当回事,你可以升级惩戒例如临时甚至永久禁言。”

Aurora建议公司应该为开源提交者支付一定的费用,让其检查社区中恶毒的行为,因为她相信让某人去免费承担这个工作很困难。

“我认为有一种道德责任去确保这些社区不是毒气制造组。”

Russell Keith-Magee, Django软件基金会主席

在Chef公司的例子中,Harvey主张他们的仲裁者做这件事是因为热爱,他说:

“在Chef公司的现实情况是,没有一个人的工作是去监控IRC,没有人是付费去在StackOverFlow上面回答问题。在Chef的人们做这些事是因为他们关心社区和项目。”

行为准则是否有效?

现在依然需要时间去检验Chef公司新制定的行为准则是否能防止类似Seth Vargo这样的事件再次发生,但是对于Django项目和Ada Initiative这样的组织来说,包含相关强制性政策的行为准则已经避免了一些特殊情况的爆发。

在Ada Initiative发展出他们的行为准则后,Aurora表示她看到女性参与开源会议呈现上升势头,这些女性感觉和之前相比,她们在各种会议过程中不再缺乏安全感。同时在这些会议中的侵犯行为(例如有人在PPT里插入色情图片)也出现了下降。

如果对于管理开源社区有一件事可以确定的,那就是这不是一个轻松的工作。甚至Linux领袖Linux Torvalds(他自己也因为攻击性评论成为争议的目标)最近承认他在他自己的Linux社区中也犯过错误。

“问题倾向于离间用户或开发者,并且我非常擅长这个,” Torvalds在LinuxCon Europe 2014上提到,“我使用措辞强烈的语言,但是再说一遍我不打算修正任何一条语句。”

开源社区中强烈的个性和缺乏任何法律的保护,介入开源项目的公司可能得到的不仅仅是约定中的内容,甚至会有纠纷甚至死亡威胁的发生。但是也许在这种情况下,有一个行为准则以及一些强制性规范应该能在事件发生之前就缓和并处理掉。

“Chef社区不是一个实体,它是一群人的集合,”Harvey说,“行为准则可能是能够将我们和软件本身绑定在一起的最强的东西”。

所以这件事给我们上了一课,天底下没有什么东西是免费的,包括从事于开源项目的劳动。如果你是一家想要涉足开源社区的公司,将自己从任何法律责任中分离出来固然是好事,但是这并不意味着当一些不走运的事情发生时你可以完全免责。当社区中发生坏的事情却无人来管的时候,社区里那些积极贡献的成员们将远离这里,关于项目的负面影响将导致没有软件工程师愿意再参与进来。那就只能跟你的免费创新说再见了。

“一个负责人的公司实体无法撇清所有责任,”,Keith-Magee说,“市场会容纳那些为自己决定负责的公司。”

时间: 2024-07-30 10:12:49

为什么依赖开源项目的公司必须坚持强有力且可实施的行为准则?的相关文章

依赖开源项目的公司离不开强有力的行为准则

曾经饱受嘲笑和法律攻击的开源软件,如今已成为技术产业中的一股势力.诸如Docker,Hortonworks 和 Cloudera 这些鲜活的例子,证明了与开发者社区合作能够使公司茁壮成长,社区贡献者们能够帮助其核心技术跟上时代,应用最新的功能特性. 许多软件工程师利用他们的空闲时间为开源项目做贡献,产生出了大量的创新和免费的劳动成果.但是开源技术也有它的另一面,不同于传统商业环境中雇员的错误行为会导致受到惩戒,开源社区中的成员通常没有等同的约束,因为没有"开源人力资源部门"这样的部门去

Git,SVN的优缺点及适合的范围,开源项目?公司项目?

使用git不久,粗浅理解: 1)适用对象不同.Git适用于参与开源项目的开发者.他们由于水平高,更在乎的是效率而不是易用性.Svn则不同,它适合普通的公司开发团队.使用起来更加容易. 2)使用的场合不同.Git适用于通过Internet,有多个开发角色的单个项目开发,Svn适合企业内部由项目经理统一协调的多个并行项目的开发. 3)权限管理策略不同.Git没有严格的权限管理控制,只要有帐号,就可以导出.导入代码,甚至执行回退操作.Svn则有严格的权限管理,可以按组.按个人进行针对某个子目录的权限控

[转]Git,SVN的优缺点及适合的范围,开源项目?公司项目?

使用git不久,粗浅理解: 1)适用对象不同.Git适用于参与开源项目的开发者.他们由于水平高,更在乎的是效率而不是易用性.Svn则不同,它适合普通的公司开发团队.使用起来更加容易. 2)使用的场合不同.Git适用于通过Internet,有多个开发角色的单个项目开发,Svn适合企业内部由项目经理统一协调的多个并行项目的开发. 3)权限管理策略不同.Git没有严格的权限管理控制,只要有帐号,就可以导出.导入代码,甚至执行回退操作.Svn则有严格的权限管理,可以按组.按个人进行针对某个子目录的权限控

大公司都有哪些开源项目~~~阿里,百度,腾讯,360,新浪,网易,小米等

红色字体是现阶段比较火的 ---------------------------------------------------------------------------------------------------------------- 奇虎360 https://github.com/Qihoo360 1.MySQL中间层 Atlas Atlas是由 Qihoo 360,  Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目.它在MySQL官方推出的MySQ

国内一些大公司(阿里巴巴、腾讯、百度、网易、豆瓣等)的开源项目

阿里巴巴 阿里的开源项目很多,这也跟@淘宝正明的开源态度密不可分.有很多重量级的项目,例如LVS.Tengine,或者很有实践价值的中间件,例如 MetaQ(分布式消息系统).dubbo(RPC框架).cobar(数据库中间件),或者是Java世界的工具,例如druid.fastjson. 都说国内Java公司的技术架构大部分来自阿里系,我觉得一方面来自阿里员工,一方面也可以来自阿里的开源项目. 地址有几个: 阿里巴巴中间件团队出品的开源软件以及商业云服务如下: RocketMQ 一款开源的高性

<转>国内一些大公司的开源项目

昨天看阿里的MetaQ文档,感觉对于消息系统的理解,比起大多数文章都要出色得多了,有些分析也非常的有实用性.估计还有很多优秀的项目没被发掘,于是就调研了一下,国内一些大公司的开源项目. 阿里 阿里的开源项目很多,这也跟@淘宝正明的开源态度密不可分.有很多重量级的项目,例如LVS.Tengine,或者很有实践价值的中间件,例如MetaQ(分布式消息系统).dubbo(RPC框架).cobar(数据库中间件),或者是Java世界的工具,例如druid.fastjson.都说国内Java公司的技术架构

Netflix公司监控内部安全的开源项目

Netfix公司已经发布了三个内部工具,用于捕捉黑客在使用互联网服务时留下的痕迹. AndyHoernecke和Netflix公司的云安全团队成员ScottBehrens指出:"许多安全团队需要寻找基于互联网的讨论,帖子,以及其他可以影响他们所保护的组织的点点滴滴". +在网络世界里:iPhone 6 最好/最坏的设计理念+ 其中的一个工具-Scumblr,可以用于创造谷歌网站,Twitter和Facebook的用户,或者自定义关键字搜索.他们指出,该搜索可以设置为定期运行或者手动运行

android studio学习----添加项目依赖包补充---添加github上的开源项目为库

导入maven中的库 如果开源库作者有将代码放到Maven库中,我们可以在gradle配置中直接引入,类似如下: compile 'com.github.dmytrodanylyk.android-process-button:library:1.0.1' 一般我们可以在开源库的github页面上面看有没有这样一个地址,或者到maven库中根据包名搜索有没有,我们前面这个引入的项目分三个部分 group:name:version,我们引入其他的包也有遵守这个规则. 导入gradle构建的开源库

国内一些大公司的开源项目

阿里 阿里的开源项目很多,这也跟@淘宝正明的开源态度密不可分.有很多重量级的项目,例如LVS.Tengine,或者很有实践价值的中间件,例如 MetaQ(分布式消息系统).dubbo(RPC框架).cobar(数据库中间件),或者是Java世界的工具,例如druid.fastjson.都说国内Java公司的技术架构大部分来自阿里系,我觉得一方面来自阿里员工,一方面也可以来自阿里的开源项目. 地址有几个: http://code.alibabatech.com/wiki/dashboard.act