您当前的位置是:  首页 > 新闻 > 国内 >
 首页 > 新闻 > 国内 >

open stack:如何平衡企业和社区以建立更好的开源

2017-04-19 14:59:48   作者: Jonathan Zhang   来源:开源云中文社区   评论:0  点击:


  开源在公司中发挥越来越大的作用,但这并不意味着公司了解如何与外部贡献者一起“玩耍”。
  经验丰富的社区经理Jono Bacon说,他们面临着连接内部公司目标与外部开放源码社区动态的挑战 ——这一冲突可以让双方抱怨“他们根本就不懂!” Bacon在Linux基金会的开源领导峰会上介绍了一系列建议和陷阱。
\
  Bacon也是即将到来的Community Leadership Summit的创始人,他用Black Duck2016年关于开源未来的调查得出的几个数字开场:65%的被调查公司正在为开源项目做出贡献,67%的受访者积极鼓励开发人员做出贡献或参与,78%的开源人数是2010年的两倍。
  他表示,当企业逻辑与开源社区伦理发生碰撞时,就产生了一个有趣的问题。如果公司得到正确的回报,他们看到很棒的工程、社区关系和成长。如果相反,公司最终会疏远员工和社区成员。
  Bacon说:“公司从传统的瀑布式命令和控制环境转变为开放源代码,这是一个很大的变化。 这一切都是宽容的,必须允许人们犯错误。这就是开源的方式 ——没有人是完美的,我们都会有失败,但让我们谈谈想要做什么来改进它。“
  Bacon还概述了一些建议以及需要注意的陷阱。
  将社区视为产品的一部分
  公司有工程、销售和营销团队,他们提出问题,然后离开论坛或Git中心项目。Bacon说:“我认为这是一个错误。如果你想拥抱开源,那就必须是公司里每个人都参与。”
  他引用了一个咨询客户HackerOne的例子——HackerOne首席执行官M?rtenMickos向公司的所有人分配了一个“任务”:认识至少一个黑客。 “开源的人应该至少知道一个社区成员。实现这个目标的唯一方法就是将社区视为产品开发的战略组成部分。不应该是你雇用某个人来‘照顾它‘。“
  给这个“产品”一个拥有者
  但必须有人对社区负责。Bacon说:“最终,所有这些想法和概念的所有权,以及如何与社区合作,都应该有一个单一的联系点——有人应该负责和完成事情。” 在很多公司,这是一件顺便的事——我们在社区中提出问题,然后有时间的时候才去做一些事情。”
  一个很好的例子是,当公司表示想要通过撰写一些博客文章来吸引社区,而员工忙碌,没有人写。公司需要有谁来负责执行的计划。他认为,这个人应该有一定的资历 —— 不一定要向CEO报告,而是一个有影响力的、可以与高级管理团队进行坦率的交谈以制定策略的人。
  保证透明度
  Bacon说,简单地说,写一篇有关正在发生的事情并在公司内部分享的周报就可以做到透明,因为在没有反馈的情况下,焦虑度普遍会增加。预防性的治疗方法就是是公开和透明。 “当公司在战略工作上有分歧时,与社区分享,不一定是分享每一个细节,本质是公开。而且失败应该被接受。这是我们学习的方式。这需要从顶部开始由上至下,因为领导者塑造文化。“
  获得信任
  它有两种方式。公司需要获得信任,但它是一种合作伙伴关系, “互相认识 —— 喝一杯,一起吃午饭,交朋友”。这是社区互动,帮助会员找到工作,促进公司之间的合作关系,使事情变得更加愉快。还包括定期的个人会议。 “亲自参加会议的效果是非常惊人的,经常性的对话对发展友谊真的很重要,它是无价的。“Bacon补充说。
  避免私有开发和代码转储
  担心有人窃取你的想法不是一个不分享代码的好理由。 “很多公司认为他们将要构建伟大的软件,然后把它作为一个代码转储提供。但请不要这样做。”Bacon说,他认为这种封闭的、一次性的方法在具有非常模块化项目的社区外并不适用,例如驱动程序或插件。应该去尝试成为这个过程的一部分。
  从自己的角度忽视社区(或公司)
  Bacon从公司和开源社区两边所听到的都差不多:
  “他们不懂!”
  “他们有不切实际的看法。”
  “他们不断抱怨!”
  双方最有可能做的是:忽视对方,并希望它会消失。
  他说:“社区成员是我们建立伟大事物的一部分,所以应该与他们建立良好的关系。”
  Bacon承认,这是一个简单的概念,但很难实践。例如,如果你一直在航空业的业务发展工作,那么开源的精神似乎是“奇怪的”——所以建立这一概念有助于帮助人们承认和调整。公司在许多开源项目中投入了大量的功能开发资金,所以重要的是要好好对待那些应该得到尊重的人们。
  在开源/自由软件世界里有一群人是反公司,他们认为公司意味着风险和威胁。 “这不对。公司可以承担真正有价值的角色,但他们需要成为这个过程的成员,而不是独裁者。“
  情绪化决策
  这是另一个主要的陷阱。 “当我发现冲突发生的时候,总是我们并不在谈论某一个问题,而是对另一个人的看法。这可能是最糟糕的事情。“
  他说,这种情况下很难进行客观的沟通。人们很容易就互相攻击,这不是改善问题的方式。
  “作为社区和公司,我们唯一可以做的就是退后一步,客观地看看我们可以谈论什么,比如很多解释性的数据和看法。“Bacon说。 “我认为在遇到这种冲突时,你必须退后一步,专注于结果,然后才能解决它。“

专题