本期访谈嘉宾:姜宁

姜宁,Apache 基金会(Apache Software Foundation,简称 ASF)2022 年新任董事、Apache Local Community(ALC) Beijing 发起人、华为开源管理中心技术专家,前红帽软件首席软件工程师。有 15 年以上企业级开源中间件开发经验,有丰富的 Java 开发和使用经验,函数式编程爱好者。


Q:首先恭喜姜老师当选 ASF 董事,谈谈您参加竞选的心路历程及经验分享

ASF 是一个全球化的虚拟组织。参与董事会竞选前,参选人可以在邮件列表中通过发表竞选宣言的方式与 ASF 会员进行沟通,大家可以回复提名邮件,发表自己的看法,支持自己的候选人,最后从候选人里面投票选出 9 位董事会成员。

虽然我成为 ASF 会员已经超过 10 年,但这是我第一次参加董事会竞选。为了让各位会员了解我做的工作,我在竞选宣言中阐述了自己在 ASF 的工作经历、帮助本土项目成长以及成立 ALC Beijing 的初衷,包括去年 ALC Beijing 举办的 ApacheCon Asia 的一些经验总结,让大家相信我有能力参与基金会的治理。相信这些都是打动 ASF 会员为我投票的主要原因。

Q:成为 ASF 董事,对您在工作上有什么帮助?

个人层面,对个人影响力及布道有很大的好处,现在有很多媒体来采访,让我有了更多对外发声的机会。

基金会层面,可以为周边相关项目持续发声,为国内的本土项目做贡献。

公司层面,作为领路人帮助同事成为 committer,了解如何参与开源社区,帮助他们少走一些弯路,多快好省地把要做的事情做起来。大家有好的想法或者好的项目,都可以跟我聊,我会尽我所能的帮助大家。

Q:作为 Apache 新晋董事,在任期内有哪些目标和计划?

主要是两个层面。基金会层面,我觉得能够当选 Board Member 是一种荣誉,接下来要做的事情跟原来没有太大的区别。可能更多的是代表 Board 审报告、读报告,对我来说会有另外的收获,例如会对项目有更多的了解,或许未来会有一些合作的机会点。另外,接触到基金会层面的讨论会多一些,有些事情的合作空间会大一些。我们希望能让 Apache 在国内更好地发展起来,ALC Beijing 其实也扮演了一个 Apache 在本土的宣传作用。

Board 层面,我觉得意义更大的是我们现在正在筹备的每年一次的ApacheCon Asia,它能让更多的人了解 Apache 项目,帮助我们国内的项目有更好的露出。站在董事的角度上,要推动 ASF 发展壮大,不仅需要国际化的视野,同时也要立足本土,把国内的开发者带动起来。作为 Board,主要还是扮演好桥梁的角色,帮助拉近 Apache 本地社区和 ASF 总部之间的关系,让大家能够更好地了解彼此,促进合作。

Q:ASF 有一个很重要的理念“社区大于代码”,Linus 也有一句话“Talk is cheap.Show me the code.”您觉得这两种理念冲突吗?谈谈您的看法

其实不冲突的,主要还是看关注的是哪个层面。对于像 Linus 这样的开源软件开发人员来说,大家相对会比较实际,不要跟我说你能做什么,只有你把东西做出来之后,我才相信。大家交流会很直接,所以我觉得“Talk is cheap.Show me the code.”是很实际的,主要在工程师交流的技术层面。

而 Apache 不仅仅只有技术层面,还有治理层面。好的项目能够发展起来,不是一个人,而是靠一群人,依托委员会的力量把个人智慧汇聚成群体的智慧。

Q:中西方的文化差异与大家参与社区的动力方式有何区别?

在 Apache 整个社区中,决策是通过共识机制来达成的。在 Apache 项目中,没有所谓的项目经理,只有技术领导,大家都有自由表达意见和贡献代码的权利。即使有时候在社区层面无法达成完全共识,但是大家可以通过投票的方式达成最终的一致。所有 PMC 都是平权的,没有独裁者的存在,话语权需要用你的贡献来放大。这样的社区工作模式,最大程度地维护了代码贡献者的利益,也积极推动了社区的健康发展。因为开源社区有共同利益的驱动,很多开源项目可以不断吸引、激励贡献者,最终取得令人瞩目的成就。

沟通方式方面,中西方的差异可能就是熟人社交与陌生人社交了。Apache 更多是通过邮件列表,因为 Apache 是一个全球化的虚拟组织,大家来自世界各地,存在时差,不能进行实时互动。在国内,大家可能会觉得如果给别人写邮件,特别对方是一个陌生人的话,会担心对方不理睬我们的邮件。为了避免这种尴尬的情况,大家会先见一面,或找中间人介绍双方认识,这也是为什么在国内大家会习惯用微信进行交流。

