除了為了工作學習程式,也有不少開發者透過假日閒暇時間開發業餘專案。為了瞭解哪些程式語言在周末更受歡迎,程式問答網站 Stack Overflow 統計出各程式語言的討論熱度,在周間和周末是否有明顯差異。其中,兩段時間差異最大、在周末討論熱度特別高的程式語言,由純函數式語言 Haskell 奪下;而在周間討論熱度高、到周末卻乏人問津的,則不意外地、由企業軟體微軟 Sharepoint 居冠。
純函數式語言 Haskell 和企業軟體 Sharepoint,分別在周末和周間特別受歡迎
Stack Overflow 分析超過 200 萬則討論串,並統計討論串中的問題標籤數量。由於幾乎所有程式語言在周間的討論數都高於周末,因此,此處的「討論熱度」代表的是,「各程式語言(問題標籤)分別於周末與周間的討論『佔比』」,並分析其在周間與周末是否有明顯差異。
舉例來說,Haskell 佔整體周末討論的 0.365%,到了周間卻僅佔 0.21%;相反的,Sharepoint 在周末僅佔 0.0683%,周間則佔 0.188%,差異相當懸殊。由於 Haskell 並非企業中常用的程式語言、主要流行於學術圈和數學領域,也反映出工作與程式語言討論的相關性。
網友 RandomDev 留言分析,在工作時,開發者常須用 sharepoint 和 transact-SQL(tsql)開發內部網站,透過 VBA(Visual Basic for Applications)和 SOAP(Simple Object Access Protocol)將網站整合到舊系統,管理員再用 Windows PowerShell 腳本部屬上述系統。他接著開玩笑說,到了假日,受夠公司舊系統的開發者,結合 haskell 和演算法等人工智慧相關技術、設計機器人的組合語言(assembly)和 pointers,以及可做彈道計算器的 OpenGL 等技術,便可消滅公司所有骨灰級的老舊系統。
有趣的是,在周間特別受歡迎的討論問題標籤,Windows 瀏覽器 IE(標籤為 internet-explorer)也榜上有名。
周末討論度高:低階程式語言、演算法、app 開發相關
整體而言,和低階程式語言相關的技術在周末的討論度較高,如 C、C++、pointers、組合語言(assembly)等,另外,和演算法、遞迴和數學計算等數學相關的技術也頗受歡迎。同樣位於周末熱門榜上的 Heroku 和 Meteor,為 app 開發平台,通常被用於快速建立原型,推測可能更適合用於周末業餘型的專案。
另一方面,在周間特別受歡迎的技術都和微軟有關,包含 Excel、SQL Server、VBA、T-SQL,或是和其他企業科技公司(如甲骨文)有關。
想知道更完整的數據可參考下圖,越右邊代表討論度越高(如 JavaScript, Java, C#, PHP 等),越靠近 X 軸則代表周間和周末的討論熱度並無太大差別,反之則否。
其中,在周間特別受到歡迎、但在周末討論度相對較低的語言,多都和微軟相關,如 C#、ASP.NET、SQL Server、Excel、VBA 等,而在周末特別受到歡迎的語言則有 C、C++、Swift 和Node.js 等。
遊戲引擎、App 開發相關議題在周末的討論熱度逐年上升
過去幾年,在周末相對更受歡迎的程式語言也有變化。例如,Scala 和 Ruby On Rail 近幾年在周末的討論度下降,周間的討論度反而上升,意即這些本來較常用於業餘專案的程式語言,被開發者用於工作的趨勢越來越多。相反的,版本管理系統 SVN 在周末討論度逐年下降,推測可能和近年開發者傾向用 GitHub、因而受到影響。
而近幾年在周末討論佔比明顯上升的程式語言,包含遊戲引擎 Unity3D,和開發手機應用程式相關的標籤也穩定成長,如 actionscript-3、android-layout、按鈕、ListView等和畫面元件相關的標籤。
(本文由 數位時代 授權轉載;首圖來源:Flickr/Daniel Iversen)