现在有越来越多的公司都参与了开源,其背后有各自的目的所在,姑且不予讨论。本文是从多个方面分析各大公司在开源上的投入情况。由于全世界绝大多数的开源项目都有发布到Github上,因此本文将会基于GitHub的数据进行分析。2019还没有结束,本文先回顾一下2018年的各项指标,从以下几个方面进行分析:

  • 2018哪些主要的公司参与了GitHub开源贡献
  • 2018这些主要的公司分别有多少人参与了GitHub开源贡献
  • 2018这些主要的公司分别参与贡献了多少个开源项目
  • 2018年这些主要的公司贡献的开源项目中,有哪些是比较有代表性的
  • 2018年这些主要的公司在的开源项一些代表性的项目中,都有多少人参与
  • 2018这些主要的公司参与贡献的所有项目累计star数量是多少

相信通过以上的这些指标,就能够大致大判断出每个公司在GitHub上的贡献情况。

OK,关于如何获取Github上所有相关仓库数据,相信看过我一系列分析GitHub开源文章的同学都已经知道,再啰嗦一下,链接见这里。当然自己可以写SQL语句查询,但是发现fh大神已经将这些数据过滤存储到2018_top_contributors数据表中。站在巨人的肩膀上,没有必要再重复的查询,我们直接分析一下该表即可,如下图是我截取的表中包含国内BAT三家公司排名的部分数据,作为概览:

当然其编写的SQL语句(Details部分)还是有点小复杂,感兴趣的可以自行学习下,具体的SQL过滤语句我就不多说的。

原理背景知识

如果你使用过git的话,一般会要求你配置用户名和邮箱,做为commit提交时候的用户记录。因此可以根据邮箱名统计该用户属于哪个公司。比如microsoft.com可以作为微软公司内部邮箱标识,google.com可以标识谷歌,amazon.com可以标识亚马逊,国内例如alibaba-inc.com可以标识阿里,baidu.com可以标识百度。因为公司参与开源项目也是有目的,有的是未来的一个布局,有的可能仅仅是公司内部的KPI考核。因此以公司邮箱提交的代码往往表示的是这个公司支持的开源,也可以看做该公司的在开源的贡献。但是有的大公司所推出的公共邮箱服务需要注意,往往是以个人名义参与项目时候的用户信息会填写如gmail.com,outlook.com,yahoo.com,hotmail.com,qq.com,163.com,foxmail.com,126.com这些公共邮箱,不能作为公司的统计。

这些主要的公司有多少人参与了GitHub开源的贡献

下图是2018年度公司GitHub上贡献人数超过30人的前20名。

哪些主要的公司参与了GitHub开源贡献

可以看到上表一共统计出了95个公司,业界知名的公司都有包括,以下是这95个公司按照员工投入数量的排名词云图:

  1. 如果按照员工数量的排名,2018自微软员工参与GitHub开源的最多,共计1717名用户参与了push活动。当然还包括谷歌,redhat,ibm等诸多公司。
  2. 可以看到前二十名的公司都有超过100人参与了2018年年度的GitHub开源贡献,说明在开源上各大公司还是投入了相当多的人力。
  3. 百度,阿里,腾讯,在Github开源中投入了100+的人力,排名也很接近,不排除各家之间暗自竞争。
  4. 在我以前的文章中也总是提到伯克利这个学校在所有的教育机构中,github上的投入排名位居榜首。

这些主要的公司分别参与贡献了多少个开源项目

投入的人力是一方面的指标,参与项目的数量也可以作为一个参考,如下表:

  1. 如果按照每个公司参与的项目数量排序的话,谷歌公司共计参与了1543个项目,微软参与了1295个项目,远远领先于其他公司。
  2. dependabot出现在了前十名,并且员工个数如此至少,基本上平均每个人参与了很多的项目。
  3. 如果计算每个项目上各个公司平均投入了多少人力,会发现基本都是1。也就是说每个项目都是一个人在维护。

但是如果按照每个人平均参与的项目数量进行排名,则会得到下图所示的结果:

