来自 GitHub 2022 的趋势和见解

news2024/10/6 10:51:36

 《Github 2022 发展趋势和见解》发布了这件事小伙伴们知道了吧?这是每个程序员不能错过的年度报告,因为里面详细介绍了语言的发展趋势和热门领域的介绍。那就让我们来看看吧

目录

编程语言

地理分布

贡献时间分配

技术发展趋势

最受欢迎的存储库

最活跃的存储库

顶级观星者

最活跃的开发人员


编程语言

 这份报告,我们最应该关注的应该就是语言活跃度的排名了,可以看到javaScript排第一、HTML排名第二、Python排名第三、java排名第四、我认为最大的黑马就是Python了,竟然超越了java成为了后端的老大、除了前几名,这里还应该关注到TYpeScript也在不停的上升,从去年的第十上升到了第六名,这里说明了TYpeScript成为了前端的必会技能。如果你是前端,还不会TYpeScript那么今年就可以列入到自己的学习计划当中了。至于后端语言的话,除了java和Python,我看好的是go语言,今年它也超过了Ruby成为了后端的老三。

地理分布

前10个国家触发的事件约占23.27%所有 GitHub 事件。
但是,来自这些国家/地区的开发人员数量仅为10%.
🇺🇸 美国开发商最有可能审查代码,具有PullRequestReviewEvent 份额为 6.15%.
🇨🇳 中国开发商喜欢星标存储库,使用WatchEvent 为 17.23%,ForkEvent 为 2.7%.
🇩🇪 德国开发商喜欢打开问题和评论,与IssueEvent和CommentEvent占比分别为4.18%和12.66%分别。
🇰🇷 韩国开发者更喜欢直接推送到存储库(PushEvent)。
🇯🇵 日本开发商最有可能通过拉取请求提交代码,具有拉取请求事件份额 10%.

 

贡献时间分配

工作日和周末的开发者行为分布

 从这张图呢,有意思的发现就是我们可以看出大部分的程序员还是喜欢摸鱼的,大部分的提交时间都来自于工作时间、不喜欢摸鱼的程序员还有一种可能是越来越多的公司开始拥抱开源,比如我们最熟悉的微软就开始拥抱开源这对程序员来说是一件大好事。

特定事件的分布

拉取请求事件、拉取请求评审事件和议题事件在星期二的百分比最高,而在周末的百分比最低。推送事件、监视事件和分叉事件活动的数量在工作日和周末相似,而拉取请求审查事件的数量差异最大。观看事件和分叉事件是更多的个人行为,拉取请求审查事件是更多的工作行为,推送事件更多地用于个人项目。

 

技术发展趋势

除了关注语言本身,我们其实还更应该去关注领域,这可以帮助我们判断进入哪个行业更有发展前景,从报告中可以看出2022年低代码平台非常的火爆,它的新项目增加了313.43%,在2022年初的时候,很多人都不太看好低代码平台,现在看起来这个领域还是很有前途的,就算你做为程序员这件事有些不屑,也值得你去关注。

第二个值得关注的领域是web 3.0,也就是我们常说的web3,从报告中可以看出一条长长的飞线,它的火爆程度不用多说了,就连周星驰,星爷也去搞这个创业了,在国外呢,web3是异常的火爆。但是在国内,我并不是太看好web3的环境,因为任何不受监管的东西,在国内都不太会有太好的发展。之前疯狂的比特币就是一个很好的例子

 至于数据库和人工智能这两个领域就不必多说了,这两年也是非常的火爆,也是现在最赚钱的领域,但是现在如果你才开始入行,就稍显有点晚了,除非你学历很高,否则机会并不是太多。

数据库 

 

  人工智能

 

最受欢迎的存储库

 

最活跃的存储库

 从这里可以看到,微软的开源项目是最多的,足以说明:算力新时代,开源创未来!

2022 年新名单:

  • 拱门网络/测试网
  • 元素-fi/elf-council-frontend
  • Solana-labs/token-list
  • 教育/GitHub毕业-2022
  • 淘之宇/泰普行动
  • NixOS/nixpkgs
  • 锈朗/锈