对于邮件列表来说,它不是熟人社交,更多的是大家基于某一个兴趣点联系起来,通过一个邮件列表将邮件转发到相关感兴趣的人的邮箱中。因为邮件列表的订阅和存档的功能特别适合那些相互不认识的人之间建立协作关系,我们在辅导项目的过程中,也一直在推这种方式。但实际上考虑到文化差异,可能大家还是用微信比较多一些。

另外像地域、语言、文化方面的差异,国内的开发者很少有机会能够深入的参与到国际开源基金会社区的建设中,这个也是我发起 ALC Beijing 以及将 ApacheCon Asia 带入国内的原因。希望未来能与开源雨林一起,共同打通桥梁,做一些合作共赢的事情。

Q:Apache 最新的两则消息,比较热的是您当选了 Board,另一个是 Log4j 事件。就 Log4j 事件,您觉得基金会有哪些可以改进的地方?

Apache 软件基金会层面,主要会从以下两个方面来解决这一问题。一个是重申了免责条款,因为开源的交付模式不像商业模式是强契约的,而是较弱的一种模式。这种模式下,基金会的项目是不太了解外部的使用情况的,很难及时通知到相关的用户。为了帮助用户更好地应对漏洞,基金会后续的计划是进一步完善开源项目漏洞的通知机制。

另一个是在开发过程中尽量避免出现安全漏洞代码,需要给大家做更多赋能或者寻求一些商业服务支撑。平时 ASF 项目开发者可能会花更多精力在开发层面上,安全方面的意识还需要提升,大家需要掌握一些基本的安全编码的知识。后续 ASF 也会与 OpenSSF 加强合作,同时 ASF 也会和一些安全问题响应时间较长的项目合作,帮助他们提升这方面的能力,解决一些实际安全问题。

现在安全漏洞较多的是前端的应用程序,但 Apache 大部分都是后端开发人员,也借这个机会打一个广告:大家如果对前端开发感兴趣的话,可以与我联系,大家一起把 Apache 前端安全漏洞方面的能力建设起来。

Q:2021年的一组开源调查数据显示,73.6%的开源参与者没有收入,54.7%的开源参与者月收入小于1000元。就中国开源开发者的现状,谈谈您的看法

Apache 软件基金会的愿景使命是“为公众生产免费的开源软件”,但软件开发和维护需要持续投入很多资源,虽然 Apache 软件基金会不会给开发人员直接开工资,但是基金会建立了很好的法律框架和商业友好的许可协议,因此很多Apache 项目的开发者是受雇于商业公司进行开发的。

国内的开源软件发展时间较短,处于起步阶段,未来3-5年将会是这一产业高速发展时期,处于各发展成熟期的软件产业都有望加入到开源阵营中,不会像十年前一样靠着一腔热血,现在还是有经济收益在的,大家也能更踏实的参与到开源项目中。

Q:谈谈您对开源的理解及对开源雨林的建议

从个人发展角度来说,基础的知识储备是很关键的。在开放的环境下做开发也是一个非常好的锻炼机会。在开源社区,会有很多大神级的程序员扮演导师的角色,发现并指出代码中存在的问题,无条件地把经验传授给年轻的程序员,帮助他们找到技术拓展的空间。我就是在这样一个不断磨合的过程中成长起来的,在做的过程中不断学习,所以我非常鼓励大家加入开源社区,一步一步跟着项目走,扎实的成长起来。

另一方面是协作,借助于网络、开放的环境,大家能更好地协作起来。现在很多项目都托管在 GitHub 或其他平台上,大家很容易能参与进去。ASF 的项目管理不是一人堂,更多的是在社区里达成共识,团结一切可以团结的力量,去攻克难题,享受攻克难题的成就感,这样也能很快把事情做完,很多问题都可以快速解决。

社区其实就是大家有着共同的目标,一起朝着目标去做事。社区里大家交互的数据分为两类:信息、知识。我们在社区参与中,获得更多的是知识。信息只要保证顺畅的传递就可以了,但知识需要大家反复去理解,在切磋过程中不断加深。

在开源社区里,学习和赋能都是需要持续的。现在的赋能,更多的是知识普及,开源项目不是说只是代码贡献,像偏文档性的写作也是开源协作的一部分。赋能方面,更多的是有能力的人带一些徒弟,在具体做项目的过程中把知识传递,而不像大公司,可能有专门的培训部甚至大学这样的机构负责这方面的工作。

如果把这块映射到开源雨林,建议就开源管理方面建立一种途径,把大家的问题汇总起来,持续不断做沉淀,紧跟时代的步伐,进行知识迭代,进一步的传递给我们的成员或者赋能对象。融入开源最好的方法就是 Learning by doing,在做具体实际的事情的过程中,不断加深对开源的理解。如果这种机制建立起来的话,相信开源雨林一定会生生不息、不断地繁衍下去!

