當前位置:
首頁 > 知識 > Stack Overflow 報告:Python 正在令人難以置信地增長!

Stack Overflow 報告:Python 正在令人難以置信地增長!

Stack Overflow 報告:Python 正在令人難以置信地增長!


就高收入國家而言,Python 的增長甚至要比 Stack Overflow Trends 等工具展現的或其他針對全球的軟體開發的排名更高。 -- David Robinson

本文導航

  • -Python 在高收入國家的增長 …… 19%

  • -什麼標籤整體上增長最快? …… 41%

  • -世界其他地區 …… 70%

  • -下一次 …… 83%

編譯自: https://stackoverflow.blog/2017/09/06/incredible-growth-python/

作者: David Robinson

譯者: geekpi

我們最近探討[1]了那些世界銀行定義為高收入[2]的富裕國家是如何傾向於使用與世界上其它地區不同的技術。這其中我們看到的最大的差異在於 Python 編程語言。就高收入國家而言,Python 的增長甚至要比 Stack Overflow Trends[3] 等工具展現的或其他針對全球的軟體開發的排名更高。

在本文中,我們將探討在過去五年中 Python 編程語言的非凡增長,就如在高收入國家的 Stack Overflow 流量所示那樣。「增長最快」一詞很難準確定義[4],但是我們認為 Python 確實可以稱得上增長最快的主流編程語言。

這篇文章中討論的所有數字都是針對高收入國家的。它們一般指的是美國、英國、德國、加拿大等國家的趨勢,他們加起來佔了 Stack Overflow 大約 64% 的流量。許多其他國家,如印度、巴西、俄羅斯和中國,也為全球軟體開發生態系統做出了巨大貢獻,儘管我們也將看到 Python 在這方面有所增長,但本文對這些經濟體的描述較少。

值得強調的是,一種語言的用戶數量並不能衡量語言的品質:我們是在描述開發人員使用的語言,但沒有規定任何東西。(完全披露:我曾經[5]主要使用 Python 編程,儘管我已經完全切換到 R 了)。


Python 在高收入國家的增長

你可以在 Stack Overflow Trends[6] 中看到,Python 在過去幾年中一直在快速增長。但是對於本文,我們將重點關注高收入國家,考慮的是問題的瀏覽量而不是提出的問題數量(這基本上結果是類似的,但是每個月都有所波動,特別是對於較小的標籤分類)。

我們有關於 Stack Overflow 問題的查看數據可以追溯到 2011 年底,在這段時間內,我們可以研究下 Python 相對於其他五種主要編程語言的增長。(請注意,這比 Stack Overflow Trends 的時間範圍更短,它可追溯到 2008 年)。這些目前是高收入國家裡十大訪問最高的 Stack Overflow 標籤中的六個。我們沒有包括的四個是 CSS、HTML、Android 和 JQuery。

Stack Overflow 報告:Python 正在令人難以置信地增長!

2017 年 6 月,Python 是成為高收入國家裡 Stack Overflow 訪問量最高的標籤的第一個月。這也是美國和英國最受歡迎的標籤,以及幾乎所有其他高收入國家的前兩名(接著就是 Java 或 JavaScript)。這是特別令人印象深刻的,因為在 2012 年,它比其他 5 種語言的訪問量小,比當時增長了 2.5 倍。

部分原因是因為 Java 流量的季節性。由於它在本科課程中有很多課程[7],Java 流量在秋季和春季會上升,夏季則下降。到年底,它會再次趕上 Python 嗎?我們可以嘗試用一個叫做 「STL」 的模型[8]來預測未來兩年的增長, 它將增長與季節性趨勢結合起來,來預測將來的變化。

Stack Overflow 報告:Python 正在令人難以置信地增長!

根據這個模型,Python 可能會在秋季保持領先地位或被 Java 取代(大致在模型預測的變化範圍之內),但是 Python 顯然會在 2018 年成為瀏覽最多的標籤。STL 還表明,與過去兩年一樣,JavaScript 和 Java 在高收入國家中的流量水平將保持相似水平。


什麼標籤整體上增長最快?

上面只看了六個最受歡迎的編程語言。在其他重大技術中,哪些是目前在高收入國家中增長最快的技術?

我們以 2017 年至 2016 年流量的比例來定義增長率。在此分析中,我們決定僅考慮編程語言(如 Java 和 Python)和平台(如 iOS、Android、Windows 和 Linux),而不考慮像 Angular[9] 或 TensorFlow[10] 這樣的框架(雖然其中許多有顯著的增長,可能在未來的文章中分析)。