顶级观星者

让我们看看2022最受欢迎的开发者:

 

最活跃的开发人员

   再说个东西,GitHub 是这样进行领域划分的。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/146906.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GoogLeNet详解

入门小菜鸟,希望像做笔记记录自己学的东西,也希望能帮助到同样入门的人,更希望大佬们帮忙纠错啦~侵权立删。 ✨完整代码在我的github上,有需要的朋友可以康康✨ https://github.com/tt-s-t/Deep-Learning.git 目录 一、GoogLeNet…

C++入门——auto、范围for、nullptr

下一篇就要类和对象了,剩了点零碎的知识点就浅浅水一篇把 一. auto关键字 在早期C/C中auto的含义是:使用auto修饰的变量,是具有自动存储器的局部变量,但遗憾的 是一直没有人去使用它,这是由于变量本身就具备生命周期…

算法及时间、空间复杂度

算法 算法是对问题求解过程的一种描述,是为解决一个或一类问题给出的一个确定的、有限长的操作序列。严格说来,一个算法必须满足以下5个重要特性: (1)有穷性:对于任意一组合法的输入值,在执行有…

【数据结构与算法——C语言版】5. 排序算法(2)——冒泡排序

前言 上篇文章【数据结构与算法——C语言版】4. 排序算法(1)——选择排序我们介绍了排序算法中的选择排序,其时间复杂度是O(n2),本篇文章我们将介绍另一种同样时间复杂度是O(n2)的排序算法——冒牌排序,这两种算法思路…

ChatGPT背后的开源AI框架Ray,现在值10亿美元

Ray 被 OpenAI、亚马逊等科技公司用来开发大模型,是最近异军突起的框架。 最近一段时间,文本生成的人工智能在互联网上掀起了一阵风暴:ChatGPT 因为可以对人们能想到的几乎任何问题提供非常详细、近乎逼真的回答而受到追捧。大模型应用的出现…

Mapper代理开发案例及MyBatis核心

本片文章需要参考我的前一篇文章:MyBatis入门案例引入总结,使用mapper代理开发的好处就是可以解决开发中硬编码的问题和简化后期的SQL执行。使用这种方式可以不用写接口的实现类,免除了复杂的方法,使得代码更加清晰易懂按照以前的…

vue的过渡动画(有vue的动画库和ui库的介绍)

一、概念 Vue 在插入、更新或者移除 DOM 时&#xff0c;提供多种不同方式的应用过渡效果。 二、默认过渡 <template><div><button click"isShow!isShow">显示/隐藏</button><transition appear><h1 v-show"isShow" cl…

过滤器和拦截器的使用及管理

参考&#xff1a;(70条消息) Spring过滤器和拦截器的区别_yjc0403的博客-CSDN博客https://www.cnblogs.com/colin220/p/9606412.htm概述过滤器&#xff1a;是在javaweb中&#xff0c;你传入的request、response提前过滤掉一些信息&#xff0c;或者提前设置一些参数&#xff0c;…

Anaconda安装之后Spyder打不开解决办法--目前有用 jupyter notebook 无法正常运行2023.1.7

纯纯小白&#xff0c;探索一天&#xff0c;终于成功&#xff0c;需要我的经历没有白费&#xff0c;让大家少走弯路。 问题描述 从官网下载Anaconda之后&#xff0c;安装&#xff0c;一切正常。打开Anaconda navigator在弹出窗口选择了更新&#xff08;我怀疑这就根源&#xf…

Js逆向教程24-作用域和自执行函数

作者&#xff1a;虚坏叔叔 博客&#xff1a;https://xuhss.com 早餐店不会开到晚上&#xff0c;想吃的人早就来了&#xff01;&#x1f604; Js逆向教程24-作用域和自执行函数 一、变量作用域 1.1局部变量 function jb() {var a"我是局部变量"return a; }1.2全局变…

【Java寒假打卡】Java基础-异常

