阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

参与开源,让程序员都成为发明家而不是“码农”|DIVE 基础软件大会专访

  • 2022-01-11
  • 本文字数:3311 字

    阅读完需:约 11 分钟

参与开源,让程序员都成为发明家而不是“码农”|DIVE 基础软件大会专访

“您是如何定义自己的?”

“首先是个程序员,然后有点理想主义,想把自己的名字写到‘册’上,靠梦想活着......”


近日,InfoQ 有幸与【DIVE全球基础软件创新大会2021】讲师、开源商业公司 API7.AI 创始人 & CTO 王院生就个人成长和开源创业话题进行了交流。并且,从这位开源人身上,我们也看到了较为浓厚的理想色彩。“我希望程序员都能成为发明家,而不是码农。”他如是说。

用知识连接社区


开源项目“OpenResty”可以说是王院生真正接触开源的契机。2014 年,王院生加入 360 公司。2015 年,为了让正在扩张的团队能更快速、高效地学习 OpenResty,王院生和同事温铭等人一同合作完成技术实践书《OpenResty 最佳实践》,没想到的是,因为这本书而把许多技术人聚集起来,并形成了上万人的社区群体。


“相当于用知识的方式把大家给连接到了一起。”王院生回忆道,当时团队成员身居不同城市,写书的方式能更好地将大家的知识对接起来,比如有人列目录、有人负责完成一些主要的章节等等,希望能通过一边写书一边分享的方式来推动协作和成长。


2015 年,在完成《OpenResty 最佳实践》后,同年王院生等人还创办了 OpenResty 社区。2015 年 12 月,罗永浩在锤子科技产品发布会上宣布将门票收入全部捐赠给 OpenResty,这也让更多的人知道了 OpenResty。紧接着,社区开始举办一些线下会议,包括每年的 OpenResty 大会。


但正由于这些“无心插柳”的相关经历,使得王院生对开源越来越感兴趣,后来更是选择全身心投奔开源事业。2017 年~2019 年,他离开 360 公司并加入到一家开源创业公司。2019 年 3 月,他和志同道合的伙伴一起创业,发起 API 网关开源项目“APISIX”,并创办 API7.AI(即支流科技)。


Apache APISIX 在 2019 年 6 月 6 号开源,同年 10 月就进入 Apache 孵化器。从开源之初,APISIX 保持每个月发布一个版本,并坚持测试驱动开发、自动化 CI/CD 等理念,以保证代码的质量和稳定性。 2020 年 7 月 15 日,Apache 软件基金会宣布 Apache APISIX 毕业成为 Apache 软件基金会顶级项目。


总的来说,从 2015 年到 2019 年,王院生已经经历过多个开源角色,包括从社区的协办者到社区领导者,以及从开源软件的使用者到开源软件的贡献者。而这段经历,让他在正式创业前,完成了从 0~1 的“开源沉淀”。

开源创业,必须要做到第一名


Apache APISIX 是基于 OpenResty 构建的 API 网关,因此从这个角度看,作为较早从事 OpenResty 技术研发与布道的从业者,王院生等人会创建 APISIX 项目似乎也是件“水到渠成”的事情。


但王院生指出,其实刚开始的创业并不容易,2019 年无论是从创业大环境还是开源商业化方面来说,形势都不是很明朗。当时他和创始人都直接裸辞全职投入到 APISIX,项目从 0 开始没有任何收益,风险颇大,而支撑他们走下去的原因,是因为大家都是正朝着自己骨子里真正向往的、喜欢的方向前进。


“小时候我想成为宇航员、科学家,最后发现这两个梦想都实现不了。之后就期望这辈子能把自己名字写入史册,有意思的是现如今的我们,已不需要史册了。”对于王院生来说,开源创业正是能与其曾经的梦想产生共鸣的事情,每每投入开源工作就充满激情,这里面可能包含某种使命感、又或者是对成功的憧憬。总之,在这开源事业里他有强烈的动力去持续付出。


“开源创业跟别的商业模式不太一样,你必须要做到所在行业的第一,才能有机会。如果你只是做第二第三第四,大概率会‘饿死’。从开源的第一天,我们的目标就是要成为最优秀的、被市场所认可的、最受欢迎的 API 网关。”他强调,Apache APISIX 不但做到了“全世界最活跃的开源 API 网关项目”,而且其活跃度领先地位也坚持了很长时间。


