写点什么

Apache 海豚调度 PMC 郭炜:开源,不是天才的甜点,而是执着者的盛宴 I OpenTEKr 大话开源 Vol.7

作者:OpenTEKr
  • 2021 年 12 月 30 日
  • 本文字数:4088 字

    阅读完需:约 13 分钟

Apache 海豚调度 PMC 郭炜:开源,不是天才的甜点,而是执着者的盛宴 I OpenTEKr 大话开源 Vol.7

/// 大话开源 ///


「大话开源」是 OpenTEKr 旗下对话国内外开放科技界思想引领者(Open Tech Thoughtleaders)的访谈节目,致力于捕捉大咖们的开源精髓,为「开源发烧友」和「门外驻足观望的好奇宝宝」提供更多心法与招数。 说人话就是,我们“白嫖“最一线的感悟,吭哧吭哧总结「开源武林秘笈」,帮助更多 OpenTEKrs(开放科技客们)顺利上道,生活中飒爽拉风、事业上乘风破浪 🏄‍♀️,破圈解锁更多宝藏 🏴‍☠️!


本期嘉宾,我们很荣幸地邀请到了 Apache DolphinScheduler(简称”DS”, 中文名 “小海豚调度”)PMC——郭炜。他介绍了 DS 项目的优势及客户案例,同时也分享了自己对开源的解读、开源在中国的发展状况等见解。更多精彩见视频。



/// 本期大咖 ///


郭炜:海豚调度 PMC


Apache 软件基金会成员,Apache DolphinScheduler(海豚调度)PMC,ClickHouse 中国社区创始人。曾任易观 CTO,联想研究院大数据总监,万达电商数据部总经理,并曾在中金、IBM、Teradata 公司担任大数据方向重要岗位。在大数据采集、存储、处理、挖掘、应用研发等方面具有丰富的理论和实践经验,同时在技术管理上有独特的见解与实践。


/// Q&A 精华 ///


Q1.对开源的解读


我认为开源是下一代的开发模式。过去最传统的开发是一家公司找很多开发者、一些天才去开发软件,只由一家公司来做。而开源不一样,开源打破了公司和公司、组织和组织的边界,甚至打破了国家和国家的边界


它可以让全球最顶尖的架构师、开发者等组织到一起去贡献项目,凝聚着全球最顶尖的人才的想法。这些人并不是来自同一家公司,因为一家公司雇不了那么多优秀的人,也很难吸引他们在一起,只有像开源这种组织模式才可以把那么多优秀的天才都聚在一起,最后做出能延续很多年的开源项目。


那项目本身可以帮助更多的人,而不只是为了一家公司的盈利或者发展。从整个社会和开发发展历程来讲,我觉得它就是下一代开发的方法。所有的软件不应该由一家公司来开发,那一定会被淘汰,它一定是通过多家公司参与、更多的用户使用、更多的天才架构师和开发者的参与,才能把优秀的软件给设计出来


Q2. 成功的开源项目需要什么?


好的开源项目至少有三个基本要素。第一,产品理念。大家总觉得开源就是把代码开源出去,其实不是。首先你的产品理念是什么,从用户角度来讲,你解决的是人家的什么问题。比如说,Apache DolphinScheduler 我们最开始的理念是简单易用、稳定。所有的设计都围绕这两个理念去做的,所以我们 slogan 叫“工具选的好,下班回家早;调度用的对,半夜安心睡”。其实就两点:非常简单,用起来能提高你的效率;非常稳定,半夜你排错全都能搞定,晚上安心睡就好了。


这两个理念贯穿产品的本身,而不是说我现在做工具、开源放上去,大家用就好了。你没有理念的话,很难去获得更多用户,往往一两个或十几个用户用完以后就再无音信了。所以产品理念要强,曾经举过一个例子,说中国的火锅流传了 1700 多年,说到火锅,你能想到火锅什么样子?热气腾腾的锅子,羊肉、牛肉还有麻酱,一下就能让人联想到。同比,你的产品也要有你的理念,它才能流传下去。


