\u003cblockquote\u003e\n\u003cp\u003e从 Apache 基金会 maintainer 到 mentor,13 年开源经历的心路历程。\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e姜宁,华为开源能力中心技术专家,目前在华为负责 ServiceComb 开源项目。前红帽软件首席软件工程师,在企业级开源中间件开发方面有十余年经验,有丰富的 Java 开发和使用经验,函数式编程爱好者。从 2006 年开始一直从事 Apache 开源中间件项目的开发工作,先后参与 Apache CXF,Apache Camel,以及 Apache ServiceMix 的开发。对微服务架构,WebServices,Enterprise Integration Pattern,SOA, OSGi 均有比较深入的研究。\u003c/p\u003e\n\u003cp\u003e\u003cvideo poster=\"https://static001.geekbang.org/resource/image/7a/97/7a1b92f2bda8c7e6e01db92caafbb097.jpg\" preload=\"none\" controls\u003e\u003csource src=\"https://media001.geekbang.org/customerTrans/6f475a24b1498919eb0a38bef256c23a/5afa6b26-1687eab2a1c-0000-0000-01d-dbacd.mp4\" type=\"video/mp4\" /\u003e\u003csource src=\"https://media001.geekbang.org/f4a76c144d8f449ab4aa44d51bb0bf04/f6311d59b13b489ba32274ba4fcf47fd-4c4e827cf21cb4cec24846578e8fd9f1-sd.m3u8\" type=\"application/x-mpegURL\" /\u003e\u003csource src=\"https://media001.geekbang.org/f4a76c144d8f449ab4aa44d51bb0bf04/f6311d59b13b489ba32274ba4fcf47fd-5cbf933ade22d8f035c91c92cbf8b55a-hd.m3u8\" type=\"application/x-mpegURL\" /\u003e\u003c/video\u003e\u003c/p\u003e\n\u003cp\u003e2000 年,本科毕业的姜宁来到当时还很荒芜的西二旗,去华为大厦面试,后来因为念研究生就没有选择去华为。2005 年,在西二旗的海纳软件(IONA)工作的姜宁开始接触开源项目。那时西二旗刚刚开始发展,政府也支持软件园的建设,这里聚集了很多科技公司,其中不少是冲着前三年租办公区免租金来的。IONA 没有熬过头三年,但是开源背景把姜宁带到了红帽,在顶级开源公司工作了几年。2017 年,姜宁又回到西二旗,进入了华为。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e感觉是绕了一个圈。西二旗现在聚集了很多核心软件公司,也有了硅谷的氛围,这可能就是软件互联网行业发展的一个趋势吧,相信你们以后应该也会有很多跟西二旗接触的机会。\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e\u003cimg src=\"https://static001.infoq.cn/resource/image/d7/c8/d72ea2d1895c985b34a17f4552c6e2c8.png\" alt=\"1\" /\u003e\u003c/p\u003e\n\u003cp\u003e姜宁参与开源的经历跟大家不太一样,是直接走的公司流程。2006 年时,IONA 有个项目要开源,姜宁就轻松成为了一个初始 committer,开始接触 Apache 软件基金会(ASF)。08 年时在 Apache Camel 项目中,姜宁被选举成为 committer, 开源之路开始走顺了。后来又参与了很多 Apache 项目,开始 mentor 别人,直到有一天收到 ASF 的信,邀请姜宁成为 Apache member。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e我填完(申请表)之后很高兴,这相当于是 Apache 对我的一个认同。\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e采访过程中当姜宁说到这里的时候,我们仍然能从他眼里的神采感受到他的喜悦。\u003c/p\u003e\n\u003cp\u003e\u003cimg src=\"https://static001.infoq.cn/resource/image/4d/c1/4d131ebadeb9830c44bc697b8f9e21c1.png\" alt=\"2\" /\u003e\u003c/p\u003e\n\u003cp\u003e姜宁说,其实开源是一个圈子。社区、基金会有自己做事的方法和流程。参与开源社区,不断地认识不同项目的负责人,了解开源社区的运作,才算融入了开源的圈子。而没有进入开源圈子的人,很难靠自己把一个项目培养起来。\u003c/p\u003e\n\u003cp\u003e早些年的时候 ASF 里面国内的 member 比较少,参与孵化的项目也不多。作为中国人,姜宁很愿意帮助来自中国的项目在 ASF 里成长孵化。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e所以后来华为就找到我,因为华为有一个微服务的项目想进入 Apache。刚开始的时候这个项目还没有起名字,后来我们给它起了一个名字叫 ServiceComb。service 就是服务嘛,comb 有蜂巢的意思,意味着微服务就是由很多很小的东西拼在一起的。\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e\u003cimg src=\"https://static001.infoq.cn/resource/image/7d/eb/7dde818fb731cef2ed4a585446d5faeb.png\" alt=\"\" /\u003e\u003c/p\u003e\n\u003cp\u003e从一个初始 committer 到项目 maintainer 再到 mentor,在开源社区多年的经历和多种角色的变换,让姜宁感觉到开源社区很像武侠小说里的江湖氛围:mentor 协助项目孵化,把项目归类,跟项目和基金会的董事层沟通,这个过程就像武林中立一个山头带一群人成长;GitHub 上大家通过 pull request 交流则像大侠之间相互切磋武艺。而在社区里大家都是主动、自愿地展示自己的能力,正如漫威电影里的台词一样,“with great power comes great responsibility\u0026quot;,这一点也很像武林大侠的侠义精神。所以在开源社区中,“人际关系很重要,人与人之间的交互很有江湖氛围。”\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e从 committer 到 member,再到 mentor,其实也是一个不断成长的过程。\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e一个开源项目的 maintainer 需要审核项目贡献者在 GitHub 上提的 pull request,和贡献者进行沟通并培养社区里的开发人员。而作为 mentor,就像是“师傅”一样的引领者角色,要教会不会玩开源的人怎么进入开源圈子。\u003c/p\u003e\n\u003cp\u003e\u003cimg src=\"https://static001.infoq.cn/resource/image/ec/82/eca52e4b3fea3adeaeff0cee51548e82.png\" alt=\"\" /\u003e\u003c/p\u003e\n\u003cp\u003eAFS 提倡 community over code (社区大于代码)。从这个层面来说,能把圈子维护好,比写一手好的代码更重要。开源社区中除了需要会写代码的开发者,还需要社区布道人员,对外宣讲人员,写文档的人员,以及前端美工设计人员。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e所有对推动项目进步有价值的人都可以成为 committer。\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e从 21 年前“开源软件”这个词第一次出现,关于开源与商业公司之间竞争的讨论一直没有停过。\u003c/p\u003e\n\u003cp\u003e在姜宁看来,开源这个事情,其实就是一个非零和(共赢)游戏,这也是 Apache 一直在强调的一点。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e一个公司,它把自己核心的东西拿出来了之后,真的会失去这些东西吗?所有的公司在给予的同时,其实会收获更多。\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e姜宁的这个理解来源于《降临》这部电影。电影讲述了 12 个神秘飞船降临在地球上所发生的故事。电影中,12 国分别破译了外星人的语言片段,但是这些片段被列强据为己有,彼此不沟通。而要获得外星人的真实意图,必须将 12 个片段拼接到一起才能最终破译。这里面的隐喻用在开源与商业公司之间的竞争非常恰当:开源社区中不是“你之得即我之失”这样一种简单的关系,而是通过成果共享和努力解决共同的困难来实现多赢的结果。比如谷歌最开始做 Kubernetes 时,把自己的核心技术开放出来,吸引了很多公司,甚至是竞争关系的公司参加进来,后来 Kubernetes 慢慢变成一个撬动世界的杠杆,促进了整个云计算行业的发展。\u003c/p\u003e\n\u003cp\u003e对于开源项目来说,大家针对共同的问题会想尽一切办法,动用一切资源来解决问题,最后可能真的能成就一项改变世界的技术。\u003c/p\u003e\n\u003cp\u003e如果要用一个词来表达自己对开源的印象和感悟的话,姜宁会选择“分享”这个词。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e开源其实很大程度上其实是建立在分享以及协作的基础之上的。\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e\u003cimg src=\"https://static001.infoq.cn/resource/image/91/e0/9151883e15d67bc653da78c5fe6145e0.png\" alt=\"\" /\u003e\u003c/p\u003e\n\u003cp\u003e姜宁有一次无意间翻到十几年前参与开源项目时的一件 T 恤,还是忍不住感概自己这么多年从开源社区中的收获。姜宁说,在开源社区中大家最容易收获的就是无偿的帮助。因为在这里信息都是开源开放的,每一个人都可以学习和成长,获得他人的帮助,也能尽自己的能力帮助别人。\u003c/p\u003e\n\u003cp\u003eASF 有个很重要的理念:For the public good,也就是从整个人类的角度,或者是为了公众的利益来做开源这件事情。从这个角度来说,个人或者公司的利益就已经很渺小了,所以大家可以跨越公司利益一起去做协同合作。所以 Apache 是一个相对来说比较草根一点的组织,它不会屈服于商业,也就很难被上市公司控制。这也是它能够不断发展壮大的最主要的原因:大家都能相信他的公信力。\u003c/p\u003e\n\u003cp\u003e另外,for the public good 其实更多程度上是 for the users’ good,就是给更多的用户带来福祉的一个事业。这样的话其实也会带来一个好处:它可以让不同的商业公司能够站在一起,为了一个更大的一个目标去去交流、沟通和协作。所以姜宁觉得很多时候一些种族、战争方面的事情,如果放大到全人类的角度上来说,其实都是能迎刃而解的。\u003c/p\u003e\n

