共计 5208 个字符,预计需要花费 14 分钟才能阅读完成。
开源,是一条历史悠久的长河,一个 6 年的周期,绝对这条长河很短;但一个 6 年的周期,却能让一段人生因开源而扭转,李凌的成长就是其一。
2016-2021 年,李凌实现了从一个纯「开源小白」向 Apache 顶级我的项目 PMC 成员的转变,期间他在 OpenResty、Apache APISIX、Kubeshpere 等社区留下了不同的奉献「印记」。也正是这些「印记」,让他感悟了什么是开源、什么是开源产品、什么是开源商业化。
腾源会 WeOpen Talk 栏目本期对话嘉宾——Apache APISIX PMC 成员、Shopify 中国区首位工程师李凌。他将带咱们回顾这 6 年的成长经验与那些重要的所思。
一、从开源小白到 Apache APISIX PMC 成员
李凌与开源的结缘,得回到 2015 年 10 月,从开源一个 lua-aes 的加解密库开始。
过后李凌在 HelloTalk 这家公司为出海业务搭建底层基础架构。在泛滥技术工具中选型时,他发现了 OpenResty 这套基于 Nginx 与 Lua 的高性能开源框架。因为其简略性和易用性,命中了团队 95% 以上的需要,所以其团队很快在本身的生产环境、业务架构中基于 OpenResty 搭建了利用和根底服务。
到了 2016 年,李凌逐步开始接触、深刻 OpenResty 开源社区,为社区为周边库奉献代码。这也是他迈入开源圈子的第一个阶段。那会儿还是「门外汉」的李凌,没有任何参加 Apache 这类大型开源社区的奉献教训。
过后 OpenResty 开源社区的开发者比拟少,生态和社区建设层面也不太欠缺。很多时候,我把代码发到 GitHub 上之后,也不怎么管,其中本人独自开发的一个库可能才 20 几个 Star,然而在 Github Traffic 外面,能看到每天有人在拜访,让我感觉很兴奋。
这种半「自在」的状态,是李凌「半个脚迈入开源社区」的初始,也整整继续了 3 年工夫。
尽管这段经验不算「波澜壮阔」,但在 OpenResty 社区,李凌播种了开源之路上最贵重的人脉——温铭(干流科技创始人,Apache APISIX PMC 主席,腾源会导师)和王院生(干流科技创始人、Apache APISIX PMC 成员、OpenResty 软件基金会联结创始人)。
起初,温铭和王院生联结开始做 Apache APISIX 我的项目,这也成了李凌开源之路上至为要害的节点。
作为后端基础架构的技术负责人,李凌在 2019 年年中做技术选型时,恰好遇上了 APISIX 的冒头。一开始,李凌接触 APISIX 的起因只是 HelloTalk 的业务架构中须要这类 API 网关工具。
「但不得不说,其应用体验的确很好」,所以,李凌基于在 OpenResty 社区所积淀的对开源奉献的教训,很快筹备向 APISIX 社区奉献一些周边插件、测试案例或底层代码。
但,这次的「准入」却远远没有那么简略。不久后,一个「小插曲」的呈现成了李凌很为难忘的经验:
我提交的第一个 Commit 就足足写了半个多月,一会写错这里,一会那里又不对。直到 2019 年 10 月 30 日,这个 Commit 才最终被 Merge(合并),这个日期我记得很清晰。
在 APISIX 社区,李凌所提交的第一个被合并的 Commit
随着后续奉献的增多,又同步深刻参加到社区探讨、我的项目的版本更新、新个性利用和布道等工作,2019 年 6 月到 2020 年 3 月,李凌进入了在社区里、在开源上成长最快的一段时间。
李凌的成长与 APISIX 的成长,在步调上简直是统一的。
温铭已经在回顾 APISIX 从 0 到 1 的倒退时提过,这个我的项目于 2019 年 6 月开源,7 月退出 CNCF 全景图,10 月进入 Apache 孵化器,截至 12 月共计 17 个 committer,别离来自 16 家不同的公司……「社区化」是 APISIX 胜利的很重要的因素之一,同时「社区化」也让像李凌这样的技术人,取得最大的「滋润」。
随同价值奉献的一直加大,李凌成为了 APISIX 社区中第一位非初始的 Committer,接着又成为第一个被投票选举出的 PMC 成员。站在当初的工夫节点上,李凌感叹:
从一个小白成长为 PMC 成员,如果没有那些「受挫」的经验,以及像温铭、院生这样的 Mentor,我可能没有方法在开源畛域真正 on boarding。
李凌正式成为 Apache PMC
二、开源我的项目的内核是产品,不是技术
这几年,因为始终在开源社区或独立开发者社区的缘故,李凌造就出一种认知——程序员肯定要去接触业务,无论是不是在做开源,还是仅仅只敲代码。
因为,开源我的项目自身仍然是个产品,它的内核不是技术,而是产品自身。
「当你把开源我的项目看作一个产品时,你就会带着经营产品的理念,去思考如何做好开源。」这是李凌通过实际得出的观点。
去年,他作为中国首位工程师退出了寰球最受欢迎的电商 SaaS 企业之一的 Shopify。在抉择 Shopify 的逻辑背地,李凌最看中的就是其在「产品化」和「全球化」上的当先实际和能力。
进入 Shopify 的头几天,李凌最粗浅的感知就是,海内企业对 SaaS 的应用水平极高,海内的软件服务市场也绝对更为成熟,例如一天的工作流中,Shopify 团队根本会用到上十款的 SaaS 工具。
也得受害于在 Shopify 这家全球化的工作经验,李凌眼中的 Shopify 是一家典型的从开源(Ruby on Rails)走进去的商业公司,并且它们踊跃拥抱和回馈开源社区。
因而,李凌在采访中,也用了本人总结的一句话来形容 Shopify 这家公司的特点:「A Positive-Sum SaaS company that worship techniques instead of substance, and port OpenSource to commerce!(崇尚技术而非物质、从开源走向商业、打造正和共赢的 SaaS 公司)」
Shopify 外部的大会也常常强调,是开源的文化造就了今日公司的成就。李凌也特地受到其外部对开源观点的鼓励,他说他们外部常常会说:「As a team that greatly benefits from open-source software, we need to contributed back to the community.(作为一个从开源软件中获益匪浅的团队,咱们须要为社区做出奉献)」。
李凌与 Shopify 团队的合影
受到这种理念的影响,李凌也越来越喜爱从 SaaS 实际和产品化的视角,来反观开源商业化。他认为:
第一,开源我的项目或开源社区成长的外围要害是人,做好一个开源社区的要害就是要足够有多样化,吸纳足够多(多样化)的人来应用,这样我的项目(产品)能力听到更多的反馈,推动我的项目一直地打磨。因为,执行产品的是机器,用你产品的是人。
从 2019 年开始到当初,李凌在 Apache 社区的实际继续了整整 3 年工夫。他看过国内很多开源我的项目在 Apache 社区的成长,也看到一些我的项目在社区治理时,存在的问题:绝对于产品自身,开发者更器重代码自身,认为开发者在社区,须要 Contribute 代码才算合格的贡献者。
然而,很多国内大型开源社区运作文化,如 Apache Way 反而会更看重我的项目的综合体现能力,例如我的项目的技术品牌、用户与利用增长、产品理念、社区活动等维度的倒退,这种文化也不仅仅激励开发者们去社区奉献代码,而是更激励与开发者、用户一起共建社区和生态,激励开发者奉献更「性感」的一些周边库、辅助类工具(技术文档、白皮书)等,让这些更丰盛的内容促成社区的多样性。
第二,一个好的开源我的项目千万不要有太重的「技术范儿」,做产品的外围很大水平上的指标是要有变现,对于开源我的项目也是一样,千万不要做没有商业变现能力的开源产品,否则产品容易失去生命力。
当下很多 SaaS 化产品,在开源侧根本都有替代品。一些开发者或企业把开源产品改一改、增加若干性能就能将其变成一个商业产品,说起来如同很简略,但做起来并不容易。
李凌察看到,很多开源我的项目在设计、定位和倒退过程中,主导人短少对 SaaS 化的感知能力、变现能力。「这是一个综合的商业能力,你只理解 SaaS 产品不够,或只理解开源技术也不够,如何把 SaaS 化的敏锐力嫁接到开源我的项目和开源产品上,齐全是一个综合的倒退须要。」
做产品,如何证实你的我的项目(产品)是有价值的?能赚到钱是很重要的掂量因素,因为「能不能挣钱」,在某种程度上证实了你的我的项目(产品)有没有解决人的痛点。然而,商业化最大的要义不只是挣钱。
李凌对「商业化」这件事件充斥了趣味,他喜爱一个在海内风行的打造产品的行为,叫「#BuildInPublic」,这是一种用开源的理念去运作商业 SaaS 产品的行为,我的项目自身能够做到 Monetization but for Public Good。
李凌与 Apache 首位华人董事吴晟的合影,他说「晟哥对其开源理念的造成也至关重要」
第三,做开源社区和开源产品,肯定要和各个生态买通,这样你的用户大众根底会丰富一些,肯定要多去招募、拥抱新的贡献者退出你的社区。
这个过程中很重要的一点是,升高贡献者退出社区的门槛。
从李凌的察看和与社区的交换来看,很多「小白」或者「入门者」进入社区时都有恐惧心理,因为认知较少,他们通常都会一开始把社区想得特地高大上,会顾虑很多,如「我的 Contribution 会不会不能通过」、「我会不会犯错」。
因而,做好开源社区的要害,是须要设立一批这样的人——相似向导,他们为老手们建设一些「疏导」和「标准」。这也是李凌本身在 APISIX 社区成长过程中最大的受害。
此外,Apache APISIX 社区也常常会向新入社区的搭档们发一个 Good First Issue(老手疏导),专门让新入者去 Debug 或 Comment,以加强他们的信念。
三、参加开源的价值终会有所反馈
通过这几年的开源实际,李凌对开源这件事的实质认知曾经有了很大的不同。
在访谈过程中,李凌感激的温铭、王院生两人,在他的谈话中呈现得极为频繁,他认为,导师的帮扶,是他一步步成长为 PMC 成员的最要害因素。
李凌在广州与 Apache APISIX 社区搭档们的合影(一排右 5 为李凌,左 5 为温铭,左 2 为王院生)
因为我本人是受害于社区的,所以我当初十分勉励年轻人在步入职场晚期就去做开源。
这和李凌的成长经验无关的。在其参加开源的晚期,无论是技术上还是对开源的了解上,李凌自认为并不是「厉害的苗子」。然而深刻之后他的粗浅领会是,开源的参加门槛并不高——「哪怕你奉献一两行代码都是好的,这有谁做不了呢?壁垒在哪里?」。
李凌带的一个实习生就曾受他的影响走上了开源。一年多前,这个实习生同他说,想去某互联网头部公司入职,问李凌是不是好的抉择。李凌和他讲了很多,但总的方向就是激励他去做开源。不出意外,这个实习生在毕业一年后,就退出了 K8S 社区。
「兴许很多刚入门开源的乍一听会感觉,『怎么这么厉害』,刚毕业就能进 K8S 社区?这就是一种误区。实际上,开源社区的参加与融入并不简单。」李凌解释说,这个实习生通过一段时间对 K8S 生态和社区文化的理解,发现了一个 Good First Issue,这个过程中,开源大神会带着他逐渐深刻社区,一步步地领导他怎么操作。
李凌播种温铭老师赠予的一枚 Apache Committer 留念勋章
在社区中,李凌他们更多强调的是 Diversity,而非代码。所以对于很多年轻人的辅导,李凌的心态也相较以前有了很大的转变。之前辅导一些年轻人的时候,李凌常常会心态解体,心田动不动就会想说「哎呀,你能不能快点搞完了」。
但当初,李凌会变得十分急躁,「因为辅导我的人,他们就是这么急躁地教过我的。所以将心比心,对于当初的很多新人,我也会十分有急躁地领导他们缓缓做,不要急。」
所有这些心态的变动,让李凌造成一种认知——做开源不要想着急匆匆赚快钱,做开源是帮到他人。
做开源和做 SaaS 产品是一样的,要真正解决用户需要和痛点,用户会主动找上门来问你这个货色能不能付费的。因为你写的代码始终积淀在社区,积淀到你 50 岁,可能还会有人看失去,还可能晓得这个代码是你写的,只是概率性的问题而已。
李凌置信,开源的价值反馈,肯定最终会反馈到每一个参加开源的人身上,不在早晚。■
「WeOpen Talk」是腾源会全新上线的「对话开源」内容专栏,每周为读者出现一期与尖峰开源人物的精彩对话内容。在「WeOpen Talk」栏目中,咱们将粗浅诠释开源先锋者们的开源精力、开源理念及其眼中的开源世界,深度开掘开源领军者们在实际、参加开源过程中的无效方法论和最佳教训。
互动环节
看完本期 WeOpen Talk 栏目,你有什么想法或者疑难,欢送在「腾源会」公众号这篇文章的评论区留言。3 月 4 日 18 点前,点赞前 3 名将取得下方精美礼品之一哦!
腾源会是腾讯云成立的汇聚开源我的项目、开源爱好者、开源领导者的凋谢社区,致力于帮忙开源我的项目健康成长、开源爱好者能交换帮助、开源领导者能施展首领价值,让寰球开源生态变得更加凋敝。