参与 Apache 顶级开源项目给团队带来了哪些变化?

200多人同场竞技,经过一轮轮的答题淘汰,最终决出那位闯关成功的胜者。这是Apache RocketMQ Meetup 现场的暖场游戏 - SuperCoder挑战赛。

这种带有显著技术特征的游戏不仅是工程师文化的延伸,也是Apache RocketMQ Meetup 不同于其它开发者活动的地方。Apache RocketMQ创始人冯嘉在这次Meetup上分享了Apache RocketMQ社区成立两年多时间里的一些感悟,以下整理自现场分享。

RocketMQ自进入Apache基金会以来,无论是技术研发,还是社区生态都取得了飞速发展,这次是Apache RocketMQ中国行的第六站,非常高兴能有这么多同学抽出宝贵的周末时间来参加我们这次的Meetup。今天,我和大家分享三个关键词 –创新、变化与社区。在我看来,这几个关键词一定意义上体现了Apache RocketMQ社区的极客文化,也是我们一直追求的有别于国际上其它开源项目的不同之处。

                                                          创新


第一个关键词是创新。

Apache RocketMQ是在阿里巴巴双十一的场景下沉淀出来的,是一款经过大规模生产检验的分布式消息引擎,相比于国际上同类的开源项目,我认为它的最大特性就是稳定和可靠,因此非常适合金融行业的场景。开源后,我们基于稳定可靠,做了非常多的技术升级与创新,并把应用场景从金融行业扩展到面向整个基础设施,包括云端、互联网、流计算、数据处理和AI,这是RocketMQ社区未来技术演进和创新的方向。

另一项创新体现在社区运营层面,自从RocketMQ捐献给Apache基金会后,我们便开始采用 Apache Way来运营社区,随着社区理念的加深,RocketMQ也积累了自己的运营经验,并以RocketMQ Way的形式反哺给社区。创新是开源项目能够持续发展的原动力。产品同质化越来越严重的情况下,如何让用户选择你,并且是坚定不移的支持你,这是我们一直在思考的问题。我认为创新是其中最为关键的因素。因此,你会看到RocketMQ的新技术,新特性以及新的生态产品都会有别于传统做法,这些都是我们的工程师与用户进行不断交流讨论得来的最真实的需求与痛点。

同时,这也是我们举办Meetup重要的使命之一,非常希望也欢迎大家和我们分享自己在使用RocketMQ时的心得,包括给我们提建议、需求等。为此,我们这次还特意组织了一个环节,叫做“Meet with Apache RocketMQ Committers”,就是希望社区的专家能够近距离倾听我们客户的心声,接受来自用户的输入。

创新一方面是来自客户真实需求,另外一方面则来自学术圈。这是Apache RocketMQ社区一个重要的努力方向,也是我们团队重要的工作方向之一。比方说,最近我们在跟伯克利的一些顶尖实验室进行技术交流与合作,今年即将发布的Apache RocketMQ 5.0会是一个重量级的架构演化,届时我们会提供一些新颖的特性出来,欢迎大家来玩,帮助我们不断提升产品品质。

                                                      社区变化


第二个关键词是社区变化。

在创新理念的影响下,我们看到了社区的变化,变得更开放和更包容,社区的工程师也更具工匠精神。RocketMQ自进入Apache 孵化以来,社区对内核代码等做了大量的优化,局部做了不少重构。社区最近发起的RIP(RocketMQ Improvement Proposal)改进计划(点击文末阅读原文进行了解),便体现了社区协作上的变化。

以前,开发者都是通过issue来提交疑似bug,同时也会将feature request提交到issue列表里,然后我们通过issue列表来跟踪和管理feature request。但这种方式对于feature request的管理并不高效,所以我们开始把feature request的提交、跟进和管理拆分出来,以RIP项目的形式来运营,开发者使用社区的template来提交feature request,经过[DISCUSS]和 [VOTE] 的流程后,进入社区开发流程,即将发布的4.4.0版本里面的ACL和轨迹消息的产品特性就是源自社区的RIP。

当然还有我们最近非常火热的多语言SDK(C++, Python, Go, NodeJs等)和Spring集成,讲到Spring集成这块,我们接下来会有专门的文章为大家介绍,尤其是与来自Spring国际社区的工程师一起review改进代码质量的经历,这是一次非常深入的社区协作,对我们工程师的成长来说非常有价值。 

另外一个变化来自我们社区的组织形态。

前两年我去美国参加Java One,和国外的同行也多次交流过社区的运营。大家知道,在Java领域有非常多的标准,这些标准绝大多数是被称之为JCP这样的专家组织提出来的,但有一部分是由JUG这样的民间开发者组织发起的,为此还有一个和它匹配的专有名词。在美国被称之为DevRel,翻译过来就是开发者关系。这样的组织对社区的发展至关重要,像一个JUG的组织者就来自巴西,每次Java One基本上都会来分享她们的经验,怎么维护这个组织,为JCP贡献了哪些技术标准等等。

Java语言是我个人非常喜欢的语言之一,我也特别希望亚洲范围内有这样一个JUG组织,推进Java的发展与新标准的落地。另外,我们也都看到,早期很多开源项目的发展,都是依赖于某一家或某几家企业。如Facebook和Twitter,我认为是当时最具开源极客文化的两家公司。