开源引路人:我的Apache Mentor之路相关推荐

  1. 全票通过!微众开源项目EventMesh进入Apache孵化器

    点击上方"开源社"关注我们 | 转载自:微众开源 | 编辑:王玥敏 | 设计:谭嘉露 开源社引言 在 Apache 软件基金会 (ASF) 中国区成员持续地耕耘努力下,这几年来.A ...

  2. 全票通过!易观开源项目DolphinScheduler进入Apache孵化器

    全票通过!易观开源项目DolphinScheduler进入Apache孵化器 美国时间2019年8月29日,易观开源的分布式任务调度引擎DolphinScheduler(原EasyScheduler) ...

  3. 开源大数据:Apache Pulsar

    Apache Pulsar 是一款分布式发布/订阅消息平台,近两年非常火,被称为下一代的消息流平台 Message consumption(消息消费):如何发送和消费消息 Message Acknow ...

  4. 开源问答Tipask伪静态apache和nginx设置

    [摘要]Tipask是一款开源.SEO友好.扩展性强.性能卓越的问答系统!Tipask 独特的MVC构架,使得二次开发非常容易,多种接口方便和已有系统整合.本文介绍开源问答Tipask伪静态apach ...

  5. 开源协议比较(BSD,Apache,GPL,LGPL,AGPL,MIT)

    现今存在的开源协议很多,而经过Open Source Initiative组织通过批准的开源协议目前有 80种:https://opensource.org/licenses/alphabetical ...

  6. OpenSSL 宣布将开源许可证更改为 Apache 2.0

    OpenSSL 宣布将其许可证更改为 Apache License v 2.0,并启用了一个新网站.该网站将帮助 OpenSSL 团队联系迄今所有为该项目做出贡献的人完成许可证的更换. OpenSSL ...

  7. 开源应自由!Apache、OpenStack 基金会权威回应美国出口管制

    作者 | 郭芮 出品 | CSDN(ID:CSDNnews) 受到美国 BIS 将华为列入管制"实体名单"事件的波及,业界关于开源及Apache 基金会的质疑声也越来越大:已&qu ...

  8. 开源云原生平台 Apache Kafka暴露多家大企业的敏感数据

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 由于 Kafdrop 实例配置不当,全球某些规模最大的企业在云上的敏感信息遭暴露. Kafdrop 是 Apache Kafka 的管理接口.A ...

  9. 速修复!开源企业自动化软件 Apache OFBiz 出现严重的 RCE 漏洞

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 上周五,Apache Software 基金会修复了 Apache OFBiz 中的一个高危漏洞,本可导致未认证攻击者远程控制这个开源 ...

