慣性聚合 高效追蹤和閱讀你感興趣的部落格、新聞、科技資訊
閱讀原文 在慣性聚合中打開

推薦訂閱源

博客园 - 司徒正美
V
V2EX
T
Tailwind CSS Blog
有赞技术团队
有赞技术团队
aimingoo的专栏
aimingoo的专栏
Apple Machine Learning Research
Apple Machine Learning Research
IT之家
IT之家
Blog — PlanetScale
Blog — PlanetScale
A
About on SuperTechFans
月光博客
月光博客
T
The Blog of Author Tim Ferriss
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
博客园 - 聂微东
The GitHub Blog
The GitHub Blog
V
Visual Studio Blog
WordPress大学
WordPress大学
酷 壳 – CoolShell
酷 壳 – CoolShell
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI

阮一峰的网络日志

科技爱好者周刊(第 396 期):互联网通信的替代方案 科技爱好者周刊(第 396 期):互联网通信的替代方案 - 阮一峰的网络日志 科技爱好者周刊(第 395 期):软件开发的第三种方式 科技爱好者周刊(第 395 期):软件开发的第三种方式 - 阮一峰的网络日志 科技爱好者周刊(第 393 期):脑腐状态 科技爱好者周刊(第 392 期):axios 投毒与好莱坞式骗术 科技爱好者周刊(第 391 期):AI 的贫富分化 科技爱好者周刊(第 390 期):没有语料,大模型就是智障 套壳中国大模型撑起500亿美元估值?扒一扒 Cursor 的"套壳"疑云 科技爱好者周刊(第 389 期):未来如何招聘程序员 科技爱好者周刊(第 388 期):测试是新的护城河 零安装的"云养虾":ArkClaw 使用指南 科技爱好者周刊(第 387 期):你是领先的 科技爱好者周刊(第 386 期):当外卖员接入 AI 字节全家桶 Seed 2.0 + TRAE 玩转 Skill 科技爱好者周刊(第 385 期):马斯克害怕中国车企吗? 智谱旗舰 GLM-5 实测:对比 Opus 4.6 和 GPT-5.3-Codex 科技爱好者周刊(第 384 期):为什么软件股下跌 科技爱好者周刊(第 383 期):你是第几级 AI 编程 Kimi 的一体化,Manus 的分层 科技爱好者周刊(第 382 期):独立软件的黄昏 AI native Workspace 也许是智能体的下一阶段 科技爱好者周刊(第 381 期):中国 AI 大模型领导者在想什么 科技爱好者周刊(第 380 期):为什么人们拥抱"不对称收益" 科技爱好者周刊(第 379 期):《硅谷钢铁侠》摘录 我如何用 AI 处理历史遗留代码:MiniMax M2.1 升级体验 科技爱好者周刊(第 378 期):预测是新的互联网热点 科技爱好者周刊(第 377 期):14万美元的贫困线 科技爱好者周刊(第 376 期):太空数据中心的争议 科技爱好者周刊(第 375 期):一扇门的 Bug 终于有人做了 Subagent,TRAE 国内版 SOLO 模式来了 科技爱好者周刊(第 374 期):6GHz 的问题 VS Code 使用国产大模型 MiniMax M2 教程 科技爱好者周刊(第 373 期):数据模型是新产品的核心 国产大模型接入 Claude Code 教程:以 Doubao-Seed-Code 为例 科技爱好者周刊(第 372 期):软件界面如何设计 大模型比拼:MiniMax M2 vs GLM 4.6 vs Claude Sonnet 4.5 科技爱好者周刊(第 371 期):一个乐观主义者的专访 科技爱好者周刊(第 370 期):正确的代码高亮 错误处理:异常好于状态码 科技爱好者周刊(第 369 期):Tim 与罗永浩的对谈 科技爱好者周刊(第 368 期):不要这样管理软件团队 一天之内,智谱和 Anthropic 都发了最强编程模型 科技爱好者周刊(第 367 期):Nano Banana 的几个妙用 科技爱好者周刊(第 366 期):旧金山疯狂的 AI 广告 科技爱好者周刊(第 365 期):流量变现正在崩塌 科技爱好者周刊(第 364 期):最难还原的魔方 科技爱好者周刊(第 363 期):最好懂的神经网络解释 科技爱好者周刊(第 362 期):GitHub 工程师谈系统设计 科技爱好者周刊(第 361 期):暗网 Tor 安全吗?
科技愛好者週刊(第 159 期):遊戲開發者的年薪
阮一峰 · 2021-05-21 · via 阮一峰的网络日志

