JFrog的
2023软件工件联盟状态

今天使用的领先软件组件为您的2023项目提供信息

介绍JFrog的软件工件状态

Stack Overflow的开发者调查和Tiobe Index等工具是IT和软件领导者了解最新开发趋势和编程设计偏好的有用资产,可以在启动新计划时加以考虑。在决定如何提升自己或团队的技能时,这些报告也可以为开发人员或DevOps工程师提供参考。然而,这些报告只依赖于间接的数据,如调查、GitHub仓库或谷歌趋势,这并不一定能提供实际在生产和/或企业中运行的语言的全貌。

由于我们无与伦比的软件包支持的深度和广度以及庞大的客户基础,JFrog在详细介绍用于创建最终用户使用的软件的实际技术方面处于独特的地位。JFrog在全球拥有超过7K的客户,从单个用户到最大的企业,包括大多数财富100强企业,JFrog的软件工件状态提供了软件包流行和采用趋势的可靠快照。

为什么软件包很重要?

查看编程语言的流行程度是开发人员偏好和趋势的一个指标,但包和二进制文件是企业用于将软件从设计交付到生产的真正组件。考虑到大多数包类型最多只能服务于一种或两种语言,查看软件包也是一种相当可靠的编程语言代理。

方法

用于这些排名和分析的数据是直接从使用中收集的JFrog Artifactory至2022年10月,来自:
~ 7 k
JFrog客户
~ 27 k
Artifactory服务器
~ 4.2米
Artifactory存储库
pb
工件的
数十亿
神器动作
(下载/上传)
85%
财富100强之一
包的受欢迎程度取决于所维护的存储库的总数以及针对给定包类型所采取的操作。
然而,少数企业可能会通过为任何给定的包创建无限数量的存储库来扭曲这些排名,因为我们也会查看工件操作,我们可以安全地得出哪个包类型正在作为开发过程的一部分被积极使用。

发现

顶级软件技术
排名 包类型 回购计数 同比增长%
1 码头工人 1330329年 10.11%
2 Maven 1183167年 18.79%
3. Npm 313992年 19.61%
4 好吃。 307549年 10.36%
5 244582年 33.67%
6 Pypi 206830年 29.51%
7 NuGet 172989年 31.54%
8 Debian 114737年 21.56%
9 Gradle 62842年 22.80%
10 GitLfs 48734年 26.34%
11 40481年 29.10%
12 宝石 34292年 17.93%
13 柯南 23423年 29.64%
14 艾薇 21537年 19.90%
15 Conda 20247年 23.78%
16 SBT 17262年 16.82%
17 作曲家 12909年 38.74%
18 凹口 12151年 36.15%
19 鲍尔 12124年 8.36%
20. P2 10771年 5.48%
21 厨师 10547年 14.27%
22 CocoaPods 9011年 28.39%
23 流浪的 8424年 11.53%
24 木偶 6360年 21.97%
25 高山 5535年 49.81%
26 风投公司 4961年 18.48%
27 锈(货物) 4205年 67.13%
28 Opkg 2993年 32.31%
软件技术趋势
点击下面的按钮来过滤趋势结果。

的见解

容器为王

容器化应用程序已经改变了我们捆绑和向最终用户交付软件的方式。Docker容器和Helm Charts使用的快速增长(从2020年1月到2022年10月分别增长了5倍)表明,企业采用云原生方法来实现其业务是多么普遍DevOps

虽然Kubernetes从2013年就开始出现了,但它最近才开始成为大型组织将容器部署到生产环境的解决方案——目前它还在不断成熟——所以请继续关注它的进一步发展。

为物联网和边缘做好准备

根据IDC的数据,到2025年,连接设备的数量预计将增长到416亿,产生超过74.9 zb的数据。物联网和数据放置).组织需要一个将软件交付到边缘设备的策略。C/ c++是设计在物联网设备上运行的软件时使用的主要语言,因为大多数都是基于微控制器的。Conan是一个常用的C/ c++部署管理器,它可以更容易地向边缘和物联网设备交付更新,因为它是基于包的,而不是使用标准的依赖库管理。这有助于加快物联网设备软件开发的速度和一致性。

从2020年1月到2022年12月,我们看到柯南的利用率增加了5倍,这可能表明更多的公司正在为边缘设计。

守旧势力强大

虽然人们对Rust (Cargo)等较年轻的编程语言很感兴趣,但你不能否认Java、JavaScript、Python和C/ c++等传统语言在现代软件开发中的作用。例如,我们的数据显示,超过90%的组织维护Maven仓库,这清楚地表明组织并没有放弃使用传统语言。

保持内存安全