第二,社区运营。开源不是把代码开源、放到 GitHub 就完了,那上面有几千万个开源的项目,基本上大多数开源项目全都烂尾了。因为你只是把代码放上去,没有把社区做起来。Apache 有个名句叫 “Community over code”就是社区是大于代码的,代码差了可以推翻重写、重构 。如果社区坏了也就没法建起。社区是特别重要的,你的开源项目一定要找到第一个贡献代码的人,否则你只是把代码放上去。“Open source starts with first contributor”——有了第一位贡献代码的人,项目才真正开源。否则,只是一个软件而已,没有人去 care 你的 Community。


第三,开源要坚持。很多时候,开源其实蛮辛苦的,比如我们这些 Apache Foundation Member 包括 Apache 活动组织者,每周四都开会,并且时间都是从晚上 10:00-12:00,若干年来坚持不懈。特别在中国就更难了,大家 996 之后,一开会都到十点,周六周日都没有休息时间,要不停地回答各种社区问题,参与开源的 meetup 活动,各种各样的工作。你如果不能坚持,只是热乎气,其实开源也做不成。


基本上 Apache 顶级项目平均下来,它的毕业时间一般都在一年到一年半左右,而毕业只是代表开源项目刚刚开始。一个好的开源项目像 linux 这些,基本上动辄是十年,都要十年以上才能成为特别好的项目。如果没有想把项目做得很持久的话,你就不要做开源项目。这是长久的事情,它不像工作还跳个槽一旦你承诺出去了,那么多用户在使用,它是跟着你一辈子的事。做 PMC 作为主导者,你要有非常长的时间参与在项目上,而不是一时兴起,大概做两年或半年就不做了。好的开源项目,一定要坚持很长时间,要辛苦付出很长时间,才能成为伟大的开源项目。


Q3.为什么会投身开源?


我最早在 Teradata (天睿) 和 IBM 工作时发现,很多软件都会有局限性。Teradate 当时是全球最强大的 MPP 架构的数据库,在那个年代绝对 No.1,现在很多地方依然还跑不过 30 年前的这个架构,但是你会发现它的迭代速度和使用方法还是受到局限,很多的需求没有办法快速响应。客户这边很好的想法,也没有办法去贡献出来。在后来我待过的企业方,不论是中金、万达还是联想,我都有发现这些问题。所以到万达和联想的时候就开始投入开源。一方面,自己去使用更多的开源,另一方面也把我们的一些使用技巧和问题提交给开源社区。


后来到易观这家公司也非常支持开源,会有各种各样的开源项目。整个基于 Apache 构建了大数据平台这套东西,同时也 commit 了一些代码回去。我发现在开源领域里,你的付出越多,获得就越多。我组织了几个社区后,会发现当一些用户给你感谢的时候,真会觉得前面的辛苦都值得了。那种获得感不是给你多少钱或者多少名誉可以比拟的。我记忆特别深刻是在做 ClickHouse 社区的时候,有个公安局的人,当时他们要处理很多复杂的互联网数据时用了 20 多台的 hadoop 都不能解决问题,他们领导也非常着急,用了我们的工具一台机器就把问题全都解决了。他特别感谢我们,让他知道了有这么好的东西又解决了问题,现在还经常跟我们来互动。这种成就感是每位开源人心里最后都非常珍惜且自豪的。


Q4. 开源在中国的发展情况


中国的开源发展其实还比较早期,但速度非常快。因为我一直在中国做开源,可能在五年前我们做开源项目时很少有人会 contribute 代码,大家都只是用。有人说“中国只有免费,没有开源”;“大家都只是把树都砍了,也不再种树”。那这几年会发现,越来越多的开发者去参与到整个开发里面来了,像 DolphinScheduler 现在 80%到 90 的代码都不是我们这些核心人员开发的,都是别人贡献给的,也有更多的开源项目在中国生根发芽


中国到了开源井喷的时代,因为我们有非常多的“用户的场景”。互联网在中国发展的非常快,像抖音、头条这些已经全世界领先了。我们的场景需求特别的旺盛,很多创新的想法也都在中国、在互联网圈里面先实现,各种各样的需求往往很难用一家公司的东西解决掉,所以会出现开源项目去满足。