要做到行业领先地位,这意味着创业方向的选择也不能出错。王院生认为,选择创业方向往往有两个思考维度,第一是“世界需要什么”,然后是“我们能干什么”,有的时候,也可以反过来回答,先看看“我们强在哪?我们能干什么?”,再看看这个世界需要什么。


他解释称:“相对来说,API 网关是我们可以自信可以比别人做得更好的一个技术方向。而随着云原生、微服务技术的火热,行业对于流量管理的需求越来越大,API 网关从原本不被大家所重视、变成越发被重视的工具。”


据介绍,最初 APISIX 团队也有专门去做行业调研,确定了大方向没问题,并且看得到自己在这里面能够做哪些事、有什么机会、大概的可行路径等等,才最终决定要做,否则盲目往前推还是很危险的。“简单来说,世界需要一个非常优秀的 API 网关,因为之前的一些实现不能够满足现在一些产品上的更高的要求。而我们在这方面刚好有技术积累,因此也能保证我们在这个方向上做得比别人更好。”

如何让项目活跃


谈及开源项目怎么样才能变得活跃,王院生总结说,开源项目首先要能解决用户的实际问题,这样才能获得社区的认可。而要想把一个项目做成,项目与周边的关联也非常重要,比如周边的软件生态、硬件生态、开发者关系以及语言生态等,而不能是独善其身。


“以 Apache APISIX 这样的网关项目为例,它刚好处于充满连接的位置,它既可以连接安全、连接管理,也可以连接用户的业务,在这个位置上大家是可以去做很多的有意义的连接工作。就像我们公司的愿景和口号,期望能够为未来的数字世界提供更加稳定、安全、可靠的连接。”


除了要解决实际问题和建立关系,王院生还提到一些补充因素,比如项目的发起人/牵头人是一个什么样的人,是否理解社区或者理解开源精神,比如所属组织是否靠谱,对项目是什么样的态度等等。


但他还特别强调的一点是“开源项目的工程质量”:开源社区的参与人来自全球各地,如何能够保证大家在水平不一的情况下,对项目作出贡献之后,最终能产生好的结果。“这是软件工程经常强调的,我们到底以什么样的方式来保证工程的质量?不管是 Apache 的项目,还是 CNCF 的所有的项目,我们基本上没有见过哪个项目不包含完整的测试用例。甚至乎,对于开源项目来说,有的时候工程质量的重要性大于前面提到的问题。”


从所在赛道来看,API 网关算得上是小众细分市场,目前也出现了一些友商。但王院生认为,从另一角度看,API 网关的辐射范围很广,它可以负责 API 安全,也可以和人工智能体系对接,做流量识别的工作,而随着 5G 技术的不断成熟,边缘计算将逐渐兴起,这里又是 API 网关可以大展身手的地方,并且现在常提到的 Kubernetes 或者服务网格这些新技术,都少不了服务网关这重要一环。


面对市场竞争,王院生表示“把自己的事做好”就好。“观察友商是一方面,但既然我们现在有了一些领先性,那我们就要继续保持领先性,甚至是扩大。担忧并没有用,把自己的事情做好,看清楚这个世界和市场到底需要什么,给大家提供最好的选型,目前没有比这个更重要的事情了。”

写在最后:开源的魅力


再谈“为什么要为开源做贡献?”这个老生常谈的问题时,王院生笑说这应该是工程师问的问题。他表示自己就是一个典型的例子,参与开源社区,一方面是能够学习优秀的代码,提升自己的代码质量,这是性价比最高的能获取全世界最好的知识的快速渠道。另一方面,参与开源社区之后,可以接触到全球最优秀的工程师并与之交流,对于很多人来说,这在日常工作中是非常难得的机会。他感慨道,现在中国的程序员整体比较辛苦,期望能够做一些能让大家自己去主导推进的事情,并希望程序员都能成为发明家,而不是“码农”。


在开源大潮中,一个可喜的趋势是,越来越多的学生参与到开源社区。GitHub 2021 年度报告显示,GitHub 2021年度报告显示,所有贡献中有 27.9% 来自于学生,而所有开源项目贡献中超过半数均来自于学生。王院生表示,这是一个很好的信号,学生代表着未来。“从我们的观察来看,国内参加过类似‘编程之夏’活动的学生,确实在能力上会比同届的其他人更优秀些,希望能看到更多的学生去主动了解开源、参与开源。”