可以发现,排名靠前的都是一些不太出名的机构和公司。这个指标是否可以说明一个问题:虽然像google这样的大公司参与了很多的开源项目,但是很多的项目可能并没有参与实质性的贡献,可能只是提交了一些注释等方面的解释性信息。

这些主要的公司贡献了哪些比较出名的开源项目

由于每家公司都参与了很多的开源项目,比如微软和谷歌2018年度都参与了上千个开源项目,不可能罗列出所有的项目。同时上述分析了,其参与的很多项目有的并不是主要贡献人员。因此需要选取一些比较具有代表性项目。统计每个公司参与的所有项目2018年度star数量,用以表征这个项目的火爆程度,并选取star数量最多的前三名,如下图:

  1. 通常来说这种火热的项目背后都是某个大公司支持的,如果某个公司的员工参与进来,说明该项目对于该公司具有一定的价值。
  2. 比如微软2018参与的所有项目中,最火的包括了自家的vscode以及TypeScript。
  3. google参与的项目中也有自家的tensorflow,以及目前主推的flutter等,投入人力数量可见其重视程度。
  4. rehat参与的kubernetes虽然不是自家的产品,但是rehat在kubernetes的贡献仅次于其发布者google,只有两个人倒是出乎意料。
  5. FB的react以及pytorch都是当下火热的项目,也是其当家开源产品,而且都投入了不少的人力。
  6. 其实你会发现一个现象,就是各个公司前三的项目,重合的概率非常的小,说明各公司还都是专注自己的领域。因为一旦一个微软帐号贡献了tensorflow,那么top3中就有tensorflow,因为该项目的star数是很多的。

由于篇幅有限,无法将每个公司参与的具有代表性的开源项目一一列举,我这里面绘制了这95家公司每一家所贡献项目中star数排名前3名的项目词云,并按照2018年的star数量统一排名,如下图:

可以看到上述词云基本能够反映出时下火热的技术方向,包括可以flutter、react、tensorflow、pytorch、kubernetes、vscode、node等项目,其实也是说明了技术的导向基本是这些大公司推动的。

如果按照每个项目各公司参与人数排名,绘制得到的词云图如下:

1,可以看到很多项目投入的人数基本相差不大,因为投入最多的edx-platform项目为66人,其他的主流项目基本都在20+。
2,投入的人数较多可以说明的是该项目目前还在频繁迭代中已经公司的重视程度。更多内容可以查看2018_top_contributors数据表。

2018这些主要的公司参与贡献的所有项目累计star数量是多少

每家公司参与项目所有累计的star数量前20如下表:

95家公司每家公司参与项目在2018年度所有累计的star数量排名词云:

  1. 因为star数量表示的是一个项目的火爆程度,这个排名我觉的可以用来衡量一家公司在开源领域的影响力。
  2. 像google在2018年贡献的所有项目star总量为858566,微软为418351,FB为298144,数量非常之大,是否可以说明这些公司在引领开源。
  3. 国内的BAT也都排进前20,说明国内企业的影响力在进一步提高。

综上来说,目前开源领域还是以微软,谷歌,rehat等公司贡献较多,这些贡献也意味着未来一些领域的话语权。

本文为CSDN村中少年原创文章,转载记得加上原创出处,博主链接这里。

