3月27日,腾讯云大数据及人工智能产品研发的专家研究员堵俊平受邀成为 Apache 软件基金会Member(Apache Softeware Foundation Member,如下简称 ASF Member),一封名为 “邀请成为 ASF Member” 的电子邮件正式为堵俊平敲开了开源世界的新大门。架构
从用户成为“股东” —— 在 Apache 基金会的 2600 天oop
从 2012年开始为 Hadoop 的初始版本打补丁,堵俊平已经在 Apache Hadoop 社区深耕了近8年,13年10月成为中国第一个 Hadoop 的 Committer, 15年7月 PMC Member,19年3月荣升ASF Member。“我很荣幸,但今后,我也有了更多的责任。” 如今全世界有 883 位 ASF Member ,中国区仅有13人,其中较为出名的包括 Kyligence 联合创始人兼 CEO 韩卿 (Luke Han) ,以及中国开源社的理事长刘天栋 (Ted Liu) 。学习
与在一个项目单元下垂直贡献不一样,ASF Member 会收到 Apache 基金会下超过 350 个开源项目的季度报告,横向地对更多的项目起到管理义务。大数据
ASF Member 关注的是 Apache 基金会自己,这一般经过项目相关和跨项目活动来证实。从法律上讲,Member 是基金会的“股东”,也是业主之一。他们有权选举董事会,成为董事会选举的候选人。他们也有权做为导师 (Mentor) 提出一个新的孵化项目。人工智能
有一点须要特别指出,Apache 基金会中从 Committer 开始的每一个角色都只能经过他人提名并投票决定,这表明社区伙伴的承认,每上一个新台阶的背后都有着日日夜夜事无巨细的付出:不断贡献高质量代码、提交 patch,组织 release,回答用户问题,参与投票,培养和提名committer,发表合理合适意见,还有一些影响更加深远的贡献,推进腾讯内部持续贡献 Apache 基金会,组织黑客松和 meetup ,身体力行地推广Hadoop,传递开源理念。spa
堵俊平今年的想法是主动去挖掘 1-2 个合适的项目,推荐进入孵化流程,“Mentor 有点像投资人,只不过咱们是拿出本身的时间来投资”,堵俊平作了这样的比喻,时间比资金更有限、更私人,因此选择开源项目时会坚持从技术驱动,在本身有兴趣的领域帮助有潜力的项目快速成熟。设计
代码、人,社区都在成长 —— Apache 基金会的运做模式进程
Apache 基金会的官网上有几十份、累计数十万字的文档内容在介绍 Apache 基金会的运做模式,在真正接触到基金会的“内部人士”前,外界彷佛很难相信一个跨时区、跨文化、跨公司的组织可以严格按照这样的模式运做了20年。它详细到超乎想象,哪怕是针对一些意外状况,也多能在这些文档找到解决方案。图片
“ASF Member 想要退休怎么办?”,“决策投票的有效期在跨时区的状况下如何保证?”,“投出+0.9票的成员是怎么想的”……诸如此类。项目管理
Apache 基金会中的每一个人、每一个项目、每一个社区,都并不是固定一成不变的,它是一个极其动态的过程,每一个人、项目和社区时刻都在成长,而这一切是透明的,做为一个普通用户,几乎不要花多少功夫,你就能找到这个庞大的社区天天发生的一切变化:代码量的增减、提交者的变化、最新的Release清单。Apache 基金会像是一个精密的齿轮,日夜不停地转动,开源这个概念自身的魅力正是其磨合剂。
做为社区中的人,只要你参与在 Apache 基金会的项目中,你就确定能找到一个对应角色:
•用户(User):开始使用一个或多个 Apache 基金会的开源项目。
•贡献者(Contributor):提交代码或文档的patches,在官方渠道(邮件列表,IRC等)支持其它用户。
•提交者(Committer):持续贡献,坚持贡献,被提名、投票经过后,拥有直接访问并提交代码的权限。
•项目管理成员(PMC Member):作了更多不局限于代码的贡献,进入单个项目个管理委员会,经过投票影响这个项目的发展方向。
•Apache 基金会成员(ASF Member):对 Apache 基金会直接负责,在多个项目中作出贡献,拥有董事会的投票权。
若是你已经在维护一个开源项目,想让它进入Apache基金会,那你则须要充分了解项目在社区不断演进的过程,“提名→进入孵化器→成为顶级项目”,每一步都有迹可循。
(图为一个开源项目进入孵化器的过程)
从 Apache Way 到 Tencent Way—— 以 TOSA 加速力行开源实践
Apache 之道影响了包括腾讯在内的众多中国公司,近几年,中国的开源爱好者们在大会演讲中终于不是只会讲系统是如何设计的、代码是如何实现的,“开源社区”成为业内一个有点抽象的流行词。
“社区”究竟是什么?其实就是多人+互动关系,开源社区就是指你们的互动关系围绕着开源项目而产生。不过这种关系并不会凭空产生,原始开发者须要站在一个彻底陌生的开发者角度去思考“我为何要加入你?”
这里有不少方法已经在 Apache 之道中获得总结:首先这应该是一个创新的项目,简单易懂的上手指南、详细全面的项目文档、统一规范的代码格式都可以下降其余开发者的门槛,吸纳贡献者以前要先想清楚项目须要哪方面的帮助,贡献者加入以前也要明确如何协调工做。
对于自由开发者来讲,践行以上方法,可能只须要多一点点决心而已,但对于公司体制下的开源开发者,获得公司和所在团队的支持也许更加实际。
18年中旬,腾讯正式成立了开源管理办公室,腾讯BG相对独立、自下而上的管理模式其实和 Apache 软件基金会很有相似之处,所以这个办公室的组织架构也设计成相似于 Apache 软件基金会的模式。开源合规组应对开源的法律风险,TPMC汇集了每一个项目的内外部开发者,而这个略带江湖气息的腾讯开源联盟TOSA则是整个组织的大脑,负责思考腾讯开源要向哪一个方向前行。
堵俊平现任腾讯开源联盟的主席,除了负责 Apache 基金会 的各项事宜外,他还主动承担起管理和治理腾讯开源工做的职责。“我很是高兴能看到腾讯开源选择 Apache 的模式,这奠基了一个项目不断壮大的基础,对于发展中遇到的问题,我会坚持开放透明的方式去解决”,堵俊平提出了三点目标:
关于腾讯开源
腾讯开源始于2010年。在开放战略背景下,腾讯在内部开始推行“开放、共享、协力开发”的研发模式。现在,腾讯已有超过8000个内部开源的开发项目(组件)在公司跨团队、跨部门、跨业务地运用。从2016年起,腾讯开始将内部优质项目对外发布,以Github为主要阵地进行开源项目经营,腾讯对外开源开始进入了快节奏时代。
目前,腾讯已将三个广受社区的承认的开源项目TARS、TSeer和Angel分别捐赠Linux基金会和Linux深度学习基金会长期运做。同时,腾讯已成为Linux 基金会、Apache基金会、Openstack基金会、MariaDB基金会及LF深度学习基金会的白金会员,还加入GPL合做承诺,坚持以专业、合规的方式推动开源工做。