3 月 26 日,王院生将于 DIVE 全球基础软件创新大会的《基础软件人才培养和发展》专题中,带来“开源浪潮下基础软件人才培养和实践”的分享。希望借本次分享,能透过 Apache APISIX 开源项目的视角,系统阐述开源项目与基础软件人才的关系以及成长模式,让观众从实例中了解如何进行公开透明的全球协作,以及如何培养和吸引人才。“开源项目没有黑魔法,只有解决实际生产问题才有根基。”


采访嘉宾介绍:

王院生,API7.AI 创始人 & CTO,Apache APISIX PMC Member,《OpenResty 最佳实践》作者。


2022-01-11 18:365089
用户头像
罗燕珊 InfoQ中文站编辑

发布了 424 篇内容, 共 246.4 次阅读, 收获喜欢 757 次。

关注

评论

发布
暂无评论
发现更多内容

硬盘的秘密

yes

机械硬盘

5 个最值得注意的开源集中式日志管理工具

程序员石磊

Linux 日志 性能监控 日志监控

【盘点2020】连续8个月霸榜,年度最佳公有云竟然是它?

博睿数据

深入理解JVM中的类加载机制

Simon郎

JVM

非科班Java面试快手三面,如果不是疫情,offer已经到手了

Java架构之路

Java 程序员 架构 面试 编程语言

带你了解TCP/IP,UDP,Socket之间关系

赖猫

socket udp TCP/IP

基于Segment Routing技术构建新一代骨干网:智能、可靠、可调度(一)

UCloud技术

云计算 网络 云网络

官宣|焱融科技完成1.2亿元A+轮融资

焱融科技

分布式 存储 焱融科技 企业融资 创业公司

C/C++后台开发需要点亮哪些技能树||(鹅厂为例) Linux百里

赖猫

c++ Linux 后台开发 linux开发 服务器开发

Linux-Lab 入门:详细步骤分解

贾献华

Linux 嵌入式 Linux Kenel 开发板 boot

产品经理训练营-第三周作业

羽室

全面提升企业的主动防御能力,UCloud全新架构云安全中心正式公测!

UCloud技术

网络安全 恶意解析 云安全 安全漏洞

链上公开透明 链下迷雾重重 区块天眼能否拨开行业疑云

CECBC

区块链

解读|2020年CNCF云原生调研报告

焱融科技

容器 云原生 存储 cncf

android开发手册apk!Android开发者跳槽指南终获offer

欢喜学安卓

android 程序员 面试 移动开发

SpringBoot 接口幂等性的实现

xcbeyond

Spring Boot Java、 幂等性 28天写作

官宣 | Atlassian 针对中国市场推出适用于所有团队的本地化部署方案!

Atlassian

项目管理 DevOps 敏捷 Atlassian Jira

商务部发力数字商务:鼓励企业开展区块链等先进技术创新应用

CECBC

区块链

混合云的五个优势

浪潮云

混合云

收购环信、因Clubhouse股价飙升30%,

ToB行业头条

DCache 分布式存储系统|Key-Value 缓存模块的创建与使用

TARS基金会

nosql 微服务 MySQL 高可用 分布式数据储存 TARS

SpringCloud 从入门到精通17---Sentinel降级/热点规则

Felix

基于Segment Routing技术构建新一代骨干网:智能、可靠、可调度(二)

UCloud技术

云计算 运维 云网络

LeetCode题解:69. x 的平方根,牛顿迭代法+递归,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

备战金三银四,”吊打各厂面试官“ ,为你准备了这份堪称“神作”的Java面试宝典

Java架构之路

Java 程序员 架构 面试 编程语言

黄际洲获CCF优秀博士学位论文奖 搜索推荐技术创新成果显著

爱极客侠

学习感恩

谷鱼

大厂面试算法到底有多重要?学会这份算法宝典,随便暴打头条面试官!

Java架构之路

Java 程序员 架构 面试 编程语言

拆散的乐高怎么装起来

李小腾

android开发实战!面试的时候突然遇到答不上的问题怎么办?Android校招面试指南

欢喜学安卓

android 程序员 面试 移动开发

高并发高性能服务器是如何实现的?

赖猫

c++ 高并发 linux开发 服务器开发 多线程高并发

参与开源,让程序员都成为发明家而不是“码农”|DIVE 基础软件大会专访_行业深度_罗燕珊_InfoQ精选文章