另一方面,中国的技术开发者现在也越来越多。供给者和需求方两边都很旺盛,中间势必就会出现许多开源项目。开源组织者把两边的供需通过开源的方式组织起来,这种模式很明显的最近一两年,在中国增长得非常快。同时,对比全球 Apache 的顶级项目和中国的数量差异,你会发现国外做开源的玩法已经很成熟了。因为他们原来最早有很多开发者,也有很多需求,先通过开源的方式把它串起来。但中国刚刚起步,开源的空间还非常大,需要有更好的开源组织、有经验的人来传授经验,把开源项目做起来。


我觉得未来几年中国的开源会蓬勃发展起来,同时中国对世界的开源项目影响力也会越来越大。中国互联网比较发达,场景也很复杂,中国的人口很多。就像 Apache DolphinScheduler 动辄十万、几十万的任务,这对老外来讲都很难想象,而这样的项目经过中国这种大数据量、大人口、高并发的锤炼,势必在满足海外一些需求时就更加的稳定。高维打低维嘛,它会把中国先进互联网 to C 的理念转变成一些开源项目 to B 的经验,再把 to B 的开源项目给海外进行输出 。我觉得这是中国开源会发展得非常快的地方,供需两盛很多需求很多场景只有中国有,所以打磨出来的项目一般都很厉害,然后再给全球去提供服务。


Q5. 推荐的书


我挺喜欢 Ray Dalio 写的《原则》,说的是任何事情它最好的状态是一台机器,有很多的 principle。把输入放进来,然后根据规则就能有很好的输出。其实做开源社区也是这样,有很多把这件事做好的规则,你得把它逐步地总结起来,才能把社区逐一做好。


第二本是霍夫曼写的叫《穿越寒冬》,也很有意思。对于做开源社区来讲,它其实也告诉你怎么建立一个组织、怎么让这个组织给更多人知道、怎么 organize 组织做得更好。尽管没有直接从开源建设、开发者吸引的角度剖析,但我们可以类比,切换到开源社区的模式,了解怎么获得市场的眼球、宣传公司的项目、怎么能找到那些开发者、怎么组织他们去做开发。



/// 关于 Apache DolphinScheduler ///

Apache DolphinScheduler 是一个分布式、易扩展并带有强大可视化界面的大数据工作流调度平台。已在 400+ 家公司的生产环境上稳定运行,致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用。

/// 关于 OpenTEKr 开源星系 ///

OpenTEKr 开源星系(Open Source Galaxy, OSG)是 OpenTEKr 基金会旗下聚焦赋能开源技术社区和开发者的组织,力求聚合最前沿的开源技术力量,汇聚开源思想领袖和技术极客,推动整体开源开放科技的研发和合作交流,培育开源人才,推广先进的开源治理模式。


关注我们

官网:

http://www.opentekr.org(在筹) 、http://www.opentekr.com


国内:

微信:OpenTEKr (服务号) OT_OpenSourceGalaxy(订阅号) OpenTEKr 开源产业联盟(订阅号)

微博:OpenTEKr

B 站:https://space.bilibili.com/1177021647

知乎:https://www.zhihu.com/people/opentekr


海外:

LinkedIn:https://www.linkedin.com/company/opentekr

Twitter:https://twitter.com/kr_open

Youtube:https://www.youtube.com/channel/opentekr

Medium:https://medium.com/@OpenTEKr

Github: https://github.com/OpenTEKr

发布于: 19 小时前
用户头像

OpenTEKr

关注

以开源开放为理念,推动科技文明共同体。 2021.11.11 加入

OpenTEKr 是一家以推广开源软件和开放硬件技术为核心的开放式非营利组织,致力于构建可持续发展的开放科技生态圈。我们基于“众有、众享、众治”的信念,依循「自由与规则同在,免费与商业共生」的原则。

评论

发布
暂无评论
Apache 海豚调度 PMC 郭炜:开源,不是天才的甜点,而是执着者的盛宴 I OpenTEKr 大话开源 Vol.7