融入开源最好的方法:Learning by doing——ASF董事、华为开源管理中心技术专家姜宁相关推荐

  1. 开源在线机器学习Online Learning/Incremental Learning库-creme介绍

    最近在学习实时机器学习或者说增量学习相关的内容,目前中文资料相关的介绍非常少,今天借着creme这个库介绍下Online Learning的原理,以及Online Learning和Batch Lea ...

  2. 华为开源构建工具_为什么我构建了用于大数据测试和质量控制的开源工具

    华为开源构建工具 I've developed an open-source data testing and a quality tool called data-flare. It aims to ...

  3. “哪吒”出世!华为开源中文版BERT模型

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 编辑:Sophia 计算机视觉联盟  报道  | 公众号 CVLianMeng 转载于 :诺亚实验室 [人工智能资源 ...

  4. 腾讯拥抱开源:首次公布开源路线图,技术研发向共享、复用和开源迈进

    整理 | 夕颜 出品 | AI科技大本营(ID:rgznai100) 导读:去年,知乎上一篇讨论腾讯技术的帖子异常火爆,讨论的主题是当下(2018 年)腾讯的技术建设是否处于落后同体量公司的状态,这篇 ...

  5. 列出最少8种开源软件_您的公司可以支持和维持开源的8种方式

    列出最少8种开源软件 开源的成功不断增长: 调查显示, 大多数公司使用某种形式的开放源代码,有99%的企业认为开放源代码很重要 ,而几乎一半的开发人员都在回馈. 重要的是要注意,公司并不是纯粹出于无私 ...

  6. 华为开源构建工具_5个开源工具可快速构建地图应用

    华为开源构建工具 近年来,地理信息系统(GIS)引起的所有关注都可能使您认为它们是新事物. 实际上,超过160年前,地理空间数据在确定1854年伦敦霍乱致命爆发的来源方面发挥了重要作用. 当地医生约翰 ...

  7. 即兴小探华为开源行业领先大数据虚拟化引擎openLooKeng

    文章目录 概述 定义 背景 特点 架构 关键技术 应用场景 安装 单台部署 集群部署 命令行接口 连接器 MySQL连接器 ClickHouse连接器 概述 定义 openLooKeng 官网地址 h ...

  8. 程序员为维持游戏开发被迫炒股,一年内反赚1600万;雷军退任天星银行董事会主席;华为开源Karmada将捐赠CNCF...

    点击上方 "编程技术圈"关注, 星标或置顶一起成长 后台回复"大礼包"有惊喜礼包! 每日英文 Your life only lasts for a few de ...

  9. 「开源中国」公布 2019 年度最受欢迎中国开源软件

    经过 22 天的投票评选,今天 2019 年度最受欢迎中国开源软件产生了. 开源中国(OSCHINA)是目前国内为数不多深耕于围绕"开源/自由软件"为开发者分享开源业内事.传播开源 ...

最新文章

  1. correlation 蒙特卡洛_蒙特卡洛模拟法及其Matlab案例
  2. pandas.read_csv()跳过读取文件报错行
  3. ListView 滑动的时候 变系统默认黑色,或是设置不变色
  4. 免费学python的软件-此贴告诉你:为啥shell脚本人,不建议学python
  5. vb小工具-----txt转为excel
  6. 如何打印出 SAP Spartacus 调用 OCC API 消费的所有 endpoint
  7. 日志采集框架Flume、Flume介绍、概述、运行机制、Flume采集系统结构图(1、简单结构、复杂结构)...
  8. python关于字典嵌套字典,列表嵌套字典根据值进行排序
  9. bzoj3524 [Poi2014]Couriers
  10. Python中的回文详解
  11. [220207] Find the Difference
  12. python的实例类方法、修饰器类方法、修饰器保护方法、修饰器静态方法中私有属性的区别和自定义property的读写方法
  13. [github高级控件] 带你走近 - CircleIndicator指示器原点动画切换
  14. WCF服务启动时遇到AddressAccessDeniedException
  15. topcon gps 软件下载
  16. 迷宫里抓神兽Java游戏_塞尔达传说荒野之息全神兽迷宫进入方法 四大神兽怎么打?_游侠网...
  17. 一卡通管理系统总体设计
  18. pearson相关系数_SPSS相关性分析及相关系数计算方法(点二列相关系数)——【杏花开医学统计】...
  19. 031:verbatim 标签
  20. android朋友圈发文字换行,微信朋友圈全文展开 朋友圈文字怎么换行朋友圈发多行文字...

热门文章

  1. 时间复杂度 与 空间复杂度
  2. 有关贝叶斯概率和贝叶斯网络和贝叶斯因果网络的自习笔记
  3. 优漫动游零基础也能从事的插画设计
  4. 如何設計框架(Framework)的API呢?
  5. android中的app打成apk发现不能安装是什么原因呢?
  6. 您可以在 2023年开始的 100 个副业,看看有没有适合你的
  7. jq获取兄弟节点_jQuery 获取兄弟元素的几种方法
  8. 一对一聊天系统开发直播源码搭建方便你我他
  9. 无敌解决vmware中Linux虚拟机无法获取ip地址、无法上网的办法
  10. h5及c3新增的一些内容有哪些?