2月14日, OSCHINA 和 Gitee 共同发布了《2021 中国开源开发者年度报告》。结合开源开发者问卷调查和针对 Gitee 平台的数据分析,以及行业观察等方式,本报告分为四大模块:开发者画像趋势、技术领域趋势、开源项目社区健康趋势、国内开源行业整体趋势。
下面是节选内容:
接触开源的时间
开源在国内流行实际上时间不算长,超过 70% 的开发者参与开源时间在 5 年以下,但有 8.6% 的受访者接触开源时间超过 10 年,这个结果还是出乎意料的。
目前参与开源有没有收入
在有收入的群体中,占比最多的是开发者以企业员工身份参与开源后获得的工资收入,仅有 4.7% 的开发者会从自己的开源项目中获得项目商业化的收入。这几个结果可能并没有出乎大多数人的意料,当前开源参与者经济上难以得到理想回报的问题实际上是国际国内都普遍存在的;另一方面,这也跟大部分开源参与者以兴趣驱动,仅仅利用业余时间少量参与开源有关,“接近 60% 的人每周花在开源上的时间仅为 1-2 小时”的结果也正匹配了这一点。
大多数情况下你使用开源软件的场景是
工作与非工作场景下开发/使用开源软件的情况大约各占一半,看得出来开源不仅是工作需要,也与开发者个人日常生活关系紧密。
项目的使用成本、源代码质量以及社区是否足够活跃和健康是企业使用开源软件时最关心的,而经济成本的考虑只排在了第四位。同时,企业在选择开源软件时,会更多地考虑软件对自身的适用性,不会过分迷信“大厂光环”、开源基金会或商业开源公司。
编程语言趋势
Java 在国内仍然是使用最广泛的语言,主要应用于 Android 应用的开发与后端应用开发。在 Gitee 2021 年新增的开源项目中,使用 Java 语言的占比超过 56%。Java 仍保持着强大的竞争力,面对来势汹汹的新语言也毫不示弱。虽然谷歌近两年来“Kotlin First”的战略对 Java 来说是一大挑战(开发 Android 应用,Kotlin 成为了与 Java 一样的一级语言),但 Java 仓库数量在极高存量的情况下仍有不错的增长态势。
历年 Top 10 语言趋势
从 2013 年 Gitee 上线后各仓库使用语言的排名情况来看,Java 在八年时间中均保持前列,仅在 2016 年被势头强劲的 Golang 夺取过一次占比最多的位置;Python 由于近两年的重新火热,占比排名也在稳步上升;而 Objective-C 和 Ruby 这两个老牌语言由于新语言的快速发展,导致竞争力在逐年下滑。
近几年 Android 使用情况也在不断下降,这主要是受到了近两年爆发的大前端趋势的影响( Android 严格而言不是编程语言,本质上反映的主要是 Java 与 Kotlin 语言)。微信小程序、百度智能小程序、阿里小程序(支付宝、钉钉等)、快应用、混合、PWA 与 WebAssembly 等各种大前端技术在近两年争相进入落地期,催生出各种跨端方案,使得大前端热闹异常。聚焦到移动开发,由于这些技术解放了对底层平台的限制,移动开发不再局限于 Android 与 iOS 这样的特定端,许多开发者不再需要开发“移动 App”,直接用跨端框架开发“小程序”不仅更加便捷,对企业而言也是能够大幅降低研发和运维成本的性价比之选。
增速最快语言
在 Gitee 2021 年所有新增仓库使用的语言中,Erlang 以 226.85% 的增长率排在的第一位。同时,Rust 连续三年保持高速增长,增长率均超过 110%,值得一提的是,今年 Rust 语言终于有了自己的基金会,在华为、微软与谷歌等大企业进一步的推动下,相信 Rust 将持续突破。2021 年基础软件在国内热度持续走高,Verilog 也连续两年出现在了增速最快语言榜单中。作为前端领域热度逐年增多的语言,TypeScript 连续三年入选增速最快语言,其在 Gitee 所有仓库中采用语言的占比也在逐年上升,2021 年已经来到了第 13 位。
新语言来势汹汹,老语言仍有活力
传统编程语言在行业应用中占有重要地位。近年来,在数据挖掘、人工智能、物联网等领域,相关编程语言蓬勃发展,保持活力,比如 Python 语言自 2018 年开始就保持高速增长态势。在新势力语言中,Rust 和 Kotlin 获得较高关注,增长趋势有望超过传统语言;同时,一些古老的语言并没有被遗忘,譬如采用 Fortran 和 Prolog 作为主要语言的仓库每年仍在不断增加中。
后台管理、底层组件和基础硬件相关领域最受关注
从 Gitee 上 2021 年用户 Star过的开源项目所在领域的分布来看,后台管理框架相关领域的开源项目依然最受开发者关注,占比超过了样本数的 5%,位居其后的是底层组件和芯片开发,占比分别为 3.01% 和 2.59%。
在新基建政策的倡导下,国家层面的支持也吸引了诸多开发者对基础技术领域的关注,从数据结果来看,底层组件与基础硬件相关(如芯片开发智能硬件等)领域的增长让国家底层技术的未来值得期待。
具体到项目上来看,以下五个项目是后台管理框架年度新增 Star 数量最多的项目,也意味着这些项目是在开发者群体中使用较多的项目。
2021 年由国人主导的开源项目融投资情况
- 2月:一流科技宣布完成 5000 万 A 轮融资,其核心产品为深度学习框架 OneFlow。
- 4月:开源数据管理与分析厂商 Kyligence 获 7000 万美元 D 轮融资。
- 5月:开源物联网大数据平台 TDengine 开发商涛思数据完成 4700 万美元 B 轮融资;数据库中间件 ShardingSphere 团队成员组建的商业公司 SphereEx 完成数百万美元天使轮融资。
- 6月:来自中国的 APISIX 开发商支流科技完成数百万美元 A+ 轮融资。
- 7月:主推面向 TP 业务实时数据服务平台的 Tapdata(深圳钛铂数据有限公司),宣布完成数千万美元 PreA 及 PreA+ 连续两轮融资;云原生软件交付服务商 KodeRover 于 7 月中旬完成其核心产品 Zadig 100% 开源,同时宣布完成数千万元人民币天使+轮融资。
- 8月:国内 RISC-V 开源芯片企业赛昉科技完成 A+ 轮融资,累积融资金额超 10 亿元。
- 9月:PaaS 平台服务商杭州端点网络科技有限公司宣布完成 6 亿人民币的 B 轮融资。
- 10月:云原生批流融合数据平台 StreamNative 宣布获得 2300 万美元 A 轮融资。
- 11月:开源神经搜索公司 Jina AI 宣布完成 3000 万美元 A 轮融资。
开源协议使用规范问题
值得提出的是,国内企业和开发者对于开源协议的认识不够,尤其是在面对一些强传染性的 Copyleft 许可证时,不能正确使用和有效应对风险。
不过我们也欣喜地看到,一些协议使用不规范的情况被指出后,当事方能虚心接受并立即改正错误,如某公司错误地在 Apache 2.0 协议中另加条款,被指出后及时整改;某智能设备制造商在违反 GPLv2 规范后,也及时更正。
2021 年 4 月,罗盒公司诉风灵公司案成为我国首例明确开源许可证规则的案件,法院明确指出 GPLv3 协议是一种民事法律行为,具有合同性质。这一进展也在督促国内各个涉及开源软件的主体,去规范使用开源协议。
典型健康开源项目社区
- Apache DolphinScheduler 社区:Apache DolphinScheduler 是一个新一代分布式大数据工作流任务调度系统,致力于“解决大数据任务之间错综复杂的依赖关系,整个数据处理开箱即用”。
- Apache ECharts 社区:Apache ECharts 是一款基于 JavaScript 的数据可视化图表库,提供直观、生动、可交互、可个性化定制的数据可视化图表。
- Apache Linkis 社区:Apache Linkis 是微众银行开源的大数据计算中间件,上层应用只需对接 Linkis 提供的标准接口,就能连接到 MySQL/Spark/Hive/Presto/Flink 等各种底层计算存储引擎,并实现上层应用间的互通。
- Apache RocketMQ 社区:RocketMQ 是一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。
- 蓝鲸智云配置平台社区:蓝鲸配置平台(bk-cmdb)是一款面向资产与应用的 CMDB,致力于为企业 IT 自动化运维和 DevOps 的落地提供最基础的元数据;结合自动化的数据采集、管理、消费能力,将企业应用的配置数据和资产数据进行深度融合,形成一套可自生长的、面向应用的 CMDB。
- MindSpore 社区:MindSpore 是一种适用于端边云场景的新型开源深度学习训练/推理框架,旨在提升数据科学家和算法工程师的开发体验,并为 Ascend AI 处理器提供原生支持,以及软硬件协同优化。
- OceanBase 社区:OceanBase 数据库是蚂蚁集团自主研发的原生分布式关系数据库,提供金融级高可用和线性伸缩能力,不依赖特定硬件架构,具备高可用、线性扩展、高性能、低成本等核心技术优势。
- SOFAStack 社区:SOFAStack 是蚂蚁金服自主研发的金融级分布式架构,包含了构建金融级云原生架构所需的各个组件,是在金融场景里锤炼出来的优秀实践。
—END—
数据来源:《2021 中国开源开发者报告》
完整报告:
https://talk.gitee.com/report/china-open-source-2021-annual-report.pdf