Stack Overflow開發者調查報告重磅發布
在調研了全球超過90000 名開發者之後,程序員社區Stack Overflow 重磅發布了《2023 Developer Survey》調查報告。在本次報告中,Stack Overflow 從工具、編碼、工作、社區等維度展開,同時深入研究了AI/ML 技術,並解析開發者如何在工作流程中使用這些技術。
接下來,我們將通過這份報告,了解當前最熱門的工具、最主流的技術、最前沿的趨勢。
01 編程語言:JavaScript 連續11 年成為開發者最常用的語言
2023 年延續了JavaScript 連續十一年成為開發者最常用編程語言的勢頭。
據調研數據顯示,在今年的十大編程語言中,我們看到三種流行語言的地位有所上升:Python、Bash/Shell(all shell)和C。
其中,Python 已經超過了SQL,成為第三大最常用的語言,對於那些非專業開發者或正在學習編程的人來說,Python 排在第一位。伴隨著Python 的流行,Python 庫在”其他技術和框架”主題中,排名很高。在過去三年中,PumPy 和Pandas 一直在前十名中。
C 語言在今天依然這麼流行是一個有趣的現象。儘管它從20 世紀70 年代就開始存在,但在Stack Overflow 的開發者調查中還沒有進入過編程語言的前十名,不過今年C 語言排名上升了一位,位居第10 名。另外,據TIOBE 指數顯示,截至2023 年6 月,C 是第二大最受歡迎的編程語言,其參與人數接近其第一大語言Python。鑑於C 語言是最受歡迎的低級語言之一,它是物聯網設備內嵌入式編程的首選語言,而且根據編程課堂Codecademy 的說法,C 語言”為我們幾乎所有的技術體驗提供動力”,所以今年開發人員比以往任何時候都更多地使用C 語言是有道理的。
當進一步細分到專業開發者和正在學習編碼的人的身上,我們發現,專業開發者最常用的編程語言分別是JavaScript、HTML/CSS 和SQL。
對於那些正在學習編碼的人來說,HTML/CSS 和JavaScript 幾乎並列為他們學習編碼的最流行語言。學生開發人員使用Python 多於SQL(59% 對37%)。
除此之外,Stack Overflow 還對開發者最為欽佩和期望使用的語言進行了調研。
數據顯示,Rust 是開發者最受推崇的語言,超過80% 使用它的開發者希望明年再次使用它。與之形成鮮明對比的是,只有不到20% 的人希望明年再次使用MATLAB 語言。
02 數據庫:PostgreSQL 取代了MySQL 位居第一
今年,PostgreSQL 取代了MySQL 位居第一。專業開發人員比那些學習編碼的人更有可能使用PostgreSQL (50%),而那些學習編碼的人更有可能使用MySQL (54%)。
專業開發人員和學習編碼的人使用MongoDB 的比例相似,對於學習編碼的人來說,它是第二受歡迎的數據庫(僅次於MySQL)。
數據顯示,在開發者眼中,PostgreSQL、Redis 和Datomic 是他們最受推崇的數據庫,雖然其中Datomic 的用戶最少。不過,這種推崇應該會促使其他人將Datomic 視為一個可行的選擇。
03 雲平台:AWS 使用率是Azure 的兩倍
AWS 仍然是所有開發者最常用的雲平台,使用率幾乎是所有受訪者使用第二多的雲平台Azure 的兩倍。
值得注意的是,Heroku 是去年編程學習者使用最多的雲平台,但今年跌至第五位。
對於已使用過這些平台的開發者而言,Hetzner 和Vercel 有很大一部分已經使用開發者希望未來可以繼續使用它們(69%+)。
04 Web 框架和技術:Node.js 和React.js 最常用
Node.js 和React.js 是所有受訪者最常用的兩種Web 技術。
專業開發人員相當平等地使用兩者,而那些學習編碼的人使用Node.js 多於React(52% vs 48%)。
其次,開發者最常用jQuery 和Express 。在專業開發者群體中,他們使用jQuery 的次數多於學習編碼的人(24% vs 18%),而學習編碼的人使用Express 的次數多於專業人士(25% vs 18%)。
另外,Next.js 從2022 年的第11 位上升到今年的第6 位,這可能是因為它在學習編碼的人中很受歡迎。
在期望學習的框架中,Phoenix 是開發者最為推崇的Web 框架和技術。與使用過三種最常見的React、Node.js 和Next.js 的開發人員相比,更多的開發人員會選擇再次使用Phoenix。
05 其他框架和庫
在所有受訪者中,.NET (5+) 今年再次成為其他框架和庫的榜首。不過,有些細微差距的是,學習編碼的人更多地使用NumPy 和Pandas 庫,而不是.NET (5+)。正如上文所述,這些庫使用率較高的原因是因為它與Python 兼容。
雲時代下,Docker 是開發者最受歡迎的工具
今年,Docker 是所有受訪者中使用最多的工具(53%),高於去年的第二位。
學習編碼的人更有可能使用npm(50%)或Pip(37%),而不是Docker(26%)。
Visual Studio Code 仍然是所有開發人員的首選IDE,今年它在所有開發人員中的使用率從75% 增加到81%。
數據顯示,Jira 和Confluence 是所有開發人員中排名前兩位的異步工具,與去年類似,但今年榜單有一名新成員闖入Top3:27% 的受訪者將Markdown File 用作異步工具。
不過,學習編碼的人更多地使用GitHub Discussions 而不是Markdown File(31% vs 29%),並且比專業開發人員更多地轉向Notion (26%) 和Trello (23%)。
三種最流行的同步工具對所有受訪者來說都是通用的:Microsoft Teams、Slack 和Zoom。Zoom 去年名列榜首,但今年排名第三,過去一年使用它的人數減少了約10 個百分點。
無論是個人使用還是專業環境使用,Windows都是最受開發人員歡迎的操作系統。
06 ChatGPT 是最受歡迎的AI 搜索工具
在今年報告中,Stack Overflow 特別針對AI 層面進行了深入的調查。數據顯示,83%的受訪者在過去一年裡使用過ChatGPT。遠遠超過排名第二位的Bing AI(20%)。
不過,有42% 的受訪者希望明年能夠嘗試使用Google Bard 或Bing AI。
在編碼層面,GitHub Copilot 是開發者最常用的AI 開發編碼工具,去年有55% 的受訪者使用它,今年是排名第二的Tabnine(13%)的四倍。
07 過去一年,薪資中位數增長10%,Zig 最吃香
據調查報告顯示,Zig 是薪資最高的編程語言,Erlang、F# 分別位居二三位。
Dart 和SAS 在2023 年的薪酬中位數增幅最高,同比增長超過20%。
所有受訪者的工資中位數增長了10%,專業開發人員的工資中位數增長了11%。
根據工作職位類別來劃分,高級管理人員和工程經理等高級職位的薪水往往最高。
工作年限越久,往往工資水平越高。根據報告顯示,薪酬最高的三個職位如高管、經理、營銷或專業銷售人員,任職的人平均擁有超過11 年的工作經驗。
08 AI 工具對程序員帶來了哪些影響?
自去年11 月ChatGPT 發布以來,Stack Overflow 網站的流量受到了不小的衝擊,隨之該網站也相繼宣布加大AI 的佈局,欲推出人工智能相關的付費服務。
因此,在本次報告中,Stack Overflow 也邀請開發者分享對於這些新型工具的看法。
數據顯示,70% 的受訪者正在或計劃在其開發過程中使用AI 工具。那些學習編碼的人比專業開發人員更有可能使用AI 工具(82% vs. 70%)。
目前是否使用AI 工具
對於AI 工具滲透到編碼日常中,究竟是好事還是壞事?77% 的開發者非常贊成使用AI 工具進行開發。不過,和正在學習編碼的人相比,有17% 的專業開發者感覺無所謂。
提高生產力是開發者從AI 工具中看到的最大好處。其次,加速學習和提高效率是很多開發者使用AI 工具的次要原因。
然而,在使用過程中,開發者對AI 工具輸出內容的準確性存在分歧。近42% 的開發者相信ChatGPT 等工具的輸出,不過31% 的人持觀望態度。
在開發流程中,82.55%的開發者覺得AI 工具可以有助於編寫代碼。其次,他們常在調試、記錄代碼、學習代碼庫等過程中使用AI 工具。
當然,無論是專業的開發者還是正在學習編碼的人,他們都相信開發工作流程將在未來一年內因為AI 工具的普及而變得不同。