本期访谈嘉宾:姜宁

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

融入开源最好的办法:Learning by doing——ASF董事、华为开源管理中心技能专家姜宁


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,在做具体实际的工作的过程中,不断加深对开源的了解。假如这种机制树立起来的话,相信开源雨林一定会生生不息、不断地繁殖下去!