各大公司在GitHub上开源投入排名分析相关推荐

  1. Google、微软、阿里、腾讯、百度这些大公司在GitHub上开源投入排名分析 | CSDN原力计划...

    扫码参与CSDN"原力计划" 作者 | 村中少年 来源 | CSDN原力计划获奖作品 现在有越来越多的公司都参与了开源,其背后有各自的目的所在,姑且不予讨论.本文是从多个方面分析各 ...

  2. 大公司在Github的开源代码

    最近开始学着使用github,对于我这个菜鸟来说看懂这个英文网站已经很不容易.网上无意看到一篇文章,感觉很好,现转载.希望自己有时间有能力去读读开源代码,也希望不仅仅是用别人的东西,自己可以为开源贡献 ...

  3. 各大公司在github的开源代码

    Alibaba(阿里巴巴):阿里巴巴网络技术有限公司(简称:阿里巴巴集团)是以曾担任英语教师的马云为首的18人,于1999年在中国杭州创立. https://github.com/alibaba 例如 ...

  4. GitHub 上开源哪家强?| 原力计划

    作者 | 村中少年 责编 | 屠敏 出品 | CSDN 博客 现在有越来越多的公司都参与了开源,其背后有各自的目的所在,姑且不予讨论.本文是从多个方面分析各大公司在开源上的投入情况.由于全世界绝大多数 ...

  5. B 站硬件大佬在 GitHub 上开源了一款神器

    转自量子位 野生钢铁侠稚晖君在 GitHub 上开源了一个硬核项目. 上次自制纯手工打造 AI 小电视,播放量就超过 300 万,还登上了 b 站首页. 可能有些朋友对他还有点陌生. 他毕业于电子科大 ...

  6. B 站硬件大佬又在 GitHub 上开源了一款神器...

    公众号关注 "GitHubDaily" 设为 "星标",每天带你逛 GitHub! 转自量子位 这次,野生钢铁侠稚晖君带着他的硬核项目又来了. 上次自制纯手工打 ...

  7. GitHub上开源的YOLOv5

    GitHub上开源的YOLOv5 代码地址:https://github.com/ultralytics/YOLOv5 该存储库代表Ultralytics对未来的对象检测方法的开源研究,并结合了我们在 ...

  8. github上 开源项目_在GitHub上组织开源项目的工作流程的3个技巧

    github上 开源项目 管理开源项目是一项艰巨的工作,挑战随着项目的发展而增长. 最终,一个项目可能需要满足不同的需求并跨越多个存储库. 这些问题不是技术问题,但对于解决扩展技术项目很重要. 诸如敏 ...

  9. 超级计算机阿波罗11,阿波罗11号制导计算机中指令模块和登月模块原始代码已在 GitHub 上开源...

    维基百科上"阿波罗11号"词条下对阿波罗 11 号的介绍如下: 阿波罗11号(英语:Apollo 11)是美国国家航空航天局的阿波罗计划中的第五次载人任务,是人类第一次登月任务,歷 ...

最新文章

  1. (转)RabbitMQ学习之spring整合发送异步消息(注解实现)
  2. Girton conservations
  3. 爬取了京东商城上的部分手机评论数据,仅供学习使用
  4. 过拟合问题——正则化方法
  5. python如何改变入参的值_从事数据分析3年后,发现用python入门数据分析这三本书必看!...
  6. tableView cell 中如果有文本框点击自动滚动不被键盘挡住
  7. 怎样才能知道自己的手机是否支持北斗导航?
  8. 智能指针之auto_ptr
  9. 关于 TApplication 详解 六 ---- TColorDialog
  10. HP刀片带外管理系统OA各功能实例示范
  11. echarts入门基础教程
  12. Guava-Joiner工具类
  13. 诸葛io的技术架构图_诸葛io
  14. 基于互联云及多云的云化基础设施算力调度
  15. Docker 容器技术入门
  16. Leetcode——153. Find Minimum in Rotated Sorted Array
  17. 河南省第十届ACM赛题
  18. NSN的MGM SW engineer面试题
  19. 转:程序员必读书单 1.0
  20. 三、《云原生 | Kubernetes篇》helm 升级更新

热门文章

  1. 【9018:2208】可持久化线段树2
  2. Postman的下载和安装
  3. python怎么设置为中文-python设置中文界面
  4. java毕业设计大学生学科竞赛管理系统mybatis+源码+调试部署+系统+数据库+lw
  5. 中国高速铁路发展对交通方式转变的影响与二氧化碳减排潜力研究
  6. 2016 免费申请邓白氏码的步骤
  7. 常用JSTL标签详解
  8. TortoiseGit切换用户
  9. 线性代数与解析几何——Part3 线性空间 线性变换
  10. python设计模式之模板模式