一年一度的GitHub Octoverse开源社区状态报告又出炉了。
毫无疑问,今年的报告主题是围绕生成式AI展开的。生成式人工智能项目总数同比增长达到疯狂的248%!
越来越多的开源维护者采用了生成式AI工具,近三分之一的星标项目的维护者在使用GitHub Copilot。
全球开发者社区继续快速增长,预计印度将在2027年超过美国成为GitHub上最大的开发者社区。
新加坡、巴西、阿根廷和哥伦比亚是增长最快的地区。
人工智能技术正在主流化,更多开发者在实验AI模型,如ChatGPT API。开源AI创新多样化,多由个人开发者贡献。
基础设施即代码(IaC)继续增长,开发者将云部署过程标准化程度越来越高。
TypeScript超过Java成为第三流行语言,显示其在开发者中越来越受欢迎。Rust由于其内存安全和效率继续吸引大量开发者。
当AI成为主流的一年
新技术成为主流意味着什么?
Git于2005年面世,在GitHub刚成立时,它还是一个开源版本控制系统。如今,Git已成为现代开发者体验的基础设施,93%的开发者使用它来构建和部署软件。
如今,GitHub的数据指向了另一项重塑开发人员体验的技术:人工智能。
在过去的一年里,越来越多的开发者开始使用人工智能帮助自己开发,同时也在尝试构建人工智能驱动的应用。
Git已经从根本上改变了当今的开发者体验。而现在,人工智能正在成为软件开发的新一代基础设施。
如今在GitHub上,开发人员喜欢在实践中学习,而开源可以帮助开发人员更快地采用新技术,将其集成到工作流程中,构建新技术,新产品。
开源还为几乎所有现代软件提供了动力,成为了数字经济的助推器。
今年Octoverse报告的主题是,研究人工智能、云计算和Git的开源活动如何改变了开发者的体验,讨论这些技术如何在开发者和企业中产生越来越大的影响。
软件开发领域的三大趋势:
开发人员正在大量使用生成式人工智能
越来越多的开发人员正在尝试使用OpenAI和其他人工智能公司的基础模型,开源的生成式人工智能项目甚至在2023年进入了按贡献者数量排名的十大最受欢迎的开源项目。
几乎所有开发人员(92%)都在使用或尝试使用人工智能编码工具,Github预计开源开发人员将推动GitHub上人工智能创新的下一波浪潮。
开发人员正在大规模运行云原生应用程序
使用基于Git的基础设施即代码(IaC)工作流的声明式语言越来越多,云部署的标准化程度越来越高,开发人员使用Dockerfiles,容器,IaC以及其他云原生技术的比例也急剧上升。
2023年的首次开源贡献者人数最多
商业支持的开源项目占据了首次贡献者和总体贡献的最大份额,但今年,生成式人工智能项目进入了首次贡献者最受欢迎的十大项目之列。
GitHub上私有项目的增长显著,同比增长38%,占GitHub上所有活动的80%以上。
在GitHub上构建全球开发者社区
在全球范围内,使用GitHub开发软件和开展协作的开发者人数比以往任何时候都多,而且囊括了公共项目和私人项目。
这不仅证明了Git在当今开发者体验中的重要价值,也显示了使用GitHub构建软件的全球开发者社区有多么庞大的规模。
美国拥有2020万开发者,开发者人数在去年增长了21%,仍然是全球最大的开发者社区。
但自2013年以来,其他社区在整个平台上的高速增长。预计这种情况还将持续。
GitHub上的全球开发者分布图显示了不同地区的开发者数量。
亚太地区、非洲、南美洲和欧洲的开发者社区规模逐年扩大,其中印度、巴西和日本处于领先地位。
未来五年十大开发者社区预测
预计到2027年,印度将超过美国,成为GitHub上最大的开发者社区。
亚太地区增长最快的开发者社区
在印度、日本和新加坡等经济中心的推动下,亚太地区的增长非常可观。
印度的开发者社区继续保持着巨大的同比增长,以下是他们在GitHub上创建和贡献的开源软件(OSS)项目列表。
新加坡是亚太地区今年开发者人口增长最多的国家,也是全球开发者与总人口比例最高的国家。
由于日本在技术和初创企业方面的进一步投资,明年日本的开发者将有持续增长。
非洲发展最快的开发者社区
非洲地区是世界上人口增长最快的地区,开发人员的数量也在不断增加,因此被认为是技术公司大有可为的中心。(在肯尼亚,编程是中小学的必修课)。
尼日利亚是采用开放源码软件和进行技术投资的热点地区,45%的年增长率为全球最高。
GitHub上还有至少200个由尼日利亚开发人员开发的项目,可以在「非洲制造 」系列中找到。
南美洲发展最快的开发者社区
南美洲开发者的增长率与亚太地区和非洲一些增长最快的开发者社区不相上下。
2023年,巴西的开发人员数量是南美地区最多的,并将继续以两位数的速度保持增长,同比增幅达30%。
阿根廷和哥伦比亚的持续增长,这两个国家在过去几年中已成为各组织的热门投资目的地。
欧洲发展最快的开发者社区
欧洲各社区的开发者人口总数也在继续增加,但其发展与美国的总体情况更为接近,增长速度不如亚太,非洲等地区。
值得注意的是,法国的增长是在政府推动吸引更多科技初创企业之后实现的。西班牙和意大利的增长也在上升,这说明这两个地区在努力加强其国内技术市场。
2023年生成式人工智能的爆炸式增长
虽然生成式人工智能在2023年的新闻头条中才大放异彩,但对于GitHub上的开发者来说,这项技术早就不陌生了。
在过去几年中,GitHub上出现了多个生成式人工智能项目,还有很多其他以人工智能为重点的项目。
但2023年的GitHub数据反映了这些人工智能项目是如何从更专业的工作和研究发展到更主流的应用,开发人员越来越多地使用预训练模型和API来构建生成式人工智能驱动的应用。
2023年刚刚过半的时候,生成式人工智能项目数量就是2022年全年的两倍多。
而且就算是这个数量,在未来看来,也只是冰山一角。
随着越来越多的开发人员尝试使用这些新技术,预计他们将推动软件开发领域的人工智能的进一步创新,并继续将该技术大幅增长的能力带入主流视野之中。
开发人员越来越多地尝试使用人工智能模型。过去几年,开发人员使用 tensorflow/tensorflow、pytorch/pytorch等机器学习库构建项目。
现在,更多的开发人员在尝试使用人工智能模型和LLM,如ChatGPT API。
预计企业和组织也会利用预先训练好的人工智能模型,尤其是当越来越多的开发人员熟悉使用这些模型进行构建时。
开源人工智能创新多种多样,顶级人工智能项目由个人开发者拥有。
分析GitHub上排名前20位的开源生成式人工智能项目,其中一些顶级项目是个人所有。
这表明,GitHub上的开源项目会继续推动创新,并展示行业的下一步发展趋势,而开源社区也将围绕最激动人心的进步不断发展。
生成式人工智能技术本身正推动个人贡献者在生成式人工智能项目的贡献大幅飙升,同比增长幅度达到了惊人的148%。而生成式人工智能项目总数也同比增长248%。
值得注意的是,美国、印度和日本在开发者社区中处于领先地位,其他地区包括香港地区、英国和巴西紧随其后。
学习生成式人工智能的开发人员数量的大幅上升将对企业产生影响。
随着越来越多的开发人员熟悉构建生成式人工智能驱动的应用程序,预计人才库将不断扩大。那些寻求开发自己的人工智能驱动产品和服务的企业将会有更多的选择。
在过去的一年里,在ChatGPT等基础模型之上构建的应用程序呈指数级增长。
开发人员使用这些LLM开发面向用户的工具,如API、机器人、个人助手、移动应用程序和插件。
全球的开发人员正在帮助为主流应用奠定基础,而实验正在帮助企业建立人才库。
最流行的编程语言
自2019年云原生开发大规模增长以来,IaC在开源领域持续增长。
2023年,Shell和Hashicorp配置语言(HCL)再次成为开源项目中的顶级语言,这表明运营和IaC工作在开源领域的地位日益突出。
- HCL的采用率同比增长了36%,这表明开发人员正在为其应用程序使用基础设施。
- HCL的增加表明,开发人员越来越多地使用声明式语言来决定如何利用云部署。
JavaScript再次荣登最受欢迎语言的榜首,而Python和Java等我们熟悉的语言也继续保持在前五位。
TypeScript广受欢迎,用户数量增长了37%,首次超过Java,成为GitHub上开源软件项目中第三受欢迎的语言。
TypeScript于2012年推出,集语言、类型检查器、编译器和语言服务于一身,它允许开发人员在代码中采用不同程度的静态和动态类型。
用于数据分析和操作的流行语言和框架显著增加。
T-SQL和TeX等古老的语言在2023年有所增长,这凸显了数据科学家、数学家和分析师如何越来越多地使用开源平台和工具。
与GitHub上最流行的语言相比,2023年创建的项目中最流行的语言,与GitHub上最流行的语言总体相当。
一些值得注意的异常值包括Kotlin、Rust、Go和Lua,它们在GitHub上较新的项目中出现了较大的增长。
Rust持续增加
在业界领袖对Rust应如何进行系统编程发表评论,以及Rust被纳入Linux内核之后,Rust继续吸引着越来越多的开发者。
虽然与其他语言相比,它的总体使用率较低,但却以每年40%的速度增长,并在2023年Stack Overflow开发人员调查中连续第八年被评为最受推崇的语言。
Rust和Lua都以内存安全和高效著称,而且都可用于系统和嵌入式系统编程,这也是它们增长的原因。而Go最近的增长是由Kubernetes和Prometheus等云原生项目推动的。
开发者活动是新技术应用的风向标
2023年初,GitHub迎来了一个里程碑,开发者超过了1亿人。
而且自去年以来,GitHub上的全球开发者账户数量增长了近26%,比以往任何时候都有更多的开发者跨时区协作并构建软件。
开发者在私有和公共资源库中的活动凸显了哪些技术正在被广泛采用,以及哪些技术正准备被更广泛地采用。
开发人员正在将更多的工作流程自动化。在过去一年中,开发人员使用GitHub Actions自动执行公共项目任务、开发CI/CD管道等的时间增加了169%。
- 开发人员平均每天在公共项目中使用超过2000万分钟的GitHub Actions。随着GitHub Marketplace的GitHub Actions数量在2023年突破20,000大关,社区规模还在不断扩大。
- 这表明开源社区对CI/CD自动化和社区管理的认识在不断提高。
GitHub 80%以上的贡献都是对私有资源库的贡献。私人项目的贡献超过42亿次,公共和开源项目的贡献超过3.1亿次。
事实上,在最近由GitHub发起的一项调查中,所有开发人员都表示,他们的公司至少采用了一些内部源代码实践,超过一半的人表示,他们的组织中存在活跃的内源文化。
GitHub是开发人员运行和扩展云原生应用程序的地方。
2023 年,430万个公共和私有软件源使用了Dockerfile,超过100万个公共软件源使用Dockerfile创建容器。
在此之前,Terraform和其他云原生技术的使用在过去几年中不断增加。越来越多地采用IaC实践也表明,开发人员正在为云部署带来更多标准化。
生成式AI进入GitHub Actions。从GitHub Marketplace中300多个由AI驱动GitHub Actions和30多个由GPT驱动的GitHub Actions中可以明显看出,人工智能在开发者社区中的早期应用和协作能力。
开发人员不仅继续尝试使用人工智能,还通过GitHub市场将其引入开发人员体验的更多部分及其工作流程中。
AI将如何改变开发者的体验?
92%的开发人员已经在工作内外使AI编码工具。这是GitHub发起的2023年开发人员调查的重要发现之一。此外,81%的开发人员认为,人工智能编码工具将使他们的团队更具协作性。
在调查中,开发人员表示,协作、满意度和工作效率都将从人工智能编码工具中得到提升。
底线:开发人员尝试新技术,并在公共和私有资源库中分享他们的学习成果。这种相互依存的工作让容器化、自动化和CI/CD的价值浮出水面,从而在开源社区和公司之间打包和发布代码。
开源代码的安全情况
今年,开发人员、开放源码软件社区和公司都在利用自动警报、工具和前瞻性安全措施更快地应对安全事件,这有助于开发人员更快地获得更好的安全成果。
越来越多的开发人员正在使用自动化来确保代码安全。
与2022年相比,2023年开放源代码开发人员,针对易受攻击软件包的自动化Dependabot拉取请求增加了60%。
得益于GitHub上的免费工具(如Dependabot、代码扫描和秘密扫描),各开源社区的开发人员正在修复更多的易受攻击软件包,并解决代码中的更多漏洞。
越来越多的开源维护者开始保护他们的分支。
受保护的分支为维护者提供了更多确保项目安全的方法,超过60%最受欢迎的开源项目在使用它们。
今年早些时候,GitHub的GA中推出了版本库规则,因此大规模管理这些规则将变得更加容易。
开发人员正在GitHub上分享负责任的人工智能工具。在生成AI时代,人工智能信任和安全工具是发展趋势。
开发人员正在围绕负责任的人工智能、人工智能中的公平性、负责任的机器学习和道德人工智能创建和共享工具。
开源代码现状
2023年,开发人员为GitHub上的开源项目做出了3.01亿次贡献,这些项目既有像Mastodon这样的热门项目,也有像Stable Diffusion和LangChain这样的生成式人工智能项目。
商业支持的项目继续吸引了一些最开放的源代码贡献,但2023年是生成式AI项目首次进入GitHub上最受欢迎的10大项目之列的第一年。
说到生成式AI,在至少有一个星级的开源项目中,几乎有1/3的项目的维护者正在使用 GitHub Copilot。
商业支持项目继续领先。2023年,按贡献者总数计算,最大的项目绝大多数由商业支持。
这一趋势在去年得到了延续,microsoft/vscode、flutter/flutter和vercel/next.js在2023年再次跻身前十名。
生成式AI在开源和公共项目中发展迅速。
2023年,基于生成式AI的开源软件项目,如langchain-ai/langchain和AUTOMATIC1111/stable-diffusion-webui,是跃居GitHub上贡献者数量最多的项目。
越来越多的开发人员正在利用预训练好的AI模型构建LLM应用程序,并根据用户需求定AI应用程序。
开源维护者正在采用生成式AI。在至少有一个星级的开源项目中,1/3的维护者都在使用GitHub Copilot。
这是继GitHub向开源项目维护者免费提供GitHub Copilot之后的又一举措,表明生成式AI在开源项目中的应用日益广泛。
30%《财富》百强企业有OSPO
开源项目办公室(OSPO)鼓励企业参与和遵守开源。
根据Linux基金会的数据,自2022年以来,全球公司采用OSPO的比例增加了32%,72%的公司计划在未来12个月内实施OSPO或开放源码软件计划。例如,微软、谷歌、Meta、Comcast、摩根大通和梅赛德斯奔驰等公司都拥有OSPO。
GitHub在2021年成立了OSPO,并开源了github-ospo,以分享资源和见解。
与此同时,开发者看到了组合使用软件包和容器化的好处。
正如之前提到的,2023年有430万个软件源使用了Docker。另一边,Linux发行版NixOS/nixpkgs在过去两年中一直位居开源项目贡献者榜首。
新加入的开源项目贡献者仍然更偏向选择那些由知名商业公司支持的项目。
去年,GitHub发现,与其他项目相比,由商业支持的热门项目的品牌知名度吸引了更多的首次贡献者。
这种情况在2023年仍将继续,在首次贡献者中最受欢迎的一些开源项目由微软、谷歌、Meta和Vercel支持。
但是,从home-assistant/core到AUTOMATIC1111/stable-diffusion-webui、langchain-ai/langchain和Significant-Gravitas/Auto-GPT等社区驱动的开源项目,也出现了来自首次贡献者的活动激增。
这表明,对基础模型的开放式实验提高了生成式AI的可及性,为新的创新和更多合作打开了大门。
2023年,首次为开源项目做出贡献的人数最多。
新开发人员通过freeCodeCamp、First Contributions和GitHub Education等项目加入了开源社区。
其他值得关注的趋势
- 专注于前端开发的开源项目持续增长。vercel/next.js和nuxt/nuxt(按贡献者增长情况排在前40位的项目)的持续增长。可以看到,更多开源和公共项目的开发人员参与到前端开发工作中。
- 开源家庭自动化项目home-assistant/core再次荣登贡献者榜首。自2018年以来(2021年除外),该项目几乎每年都在榜单上名列前茅。它的持续走红显示了项目社区建设工作的实力。
底线:开发人员正在为开源生成式AI项目做出贡献,开源维护者正在采用生成式AI编码工具,公司继续依赖开源软件。
这些都表明,在开放环境中学习并分享新技术实验成果的开发人员能够提升整个全球开发人员网络,无论他们是在公共还是私有资源库中工作。
三点启示
正如Git已成为当今开发人员体验的基础一样,GitHub现在也看到了AI成为主流的证据。
仅在过去一年,就有92%的开发人员表示,在工作内外使用过基于AI的编码工具。同时,GitHub上的各种开源项目也出现了AI实验的爆炸性增长。
- GitHub是生成式AI的开发者平台。
2023年,生成式AI从一个专业领域发展成为主流技术,开源活动的爆炸式增长也反映了这一点。随着越来越多的开发者开始构建和尝试生成式AI,他们正在使用GitHub进行协作和集体学习。
- 开发人员正在GitHub上大规模运行云原生应用程序。
2019年,在开源领域使用基于Docker技术的开发人员数量大幅跃升,而且开发人员越来越多地使用基于Git的IaC工作流、docker编排和其他云原生技术的速度在2023年也急剧上升。这一巨大的活动量表明,开发人员正在使用GitHub来规范他们如何将软件部署到云中。
- GitHub是开源社区、开发人员和公司构建软件的平台。
2023年,私有资源库的数量增长了38%,占GitHub所有活动的81%。同时,使用GitHub构建下一代软件并推动行业发展的开源社区仍在持续增长。数据显示,新的开源开发者在增加,开放社区的创新步伐也在加快,很显然,开源从未如此强大。