“All in Cloud”之后,和你聊聊「云原生DevOps的Kubernetes技巧」 了解详情
写点什么

当开源遇见 KPI,全球化 VS 本土化,开源的理想与现实该如何和解?

  • 2022 年 5 月 11 日
  • 本文字数:3873 字

    阅读完需:约 13 分钟

当开源遇见 KPI,全球化 VS 本土化,开源的理想与现实该如何和解?

最近几年,开源在全球蓬勃发展:一方面,越来越多人投身于开源生态中,除了开发者,不懂代码的人也能为开源社区做贡献;另一方面,开源贡献的形式更多元,不再拘泥于写代码,文档贡献、开源布道也是建设开源生态的重要动作。


开源生态日渐庞大的同时,也给开发者和企业带来了新的思考:「KPI 开源」是不是错的?做开源,企业和个人谁主导更具有优势?开源协议能不能保护好开发者或者开源项目的权益?开源「本土化」应该怎么理解、怎么做?……


本期《WeOpen Talk》,腾源会与 InfoQ 共同邀请中国信通院云大所云计算部副主任,腾源会导师郭雪、清华大学软件学院助理研究员,Apache IoTDB  PMC Chair,腾源会特聘专家黄向东以及 SphereEX 公司创始人兼 CEO,Apache ShardingSphere PMC Chair,腾源会导师张亮三位老师,共同探讨这些问题。