最新文章

  1. 举个卡戴珊的例子,讲讲Hinton的Capsule是怎么回事 | 教程+代码
  2. php+ajax简单实现跨域(http+https)请求调用
  3. Web服务器常用端口
  4. spring指导的index.html在spring文件夹中的位置
  5. 她半年内举报了755篇问题论文,专挑中国“下手”?还牵扯到北大副校长.........
  6. jzoj4016-圈地为王【状压,bfs,几何】
  7. Java中带有JWebSocket的WebServerSocket
  8. c语言中二维数组的结构体,怎么才能把结构体里面的二维数组打印出来?
  9. php 获取字符串中的url,php使用正则表达式获取字符串中的URL
  10. python operator __gt___Python operator.gt方法代码示例
  11. 360互联网训练营第十四期——大数据技术开放日
  12. 笔记本电脑如何保养_电脑温度一高就“翻脸”,电脑小白该如何解决?学会少花冤枉钱...
  13. 有哪些连接oracle的工具,连接oracle数据库工具有哪些
  14. Python基础课程笔记·嵩天
  15. java 实现html压缩
  16. Html开发需要的环境
  17. 光电子学教材 马养武
  18. 商协社团大会链接一带一路 万祥军:全国工商联助力发展
  19. Verilog轮询仲裁器设计——Round Robin Arbiter
  20. 深度学习之图像分类(六)--Inception进化史

热门文章

  1. 稀疏光流和稠密光流,OpenCV实现
  2. 干货 | 提升50分,Trip.com 机票基于 PageSpeed 的前端性能优化实践
  3. Golang Time
  4. CISCO交换机简简单单
  5. 有哪些可以替代NOTION的笔记软件?
  6. javascript 倒计时
  7. 方差 标准差_直观、形象、动态,一文了解无处不在的标准差
  8. Crazy Learning for Day 7
  9. 推广图书赚佣金,10个就够一套《大话计算机》
  10. 回顾百度“凤巢”计划