拉回国内,今天我们大家有机会聚在一起,是因为Apache软件基金会,因为背后有来自阿里巴巴、中国移动、滴滴出行、平安银行等上百家企业的真实案例与贡献支持。当然,我们也非常高兴地看到社区在自发的组织一些线下活动,以更高的频率下沉到更多的城市,让国内更多城市的开发者也可以参与线下互动。这也是RocketMQ社区的一个巨大变化:现在有了更多的来自社区的自发组织,就像JUG这样的组织一样,后面我们也会邀请相关的同学来给大家分享社区里的一些趣闻。


最后一个变化,也是我重点想提的,人的变化。

开源是一个全球性的经济活动,在开源领域,我们有机会接触到那些受人尊敬但距离看似遥远的技术大牛。但开源为我们提供了一个途径,如果大家能够参与到社区,无论是使用开源项目,还是以contributor的身份参与社区贡献(架构演进、功能完善、体验优化和文档建设),都有机会和技术大牛一起协作,进行更多的交流。从中你会发现,不仅仅自己的技术实力发生了变化,视野格局也会有很大的提升。

以我自己为例,在毕业那会儿,JavaEE和Spring 基本上是Java领域的一个技术标配,那个时候给我留下深刻印象的两个技术牛人,一个是Spring的缔造者Rod Johnson,一个是Hibernate的作者Gavin King,不管是代码,还是从他们在社区的activity来看,都有很强的极客范,对我本人的技术发展也提供了很多学习借鉴的地方。

如今,在Messaging和Streaming领域,RocketMQ社区的同学在打交道的外国同行几乎都是分布式领域深耕数十年、受人尊敬的“大胡子”,大家也都能很平和地在交流着圈内技术,探讨领域的发展方向。

目前,我们也和包括微软、Google、IBM以及K8S生态圈中的许多顶级开源项目都有很好的合作,这些合作经历对工程师的成长帮助非常大。以前经常有开发者问参与开源项目有什么好处,我会讲有一二三四五六,但其实第七点同样非常关键,就是成长。从团队周边的小伙伴身上,我能清晰的感受到,开源对工程师成长带来的显著提升,包括领域深度认识、技术格局、沟通协作等方面,这些都会为大家日常工作带来积极的变化。

另外,在这里,我特别希望向大家传达的是做开源的态度 - 不亢不卑,这个也是我在团队里面经常强调的。当我们和来自微软、伯克利等同学在做技术交流的时候,你会发现大家其实思考的问题基本上是一致的,只是解决这些痛点的方式、维度有所不同。如果你的知识储备不错,可以通过横向推演或者亲自研究这些项目,这样大家的交流会很对点。

但交流过程中确实会出现一些文化上的差异,例如老外会觉得你的技术只是在中国才流行,但随着技术上的深入交流,以技术的方式去探讨,也会逐步获得对方的认可,这个沟通过程将会带给工程师很大的鼓舞。我也特别鼓励大家能更多地以平和的心态去和国外的同学作深度交流,也希望大家能够像这些同行一样,非常nice地尊重每一位同学,而不是那种冷冰冰地对待来自社区的友善提问与合作请求。

                                                      社区


最后,我们回归社区

Apache RocketMQ社区成立的两年多里,除了给团队、社区和开发者个人带来变化外,RocketMQ项目本身也经历着从本地化向多元化发展。

今天来看,容器、微服务、人工智能等目前国内比较火的技术方向,像技术峰会或者Meetup在国外举办的居多,因为这些技术的发源地或者说概念的提出是在国外。这几年,我们也慢慢看到一些国内同学提出来的顶级项目或者说标准,开源以后,在中国也拥有非常多的国外用户。就拿RocketMQ来说,例如在之前的北京Meetup上有来自于印度和中东地区的工程师询问。但因为受限于Meetup本地化行程,没有机会提供英语的分享环境。

所以接下来,我们会尝试邀请社区里面在中国工作的外籍工程师,并提供一个英语分享环境,让他们也来感受一下Apache RocketMQ社区线下活动的氛围,同时能够帮助我们注入更多的国际化因素。今年,我们也在考虑计划Apache RocketMQ 北美行,欢迎届时大家推荐自己在国外的朋友来参加。


Apache RocketMQ 社区成员合照

本文作者:冯嘉,社区昵称vongosling ,Apache RocketMQ 创始人,Linux OpenMessaging 创始人,Google编程夏令营导师,Apache孵化器导师,阿里巴巴 Messaging 开源技术负责人。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,937评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,503评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,712评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,668评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,677评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,601评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,975评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,637评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,881评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,621评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,710评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,387评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,971评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,947评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,189评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,805评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,449评论 2 342

推荐阅读更多精彩内容

  • 摘要:9 月 25 日,Apache 软件基金会官方宣布,阿里巴巴捐赠给 Apache 社区的开源项目 Rocke...
    暖夏未眠丶阅读 967评论 0 4
  • 阿里妹导读:自从2011年宣布第一波开源项目以来,阿里技术人一直积极参与开源社区共建。开源项目数量每年都有所增长,...
    傲剑天涯阅读 646评论 0 3
  • 视我为己出,待我如母的四姨就这样悄无声息地去了。 下午我正在煤场发货,弟弟打来电话告诉我四姨娘去世了,...
    顾元林阅读 696评论 1 2
  • 嗯。。又在面试返程的路上,这次是之前网申过一家银行,然后去一面。 面试流程挺正常的,自我介绍,基本问题。。很快,三...
    暴躁久五厚阅读 158评论 0 0
  • 不要再做“努力被别人喜欢”的人了 你该去做“时刻让自己快乐”的人 ​​​ ​。
    罗南南阅读 160评论 0 3