查看原文
其他

图文分析:Python语言的惊人成长之路

LEMON Python数据之道 2022-09-04


翻译:Lemon,原文作者:David Robinson


本文首先分析了高收入国家中各种程序语言或技术的增长情况,通过分析显示,Python是一个不寻常的例子,它既是Stack Overflow上访问次数最多的语言之一,也是增长最快的语言之一


此后分析了在全球其他国家的情况,也得出类似的结论。


注: 文章中出现的 “我/我们” 皆指的是原文作者




正文

我们最近研究了发达国家(世界银行定义的高收入国家)与其他国家所采用语言或技术的差异。我们看到差异最大的是Python编程语言。

当我们把重点放在高收入国家时,Python的增长速度甚至比从Stack Overflow等机构的排名中可能出现的还要高。

在这篇文章中,我们将探讨在过去五年中Python编程语言的非凡增长。“增长最快”这个词很难精确定义,但我们认为 Python有足够的证据表明它是增长最快的主要编程语言

这篇文章中讨论的所有数据都是针对高收入国家的,它们通常代表着美国、英国、德国、加拿大和其他高收入国家的趋势,它们组合起来占了Stack Overflow流量的64%左右。

许多其他国家如印度、巴西、俄罗斯和中国也在全球软件开发生态系统中做出了巨大贡献,本文并非主要分析这些经济体,虽然我们会看到Python在这些国家的增长也很快。

值得强调的是,语言使用者的数量并不是衡量语言质量的标准:我们描述的是开发人员使用的语言,而不是规定任何东西。(声明:我以前主要用Python编程,尽管我已经完全切换到R了)。

Python在高收入国家的增长情况

您可以看到,在Stack Overflow的趋势统计中,在过去几年中,Python增长速度很快。

但对于本文,我们将集中分析高收入国家,基于question的访问量而不是question的提问数量(这往往会产生类似的结果,但每月的噪音较少,尤其是对数量较小的语言)。

我们有2011年以来 Stack Overflow上问题的数据,在这段时间里,我们对比了Python相对于其他五种主要编程语言的增长。

这六种语言是当前Stack Overflow上高收入国家访问量最多的语言;其他我们没有提到的四种语言是CSS、HTML、Android和jQuery。

2017年6月是Python在高收入国家中访问数量首次排名最高的月份。这包括在美国和英国,Python的访问量最大,以及在其他几乎所有高收入国家python的访问量排名在top2(仅次于Java或JavaScript)。

从2012年至今,对比其他5种语言,Python的增长速度令人印象深刻,对比当时,已有2.5倍增长。

由于Java语言有季节性的影响,主要是因为本科的学习课程里大量使用Java教学。在秋季和春季,Java的流量上升,而夏季则下降。

那么,到今年年底,Java还会再追上Python吗?我们可以用一个叫做“STL”的模型来预测未来两年的增长,这个模型将增长与季节趋势相结合,对未来的增长情况作出预测。

根据这个模型,Python可以保持领先或在秋季被java超越,但模型很清楚的显示,2018年以后,Python将成为最热门的语言。

STL也表明,javascript和java仍将像过去两年一样,继续保持领先,分别位居top2或top3。

哪种语言增长最快?

上面只考虑了六种最受欢迎的编程语言。考虑到其他主要的技术或语言,我们来看看在高收入国家里,哪些语言增长最快?

我们根据2017和2016的访问流量比例来确定增长率。在此次分析中,我们决定只考虑编程语言(如java、python)和平台(如iOS,Android,Windows和Linux),而没有对比分析其他框架(如Angular)或流行库(如TensorFlow),虽然这些技术同样有显著的增长,我们将在以后的文章中分析。

从上图可知:

  1. Python的年增长率达到27%,仅有python语言做到了既有快速增长又有大的访问量

  2. 另一个有类似情况的是R语言。

  3. 流量最大的Java和Javascript等语言,基本保持稳定,增长很慢。

  4. PHP、Android、和iOS则稍微有下降。

  5. Objective-C, Perl和Ruby则下降很多

  6. 函数式编程语言中,Scala是访问量最大且保持增长的,而f#和Clojure则萎缩很多。此外,Haskell语言则保持稳定。

,上图中忽略了一个重要的因素,TypeScript在过去一年中的增长率在142%,远远超过其他语言或技术,因此在上图中没有考虑TypeScript。

同样地,可以看到,还有其他规模较小的语言,其增长速度也超过Python(如R,Go和Rust),此外,Swift和Scala等语言也增长较快。 那么,从更长的时间段来看,这些语言的增长跟Python对比如何呢?

从上图可看出:

  1. R和Swift的增长确实令人印象深刻

  2. TypeScript只在一个很小的时间段里特别高的增长

  3. 其他几种语言,在早期的时候,访问量很小,增长并不明显

请注意,我们并不是说这些语言以任何方式与Python“竞争”。相反,我们正在解释为什么我们要把它们的增长单独拿出来跟Python进行对比。

Python是一个不寻常的例子,它既是Stack Overflow上访问次数最多的语言之一,也是增长最快的语言之一

顺便说一句,它也在加速!自2013以来,它的年增长率逐年加快。

全球其他国家的情况

到此为止,我们已分析了高收入国家的语言或技术的增长情况。那么,在全球其他国家(如中国、印度、巴西和俄罗斯),Python的增长是否也有类似的情形呢?

通过分析,我们发现Python亦表现出色。

从上图可知:

在全球其他国家,Python仍是增长最快的语言,从2014年以后,Python开始快速增长。

事实上,Python的年增长率,全球其他国家比高收入国家要稍微高一些

本文中许多关于各种语言或技术的增长或下降的趋势,高收入国家表现出跟全球其他国家的正相关性。在这两类经济体中,Spearman相关系数为0.979。

在某些情况下,你可以看到类似于“Python”所发生的“滞后”现象,在那里,一种技术在一两年内在高收入国家被广泛采用,然后在世界其他地方扩大。(这是一个有趣的现象,可能是未来博客文章的主题!)

需要说明的

我们不想为任何语言战争做出贡献。语言使用者的数量并不意味着它的质量,当然也不能告诉你哪种语言更适合某一特定情况。

然而,考虑到这一点,我们认为了解哪些语言构成了开发者生态系统,以及生态系统可能如何变化是值得的。

这篇文章表明,在过去的五年里,尤其是在高收入国家,Python的增长是惊人的。

原文作者:David Robinson,翻译:Lemon

文章英文标题:The Incredible Growth of Python

来源: https://stackoverflow.blog/2017/09/06/incredible-growth-python/


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存