【Java寒假打卡】Java基础-异常异常概述throws声明异常throw抛出异常try-catch 抛出异常throwable的成员方法异常概述 Exception:称之为异常类&#xff0c;他表示程序本身可以处理的问题 RuntimeException及其子类&#xff1a;运行时异常。&#xff08;空指针异常&#xff0c;…

JUC总结系列篇 (二) : 对线程的理解和使用总结

文章内容&#xff1a; 一.为什么需要多线程 二.线程的创建 三.线程的方法sleep(),run(),wait(),yeid(),join(),interrupt()等方法归纳总结 四.线程的状态及其转换 五.线程的交替执行案例 六.多个线程依次执行案例 七.多线程并发带来的线程安全问题 一.为什么需要多线程&#x…

Linux项目自动化构建工具-make/Makefile

一、前言 会不会写makefile&#xff0c;从一个侧面说明了一个人是否具备完成大型工程的能力。一个工程中的源文件不计数&#xff0c;其按类型、功能、模块分别放在若干个目录中&#xff0c;makefile定义了一系列的规则来指定&#xff0c;哪些文件需要先编译&#xff0c;哪些文件…

前端入门笔记 04 —— Web(html CSS)布局

响应式布局 屏幕尺寸变化&#xff0c;需要响应式网页设计RWD web页面适应不同屏幕宽度因素 液态站点&#xff0c;拉伸充满浏览器窗口 小屏幕挤成一团&#xff0c;大屏幕空白间隙过大固定宽度 像素为单位固定尺寸 小屏幕滚动&#xff0c;大屏幕空白 实现 设置meta标签媒体查…

数据结构入门5-1(数和二叉树)

目录 注 树和二叉树的定义 树的定义 树的基本术语 二叉树的定义 树和二叉树的抽象数据类型定义 二叉树的性质和存储结构 二叉树的性质 二叉树的存储结构 1. 顺序存储结构 2. 链式存储结构 遍历二叉树和线索二叉树 遍历二叉树&#xff08;traversing binary tree&a…

加密与安全

目录 一、编码算法 1.1、ASCII 1.1.1、ASCII简介 1.1.2、ASCII产生原因 1.1.3、表达方式 1.1.4、标准表 1.1.5、大小规则 1.2、Unicode 1.2.1简介 1.2.2编码和实现 1.3、汉字编码 1.3.1、GB2312-80 标准 1.3.2、GBK 编码标准 1.3.3、GB18030编码标准 1.4、URL编…

【Node】中Express框架连接Mysql实现用户注册接口

Node.js中Express框架连接Mysql实现用户注册接口 处理用户注册接口简单分为三步&#xff1a; 1、注册校验 2、完善逻辑 3、拆分模块 拆分模块能够使部分功能能够复用&#xff0c;封装好各个模块使得模块间只能通过有限的接口互相访问&#xff0c;从而降低耦合&#xff0c;拆分模…

LeetCode[1046]最后一块石头的重量

难度&#xff1a;简单 题目&#xff1a; 有一堆石头&#xff0c;每块石头的重量都是正整数。每一回合&#xff0c;从中选出两块最重的 石头&#xff0c;然后将它们一起粉碎。假设石头的重量分别为 x 和 y&#xff0c;且 x < y。那么粉碎的可能结果如下&#xff1a;如果 x …

『年度总结』时光如梭 | 再见 2022 | 你好 2023

⭐创作时间2022年12月31日⭐ ✨结果一直到现在才发&#xff0c;说真的写年度总结还是第一次写比较不熟练&#xff0c;去年有这个活动也有佬叫我参加&#xff0c;不过没参加。今年想着有时间来写下的&#xff0c;结果写到现在才发&#xff0c;这东西说真的挺难写的&#…

机器视觉(九):图像配准

目录&#xff1a; 机器视觉&#xff08;一&#xff09;&#xff1a;概述 机器视觉&#xff08;二&#xff09;&#xff1a;机器视觉硬件技术 机器视觉&#xff08;三&#xff09;&#xff1a;摄像机标定技术 机器视觉&#xff08;四&#xff09;&#xff1a;空域图像增强 …