00:00 / 00:00
    1.0x
    • 2.0x
    • 1.5x
    • 1.25x
    • 1.0x
    • 0.5x
    网页全屏
    全屏
    00:00

    一、「KPI 开源」真的一无是处?


    企业越来越重视开源了,最明显的一个表现是,将开源项目相关的指标列入到 KPI 的考核中。同时,「KPI 开源」一度成为程序员「口诛笔伐」的对象,其主要原因是:其不符合开源精神,而且对企业的资源造成了严重浪费。那么,「KPI 开源」真的一无是处吗?


    首先,KPI 开源仅是一种考核的形式,而其中的考核指标是什么,更为重要。如果只是将 Star、Fork 等数量列为考核指标,极有可能只得到这些数据的增长。「如果能定义出更加理智的考核标准,比如将英文文档的覆盖率由原来的 60% 提升到 80%,我相信这是一个很好的 KPI」清华大学软件学院助理研究员,Apache IoTDB  PMC Chair 黄向东表示。


    「开源最大的难度不在于上述的那些指标和数据,而在于项目有多少人使用;公司的决策者也应该认识到,开源项目不是一天就能建成的,而是需要一段静默期去成长。正确的认识开源项目的意义和成长路径,才能避免盲目制定 KPI 指标。」SphereEX 公司创始人兼 CEO,Apache ShardingSphere PMC Chair,腾源会导师张亮总结道。


    其次,企业对 KPI 开源的重视,对行业而言,也释放出积极信号——企业正在重视开源。中国信通院云大所云计算部副主任,腾源会导师郭雪表示,制定 KPI 之后,可能不会使开源项目成为高质量或者有技术创新的项目,但会提升行业对开源的认知度。


    如今,「KPI 开源」已经不是企业的专属,开源社区以及个人也都可能是「KPI 开源」的实施者或助推者。黄向东老师回忆:「去年有段时间,国际上有一个『Give me a T-shirt』的活动,只要给开源社区贡献代码,就能收到一件 T 恤。活动期间,我在社区(IoTDB)中注意到,一个外国人在某一个文件的末尾加了一行回车,然而这个回车没有任何的意义。所以说,这样错误的做法也会干扰开源社区的正常运转」。


    总的来说,「KPI 开源」在为团队制定目标、集中资源进行开源上,是有正向作用的,但如果将其做成只看 Star、Fork 数的「表面开源」,盲目制定 KPI,那么即使投入人力与时间,也无法打造出一个优质的开源项目。

    二、开源该由个人驱动还是企业驱动?


    企业做开源可能会出现「KPI 开源」,而开源项目中,很少有专职做开源项目的开发者,更多人是为企业的开源项目做贡献,或者在工作之余出于兴趣做开源。那么,企业驱动和个人驱动的开源优劣势体现在哪,谁的优势更大?


    作为开源生态中两个重要的参与主体,个人和企业在开源中都有明显的优势。「企业侧参与开源,能够给开源提供长期稳定的支持,而个人侧的开源项目,则充分调动了个人的参与,更容易产生技术创新」郭雪解释道。


    但是,企业对开源项目的支持,也是一把「双刃剑」。开源项目需要避免对企业的过度依赖。黄向东举例说:「Apache 有一个项目叫作 PLC4X,该项目需要从工业设备上采集数据,在工业设备非常昂贵而且没有企业支持的情况下,就需要个人解决这些事情,但如果是企业侧发起的项目,这些问题就很容易解决了;但是如果开源项目不够开放,只有一个企业来主导,那么在企业面临战略转型时,项目就会面临很大的风险」。


    总的来说,个人和企业在开源方面的优势是互有补充的:在开放的开源项目中,企业能给项目提供更多的支持,使个人能探索更多的技术突破,形成良性循环。「当企业由于商业原因,不再对开源项目投入时,开源项目会面临危机;但是当企业的开源项目在商业计划中时,那么将给开源项目提供底线保障」张亮总结道。


    因此,对于开源项目的创始人来说,参与别人的开源项目,同时也允许其他人来共创自己的开源项目,这一点非常重要。从某种意义上,这样能够同时接纳个人和企业的智慧和长处,让开源项目和社区更有生命力。

    三、开源协议对开发者是保护还是限制?


    开源让大家免于「重复造轮子」,但由于开源大多数情况下是偏个人的行为,而且每个人对于开源的认知也不完全统一,因此,开源的发展也伴随着争议和纠纷。开源工作者的利益谁来保障?开源与商业化如何平衡?……目前已经有一些开源协议供开发者选择,其实际使用情况如何?是否真的有用呢?


    「由于开源协议是偏法律的语言,所以它不是很好理解,而且不同协议的条款乍一看非常相似。」谈到开源协议,黄向东是这样评价的,同时他也表示,目前大家普遍不关注开源项目的许可证,开发者需要一个学习开源协议的入口,以提升他们对开源协议的认知。


    但是对于开发者而言,大家更加关注技术,学习开源协议是一件「可以但没必要」的事情。再加上,在开源项目初期大家很难预测项目未来的发展,认真研究开源协议之后选择与盲选一个短期看差别并不大。


    那么在初期,开源项目应该如何选择协议?张亮为不了解开源协议的开发者们提供了一个思路。他认为,开源协议的选择可能与人的性格有关,有的人很极客,讨厌商业,那么选择 GPL 就好了;有的人希望给项目提供更多的可能,那么可以选择宽松的协议,例如 BSD;有的人比较中立,希望对商业和开源都有一定程度的保护,那么像 Apache 这样的协议更合适。


    事实上,为了保险起见,在选择开源协议时,大家更倾向于能同时保护开源和商业权益的中立协议。郭雪说,信通院曾经调研过全球的开源项目,开发者们更愿意选择友好型的协议,在国内,Apache License 是最受欢迎的许可证之一,一方面是如前文所说,其具有中立性质,而另一方面,与其他的许可证相比,Apache License 在在专利授予等方面的规范性上更强,能帮助开源项目规避更多的坑。


    除了开源协议之外,政策规范也是让开源生态更好的一种方式。去年,人民银行办公厅、中央网信办秘书局等五部门联合发布了《关于规范金融业开源技术应用与发展的意见》,促进开源技术的健康可持续发展,这不仅是传统行业正在进入开源生态的信号,也对规范开源、合规使用提出了更高的要求。


    除了开源协议与政策之外,还有一些机制也需要补足,例如开源领域的合规性维权。黄向东讲述了一个真实的案例,由于每年的毕业生都要写毕业论文,而毕业论文的格式的要求又很严格,因此清华内部有一个团体维护了一个 Latex(一种排版软件)模板,大家只需要在这个软件中写文档就不会出错了。然而前不久,另外一个团队说他们自己开发了一个开题报告模板,而实际上这个模板仅仅是对 Latex 进行了删减改动,因此,Latex 的维护成员在朋友圈发起了维权。虽然 Latex 在清华的学生中使用很广泛,但是其作者只能通过朋友圈和 GitHub 库中发声。


    「我们需要一些维权或者咨询的渠道,帮助开源工作者在遇到不合规事情时,有保护合法权益的途径,这对开源生态也会是一个好的增益」黄向东强调。

    四、「本土化」违背开源精神了吗?


    在开源生态中,出于开放分享的共识,「本土化」成为了一个颇具争议的话题。一部分开源人认为,「本土化」和开源精神相悖;也有人认为,无论是项目本土化还是社区的本土化,都是有一定意义的。

    针对前一种说法,其实开源的「本土化」和「全球化」不是非此即彼的矛盾状态,因此和「本土化」与开源精神也并不相悖。黄向东提到,开源项目坚持本土化的同时,也要坚持国际化即技术输出,形成国际的实施标准比成为国内的实施标准意义更大。


    针对后一种说法,项目本土化及社区本土化都是有意义的,尤其后者对开源的发展意义更大。「社区的本土化能够帮助本地人减少语言层面的障碍,拿到更易懂的资料」黄向东表示。张亮进一步补充了自己的看法,他表示:「一个全球化的项目在本土化之后,大家能够拿到它的源代码、使用所有的文档来 Quick start,这是一件非常好的事情。开源项目的本土化不是按地域隔离,而是为开源项目在每个地域的成长创造更便利的条件,像 Apache Local Community(ALC)就能够帮助本地人接触开源项目」。


    所以说,跨语言的沟通和交流,是开源工作者面对的共同问题。目前支持跨国沟通的方式已经有很多了,作为 IoTDB PMC Chair,黄向东观察到,目前在 IoTDB 中,国际上的交流经常使用 Slack、MailList 等方式,对于国内用户而言,大家会更习惯用微信群和 QQ 群进行交流,而外国用户也能通过微信自带的翻译功能,用他们的母语与国内用户交流,让开源社区滚动得更大。


    当然仅仅依靠工具交流是不够的,社区中也需要能够翻译的文档贡献者,把中文的材料翻译成其他语言,或者将其他语言的材料翻译成中文。黄向东强调:「本土化这件事应该是双向的,而不应该是单向的,文档语言的快速迭代,能够让更多人参与到开源社区中」。这样的开源生态将容纳非代码贡献者,让更多人可以了解开源,成为开源贡献者。


    「开源的本土化,最终还是会走向全球化的发展趋势」郭雪总结说。

    写在最后


    开源领域虽存在争议,但开源精神所带来的价值难以估量。如今,开源协议与法规正在完善,除了代码贡献者之外,文档贡献者、布道师等越来越多角色也可以通过开源项目、组织和社区,加入到开源生态中。未来开源生态中的不同角色会碰撞出怎样的火花,带来哪些技术创新,我们正翘首以待。

    2022 年 5 月 11 日 16:181314

    评论

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

    工业区块链正在改变什么?

    CECBC

    环保

    程序员如何解决中年危机?我的阿里春招之路分享,顺利通过阿里Android岗面试

    欢喜学安卓

    android 程序员 面试 移动开发

    Kafka实战宝典:Kafka的控制器controller详解

    数据社

    kafka 七日更

    安全管理 | 前后端方案详解:Vue/SpringBoot+SpringSecurity+JWT

    梁龙先森

    大前端 springboot springsecurity JWT 七日更

    架构师训练营第 1 期 week13

    张建亮

    极客大学架构师训练营

    利用Python进行数据分析(原书第2版)免费下载

    计算机与AI

    Python 数据分析 数据科学

    生产环境全链路压测建设历程12:通过生产压测发现的问题摘录

    数列科技杨德华

    全链路压测

    星环科技自动特征工程论文被ICA3PP2020接收

    星环科技

    AI 数据集

    全球最火的程序员学习路线!2020年GitHub上那些优秀Android开源库总结,吊打面试官系列!

    欢喜学安卓

    android 程序员 面试 移动开发

    直播报名 | 携程技术沙龙——前端测试技术创新与实践

    携程技术中心

    AI 数据分析

    架构师 3 期 3 班 -week4- 总结

    zbest

    总结 week4

    波场链智能合约软件系统开发|波场链智能合约APP开发

    系统开发

    复盘node项目中遇到的13+常见问题和解决方案

    徐小夕

    Java node.js 大前端 nodejs

    QoS简介

    架构师训练营第 1 期 week13 总结

    张建亮

    极客大学架构师训练营

    完美!凭借这份阿里大佬分享的4170页Java高手真经笔记!offer拿到手软

    Java~~~

    Java 程序员 编程语言 电子书 架构资料

    Rancher开源Harvester:基于K8S的超融合基础架构软件

    Rancher

    Kubernetes rancher

    测开之数据类型· 第3篇《列表推导式、字典推导式、2种方式创建生成器》

    无个性不签名

    测试开发

    对于传统供热系统来说,转型智慧供热需要哪些条件?

    一只数据鲸鱼

    物联网 数据可视化 供暖系统 3D

    技术选型背后的国家利益:区块链自主化道路的交锋

    CECBC

    科技

    甲方日常 70

    句子

    工作 随笔杂谈 日常

    阅站无数!不过我只推荐下面这些

    cxuan

    推荐 网站

    ES6中的Promise和Generator详解

    程序那些事

    新特性 ES6 Promise 程序那些事 Generator

    Superset 助力企业级大数据 Ad-hoc 查询

    麻婆豆腐没麻婆

    数据分析 Apache Superset BI数美

    网易区块链打造可信数字身份认证应用新场景,赋能科技峰会

    CECBC

    数字身份

    TeamLeader不可不知的三种团队建设形式

    Alan

    团队管理 个人成长 28天写作

    架构之书:我们从何处来?我们是谁?我们向何处去?

    lidaobing

    架构 编程的未来

    游戏服务器多钱一个月呢?

    德胜网络-阳

    【智简联接,万物互联】华为云·云享专家董昕:Serverless和微服务下, IoT的变革蓄势待发

    华为云开发者社区

    Serverless 物联网 IoT

    闭嘴,别再问什么是锁了

    程序员老猫

    乐观锁 悲观锁 分布式锁 java锁 公平锁

    re:Invent 重磅回顾 | AWS 重塑机器学习的四大亮点,触及每一位 AI 工作者

    亚马逊云科技 (Amazon Web Services)

    云计算 AWS

    当开源遇见 KPI,全球化 VS 本土化,开源的理想与现实该如何和解?_文化 & 方法_任传英_InfoQ精选文章