這裡記錄每週值得分享的科技內容,週五發佈。

本雜誌開源(GitHub: ruanyf/weekly),歡迎提交 issue,投稿或推薦科技內容。

週刊討論區的帖子《誰在招人?》,提供大量程序員就業信息,歡迎訪問或發佈工作/實習崗位。

封面圖

重慶市很多山地,地形複雜,產生了特有的奇觀:被高架道路團團圍住的樓盤。(via

本週話題:遊戲開發者的年薪

最近,推特上面有很多歐美的遊戲開發者,曬自己的薪水,使用 #GameDevPaidMe 這個標籤就能看到,從中可以瞭解國外程序員的收入。

下面是一個美國開發者的發言。

他有超過十年的開發經驗,年薪是20多萬美元。這還是在西雅圖,如果在灣區,工資可能還會再高一些。這跟我聽說的差不多,美國高級程序員的年薪,一般都會超過20萬美元(約130萬人民幣)。

我沒想到的是,歐洲程序員的年薪,比美國少非常多。

上面這個英國開發者,作為高級程序員,年薪居然才4萬英鎊(約36萬人民幣)。他入行時,更是少到1.5萬英鎊(約14萬人民幣)。歐洲其他國家的情況也差不多,年薪也就幾萬歐元,如果是東歐國家(比如波蘭),薪水就更低了。

這就是令我吃驚的地方, 西歐國家的人均 GDP 遠高於中國,但是程序員的收入居然與中國差不多,甚至還低於中國。

我敢說,國內高級遊戲開發者的年薪,肯定不止4萬英鎊(36萬人民幣)。我舉一個例子,去年有一條新聞,騰訊起訴了兩名90後前員工,他們都是遊戲開發,離職後違反了競業條款,加入了競爭對手。為了計算違約金,法院的判決書詳細列出了薪資水平。

吉某某於2019年3月4日提出辭職,工作至2019年4月1日。2018年4月至2019年3月期間,吉某某每月固定工資32,240元,騰訊公司於2018年11月以"稅前發放"名義支付吉某某344.38元,2019年2月支付吉某某其他獎金113.08元。騰訊公司另發放2018年年終獎203,240元。

按照上面列出的數字,工資 + 年終獎接近60萬人民幣。這比英國遊戲開發者的收入,高出了一大截。這個還只是騰訊的普通開發,算不上骨幹程序員。

結論就是,中國程序員的年薪已經不低了,雖然不如美國,但是一點不輸給歐洲,高級程序員的收入其實要比歐洲高得多。 如果人民幣以後升值,薪水差異就會更大。我在推特上說,如果以國內遊戲業的薪水去歐洲招人,可以招到非常好的程序員。網友在底下評論,人家的薪水是以每天工作8小時計算的,這也是事實。

以前我們總是說,中國的勞動力成本低,這種說法已經不成立了,現在歐洲程序員反而比國內更便宜。這樣的一個直接後果就是,外包行業在國內搞不下去了,軟件外包就是比誰的成本低,國內的外包行業已經在萎縮了,倒是收費高昂的軟件諮詢公司越來越多。

對於年輕程序員來說,這也是前所未有的挑戰。你的工資高了,但是面對的競爭也強了,你是跟全世界的優秀人才在競爭。如果國外程序員比你優秀,還比你便宜,那麼僱主可能不會選擇你,反正可以遠程開發。所以,大家要有世界眼光,不要滿足於跟周圍的人比,要以世界水平來要求自己。

深度剖析 React 源碼

學習前端開發時,很多同學都有想法,想啃一啃框架的源碼。

這是很好的想法。如果能看懂源碼,用起來就會得心應手,個人能力也是很大提升。萬一還能向框架倉庫提交代碼,成為貢獻者,那更是個人的榮耀和職業生涯的成就。

首當其衝的,就是 React 的源碼。它是全世界最流行的前端框架,應用最廣,包含了很多重要概念(比如虛擬 DOM、hooks、fiber 等),多端適用,很有學習價值。

但是,React 源碼量級實在是太大了(壓縮後接近 300KB),內部構成非常複雜。很多同學第一次打開源碼,就被"勸退"了,因為根本找不到代碼入口。就算硬著頭皮讀下去,也是如墜雲霧之中。

就算這樣,考慮到下面幾點,我還是鼓勵大家啃一下 React 源碼。(1)大廠面試會問到 React 原理,沒看過源碼,很難深入理解。(2)讀源碼能提升解決 bug 和性能優化能力。(3) React 框架本身是一個非常好的學習資料,可以學到怎麼寫出規範的和可維護的代碼。(4)讀懂源碼可以證明你的潛力。

本週的課程資料就是 《深度剖析 React 17 源碼資料包》 ,由前京東資深前端工程師高少雲老師主講。這份資料從簡單的手寫 mini-react 入手,再到複雜的fiber、hooks,深入解讀 React 源碼。

課程主要內容如下。希望能夠引導大家,真正入門 React 源碼。

  • 第一課:《初步解讀 React 的工作原理》,講解虛擬 DOM 和 JSX 的源碼實現。
  • 第二課:《Fiber 的背景與實現》,講解 Fiber 架構。
  • 第三課:《深入解讀 Hooks》:深度解讀 Hooks 源碼。

現在只需要微信掃描下方二維碼,就可以 0 元 獲得《深度剖析React源碼》資料包。有意掌握 React 的同學,不妨學學看。

科技動態

1、

一家美國 3D 打印公司推出了木纖維打印,可以 3D 打印出木製品。

2、

國家廣電總局發佈統計,我國網民日均刷視頻約100分鐘。這個時長應該已經超過了刷網頁的時長。

3、

山東省和河南省簽訂《黃河生態保護協議》,規定從河南流入山東的黃河水,如果水質改善一個等級,山東給予河南6000萬元補償資金;如果惡化一個等級,河南給予山東6000萬元補償資金。

4、

美國政府正在考慮通過一項新法律,如果企業遭到勒索軟件攻擊,法律將禁止向勒索者支付贖金。政府希望讓勒索者無利可圖,從而停止攻擊。

5、

一位澳大利亞賽車手創下了氫動力汽車續航的世界紀錄,他使用一輛現代牌氫動力汽車,單次續航887.5公里,共消耗了6.27公斤的氫氣。

6、

巴勒斯坦和以色列最近爆發軍事衝突,下面是一張5月14日凌晨的照片。右側是巴勒斯坦發射的火箭彈,左側是以色列"鐵穹"( Iron Dome)防禦系統發射的攔截導彈,兩方對射,看上去非常壯觀。

7、

北京大興建成全球最大的加氫站,日加氫量可達4.8噸,共有8臺加氫機、16把加氫槍。一輛總重4.5噸的氫燃料電池貨車,只需加氫3分鐘,就能續航350公里。氫能每公斤30元,與傳統貨車的加油成本基本相當。

8、32位股價不夠用

美國最貴的股票,目前是巴菲特的伯克希爾·哈撒韋公司 ,過去一年股價不斷上漲,已經達到了421,000美元一股。

這給納斯達克股票市場造成了麻煩,因為交易所使用32位格式儲存股價,能夠記錄的最大值是2^32 - 1(4,294,967,295)。其中,留出4位作為小數,所以能夠記錄的最高股價為429,496.7295美元。只要伯克希爾·哈撒韋公司再上漲2%,就會超出這個最高價。

納斯達克市場已經暫停了伯克希爾·哈撒韋公司的報價,開始升級系統。巴菲特曾經被問到,為什麼不像大多數公司一樣拆分股票,讓股價變得便宜。他回答,這樣會吸引來很多不老練的短期投資者,他們根本不知道自己在做什麼,所以不會拆分股票。

文章

1、鴿子在我家窗口孵蛋(中文)

一對鴿子在陽臺的空花盆築了個簡易巢,然後在裡面下了兩隻蛋,並且孵了起來。作者觀察了半個月,終於看到小鳥孵出來了。

2、如何生成不規則邊框的背景圖(英文)

本文介紹為一個網頁元素添加不規則背景圖(上圖)的幾種方法。

3、Git 的 squash 合併(英文)

Git 分支進行合併時,有多種合併方式:直進合併、非直進合併、遞歸合併和 squash 合併。最後一種 squash 合併,指的是把待合併的節點彙總成為一個新的提交。本文介紹這種合併方式。

4、JavaScript 模塊的代碼重複性(英文)

作者做了一個實驗,他新建了一個 Angular 的標準項目,分析 node_modules 目錄裡面安裝的所有模塊,對腳本文件的每一個函數計算哈希值,結果發現61%的函數是重複的,莫非大家都是從 StackOverflow 拷貝代碼。

5、Rust 的不知名貢獻者(英文)

我們都知道,很多語言的創始人、主要貢獻者是誰。但是,Rust 語言的主要貢獻者是誰,大家卻說不出來。本文介紹 Rust 語言背後的貢獻者。

6、微小變化帶來的大收益(英文)

作者講了幾個案例,都是網站細節的微小改進,帶來用戶體驗的巨大改進,比如 GitHub 的 favicon 顯示構建結果(上圖)。

7、使用 Go 語言學習蒙特卡洛模擬(英文)

本文采用 Go 語言,使用各種小例子,講解什麼是蒙特卡洛模擬。

8、走進半導體巨頭(英文)

美國 CBS 電視網的著名新聞節目《60分鐘》,最近播出了一期半導體特輯,訪問英特爾和臺積電的 CEO,報道芯片為什麼會出現短缺。這是節目的文字稿。

9、JavaScript 的延遲加載屬性模式(英文)

如果一個對象的屬性值需要非常昂貴的計算,我們可能希望,只有用到這個屬性時,才對它求值。本文討論這在 JavaScript 裡面應該怎麼實現,作者是著名的尼古拉斯·扎卡斯(Nicholas C.Zakas)。

工具

1、Scheme flood

大家用桌面瀏覽器訪問這個網站,會列出你的電腦安裝了什麼應用(上圖)。這樣做的目的,是生成一個用戶指紋,從而追蹤用戶,作者寫了一篇詳細的文章,解釋這是怎麼實現的。(@jwenjian 投稿)

2、Chanify

一個開源的 iOS 設備消息推送工具,分為服務器和 iOS App 兩個部分。安裝以後,可以將文本/圖片/文件等各種消息推送到 iOS 設備。(@wizjin 投稿)

3、osmos::feed

一個通過 GitHub Actions 自動更新的 RSS 閱讀器,每次更新後會發佈成 GitHub Pages 的靜態網頁。(@chuanqisun 投稿)

4、APK 在線分析

一個在線工具,用來分析、修改 APK 文件(安卓應用安裝包),以及提取 APK 圖標。(@codemofa 投稿)

5、Come Browse With Me

這個在線工具通過 WebRTC,可以將你的瀏覽器窗口分享給他人,也就是說,別人可以看到你在頁面上的一舉一動。

6、readme.so

一個 Web 工具,通過拖拉自動生成代碼倉庫的 README 文件。

7、FicusJS

一個輕量級的 Web Components 開發框架,用於快速開發 Web Components 組件。

8、github-elements

這個倉庫收集了 GitHub 發佈的官方 Web Components 組件,目前有17個,都是 GitHub 官網實際在使用的項目。

9、一紙簡歷

使用 Markdown 編寫簡歷的在線工具,支持模板與實時預覽,可以導出為 PDF 文件。(@shfshanyue 投稿)

10、木及簡歷

編寫簡歷的在線工具,與上一個軟件類似,有多個模板可選擇,源碼見 GitHub。(@hua1995116 投稿)

資源

1、FFmpeg 操作備忘

這個網頁收集了 FFmpeg 一些常見操作的命令行寫法。

2、業餘編譯器作者的學習資源

該網頁收集各種編譯器相關的自學資源。

3、JavaScript 數據科學教程

一本英文的 JavaScript 教程,免費閱讀。從零基礎的語法開始講起,為數據研究人員提供必要的 JavaScript 知識。

4、IPv6 測試聚合站

一個專門收集各種 IPv6 網絡測試服務的網站。(@TulvL 投稿)

5、Starlink 地面站分佈圖

Starlink 的衛星上網,目前需要有地面站。網友在谷歌地圖上建了一個圖層,標出現階段所有的地面站位置。亞洲一個都沒有,所以國內就算有衛星天線,恐怕目前也無法使用 Starlink 衛星上網。

圖片

1、數學家的黑板

美國普林斯頓大學最近出版了一本《數學家的黑板》攝影集,收錄了很多數學家的課堂板書。

2、邁阿密的色彩

邁阿密是美國南方的旅遊勝地,是美國唯一一個外國出生的居民(58%)多於本土出生的居民的大城市。

GitHub 的一個產品經理最近移居邁阿密,感嘆這個城市的色彩,豐富得難以想象。她在自己網站上發佈了許多照片,下面是其中的幾張。

文摘

1、拉里·埃裡森的回憶

Oracle 公司的創始人拉里·埃裡森(Larry Ellison)在回憶錄《軟件戰爭》(Softwar)裡面,回憶了他跟比爾·蓋茨的一段往事。

1993年,我打電話給比爾·蓋茨,討論了一些技術問題。我不同意他的觀點,並解釋了我的理由。比爾說:"我考慮一下,會給你回電話。"

四小時後,比爾·蓋茨回電話說:"我覺得你是對的,但是有幾個地方,我還沒有想通,你能解釋一下 A、B 和 C 這幾點嗎?"

我說:"比爾,你過去四個小時內一直在考慮這個嗎?"

他說,是的,這是一個重要的問題,我必須想通它,現在我們接著把它討論清楚。

我驚呆了。他投入時間和精力,反覆思考這個問題,得出結論我是對的,他是錯的。大多數人不願承認自己是錯的,比爾毫不猶豫就這樣做了。他唯一關心的就是對和錯。這使得他是一個非常危險的對手。

2、對於教育的三點思考

美國培訓行業的一個創業者 David Perell,最近在他的郵件列表裡面, 談了對美國教育的三點感想。

(1)表面上,美國人總是表現出來對教育很關心,學校暴露的各種運作問題都能上新聞媒體。但是,對於學生怎麼學習、在學校裡到底學到了什麼,美國人卻漠不關心。

David Perell 認為,其實應該反過來,需要關心的是學生是否真的學到了東西,而對於學校的各種問題倒是可以漠不關心。

(2)學生應該特別重視寫作課。

如果你不知道如何寫作,可能就不知道如何思考。

(3)老師們總是抱怨學生不聽課,但是很少想一想,自己的講課是否值得一聽。

言論

1、

機器學習模型的耗電量越來越大。目前,最複雜的模型 GPT-3,要使用 1,287 兆瓦的電能,相當於大型水電站的發電量,運行一次產生552公噸的二氧化碳排放量。

-- 《谷歌否認 AI 模型的低效率》

2、

很多創業公司是君主制,公司和創始人越來越難以區分,比如特斯拉公司。

-- 《創始人的控制溢價》

3、

創業公司的三個核心要素:團隊,產品和市場。其中最重要的是市場,用戶數量和增長率是決定性因素。創業公司失敗的第一大原因就是缺乏市場。

-- Marc Andreessen 的創業指南

4、

領先他人一年,你會致富;領先他人十年,你會發瘋。

-- David Perell

5、

我已將手機更改為黑白模式,有效防止了手機沉迷。

-- Hacker News 讀者

歷史上的本週

2020年(第 108 期):陣地戰與奇襲戰

2019年(第 56 期):文科生為什麼不容易就業?

2018年(第 5 期):互聯網時代,做一個好人是划算的

訂閱

這個週刊每週五發布,同步更新在阮一峰的網絡日誌微信公眾號

微信搜索"阮一峰的網絡日誌"或者掃描二維碼,即可訂閱。

(完)