糟糕的内存管理是导致许多漏洞的原因。甚至美国政府的国家安全局也在敦促组织在构建应用程序时转向内存安全语言。安全正向设计只是开发人员对利用Rust (Cargo)、Swift和Go等年轻语言感兴趣的众多原因之一。例如,Rust本质上是以内存管理为标准构建的,并且它还具有“零bug”的安全性,这意味着它旨在使开发人员在编码时意识到任何潜在的问题。然而,即使是Rust也有它的挑战并且需要持续监控。

从2022年1月到2022年10月,Rust (Cargo)仓库的数量增加了30%。现代语言,如Rust、Swift和Go,通过提供内置安全机制的更好的包风格开发,被设计得更加可靠。使用内存安全语言的愿望也可能受到Log4Shell、太阳风和其他有害软件供应链攻击的广泛影响和教训的驱动。



Terraform: IaC标准

自从5月份引入支持以来,我们看到了Terraform存储库的快速采用——这是我们引入的任何新包类型中增长最快的一个。组织看到了将这些文件的管理从Git和其他存储选项中转移到一个功能齐全的基于二进制的管理解决方案中的好处,该解决方案可以保证他们的Terraform文件的安全性,并且可以随时与部署和运行软件所需的其他组件一起使用。

奖金的见解开发组织中的包使用趋势

除了包在开发人员中的受欢迎程度之外,JFrog还想检查在开发组织中包的使用通常是什么样子的。,有多少包类型被利用,工件的种类和大小,以及任何组织中开发人员的平均数量。以下是基于这些数据的一些额外见解。

发展是多语言、多技术的

今天的扩展软件供应链涉及多种技术和语言,以跨本地、云和混合环境交付应用程序。从大量不同规模和跨行业的公司样本中得出,平均使用七种或更多独特的软件包类型。在较大的组织中,这个中位数会增加,在一家公司中使用了29种不同的软件包类型。
在软件交付中使用的包类型的数量

更大工件的更高体积

随着使用容器化技术(如Docker和Kubernetes)的组织呈指数级增长,工件大小也会增加,这并不奇怪。此外,更大比例的组织也在维护更广泛的工件。
管理的工件总数
按GB管理的工件总数

更多的用户,更多的仓库

随着组织的发展,他们倾向于利用更多的仓库来保持工件的组织性和安全性。具有受治理的基于角色的访问控制的适当存储库策略有助于保持开发团队的一致性,并确保对广泛使用的通用软件组件的按需访问。
发展机构的规模
管理的包类型的数量

2023年软件包趋势预测

不可否认,疫情加速了所有行业向云的迁移,这相应地增加了对Kubernetes (k8)等云原生技术和Docker等容器化方法的使用。此外,现在员工回到办公室,越来越多的市民回到“路上”,我们将继续看到云计算、协作工具的使用增加,以及越来越多的设备被远程使用和我们在旅途中使用。

这种趋势将继续推动云原生技术的使用,这给开发人员带来了更大的压力,要求他们快速交付新的、移动优先的特性和功能,同时确保它们始终安全且最新。Gartner的研究表明,到2025年,超过85%的组织将采用云优先原则,如果不使用云原生架构和技术,将无法完全执行其数字战略。1不要被你的竞争对手甩在后面。

从人才的角度来看,这可能意味着你的UX、云原生或移动优先设计团队需要一些额外的开发人员。虽然由于业务和/或数据位置、数据隐私/主权、监管要求等原因,仍有一些行业迁移到云的速度较慢,但随着软件包的种类、数量和大小的不断增长,向云的整体迁移和k8的采用将继续加速。我们还可能看到越来越多的公司利用像Terraform这样的框架来利用云基础设施的动态特性。

从我们自己的数据以及行业和经济趋势来看,考虑到用于支持加密货币、元宇宙、云游戏和区块链等技术的工件的种类和规模的增加,我们预计Docker和容器利用率的增长将保持强劲。

虽然“虚拟世界”还没有定论,但我们看到许多组织在这个领域进行试验,它们的工件规模越来越大,c++、Python和Rust (Cargo)的扩散,以及容器化技术也在不断发展。与此同时,越来越多地使用c++、Python和Java也可能标志着区块链技术的更广泛开发和使用,这将与行业对安全性的普遍关注相吻合,更具体地说,是确保软件供应链的安全。Rust、Java和JavaScript等传统语言的流行,也标志着许多组织正在推动下一代互联网服务,使用分散的web基础设施来创建新的应用程序工作流。

简而言之,考虑到各种软件语言支持的许多不同用例,公司应该寻找一个全面和通用的平台,允许他们从端到端管理整个软件供应链,同时促进协作、可伸缩性、一致性和安全性。

* https://www.gartner.com/en/newsroom/press-releases/2021-11-10-gartner-says-cloud-will-be-the-centerpiece-of-new-digital-experiences

要么释放,要么死亡

想要更深入地了解数据?向我们的专家提问?
加入我们即将到来的网络研讨会