Stack Overflow 報告:Python 正在令人難以置信地增長!

xkcd - Fastest-Growing

由於上面這個漫畫[11]中所描述的「最快增長」定義的激勵,我們將增長與平均差異圖[12]中的整體平均值進行比較。

Stack Overflow 報告:Python 正在令人難以置信地增長!

Python 以 27% 的年增長率成為了規模大、增長快的標籤。下一個類似增長的最大標籤是 R。我們看到,大多數其他大型標籤的流量在高收入國家中保持穩定,瀏覽 Android、iOS 和 PHP 則略有下降。我們以前在 Flash 之死這篇文章[13]中審查過一些正在衰減的標籤,如 Objective-C、Perl 和 Ruby。我們還注意到,在函數式編程語言中,Scala 是最大的並且不斷增長的,而 F# 和 Clojure 較小並且正在衰減,Haskell 則保持穩定。

上面的圖表中有一個重要的遺漏:去年,有關 TypeScript 的問題流量增長了驚人的 142%,這使得我們需要去除它以避免壓扁比例尺。你還可以看到,其他一些較小的語言的增長速度與 Python 類似或更快(例如 R、Go 和 Rust),而且還有許多標籤,如 Swift 和 Scala,這些標籤也顯示出驚人的增長。它們隨著時間的流量相比 Python 如何?

Stack Overflow 報告:Python 正在令人難以置信地增長!

像 R 和 Swift 這樣的語言的發展確實令人印象深刻,而 TypeScript 在更短的時間內顯示出特別快速的擴張。這些較小的語言中,有許多從很少的流量成為軟體生態系統中引人注目的存在。但是如圖所示,當標籤開始相對較小時,顯示出快速增長更容易。

請注意,我們並不是說這些語言與 Python 「競爭」。相反,這只是解釋了為什麼我們要把它們的增長分成一個單獨的類別,這些是始於較低流量的標籤。Python 是一個不尋常的案例,既是 Stack Overflow 中最受歡迎的標籤之一,也是增長最快的其中之一。(順便說一下,它也在加速!自 2013 年以來,每年的增長速度都會更快)。


世界其他地區

在這篇文章中,我們一直在分析高收入國家的趨勢。Python 在世界其他地區,如印度、巴西、俄羅斯和中國等國家的增長情況是否類似?

確實如此。

Stack Overflow 報告:Python 正在令人難以置信地增長!

在高收入國家之外,Python 仍舊是增長最快的主要編程語言。它從較低的水平開始,兩年後才開始增長(2014 年而不是 2012 年)。事實上,非高收入國家的 Python 同比增長率高於高收入國家。我們不會在這裡研究它,但是 R (其它語言的使用與 GDP 正相關[14]) 在這些國家也在增長。

在這篇文章中,許多關於高收入國家標籤 (相對於絕對排名) 的增長和下降的結論,對世界其他地區都是正確的。兩個部分增長率之間有一個 0.979 Spearman 相關性。在某些情況下,你可以看到類似於 Python 上發生的 「滯後」 現象,其中一個技術在高收入國家被廣泛採用,一年或兩年才能在世界其他地區擴大。(這是一個有趣的現象,這可能是未來文章的主題!)

下一次

我們不打算為任何「語言戰爭」提供彈藥。一種語言的用戶數量並不意味著它的質量,而且肯定不會讓你知道哪種語言更適合某種特定情況[15]。不過,考慮到這點,我們認為值得了解什麼語言構成了開發者生態系統,以及生態系統會如何變化。

本文表明 Python 在過去五年中,特別是在高收入國家,顯示出驚人的增長。在我們的下一篇文章中,我們將開始研究「為什麼」。我們將按國家和行業劃分增長情況,並研究有哪些其他技術與 Python 一起使用(例如,估計多少增長是由於 Python 用於 Web 開發而不是數據科學)。

在此期間,如果你使用 Python 工作,並希望你的職業生涯中進入下一階段,那麼在 Stack Overflow Jobs 上有些公司正在招聘 Python 開發[16]。



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

作者:David Robinson[17] 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


點擊「了解更多」可訪問文內鏈接

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Linux技術 的精彩文章:

Headless Chrome 入門
ImageMagick 入門:使用命令行來編輯圖片
使用 Ansible 部署無服務(serverless)應用
我對 Go 的錯誤處理有哪些不滿,以及我是如何處理的

TAG:Linux技術 |