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

推薦訂閱源

博客园 - 司徒正美
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 安全吗?
科技愛好者週刊(第 175 期):知識廣度 vs 知識深度
阮一峰 · 2021-09-10 · via 阮一峰的网络日志

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

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

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

封面圖

河北太行山脈,山頭密密麻麻都被太陽能板覆蓋了。(via

本週話題:知識廣度 vs 知識深度

上一期談到,"特長程序員"比"全能程序員"吃香。

網友發給我一個網址,國外有人已經談過這個話題。

國外作者畫了一張圖,將世界上的程序員比喻成三種形狀。

(1)大餅型:擁有知識廣度,但沒有知識深度。

(2)竹竿型:擁有知識深度,但沒有知識廣度。

(3)T 型:介於前兩者之間。

那篇文章也認為,通常情況下,竹竿型程序員的出路最好,僱主願意為知識深度買單。因為現代社會高度分工,越是大公司,崗位職責越明確,需要的是領域專家,而不是多面手。

但是作者提到,有一種情況例外,知識廣度有明顯優勢,那就是確定項目路線的時候。

請看上圖,右上角有一個黑點,那是公司的目標。當前位置在左下角的原點,兩點之間沒有現成的道路,需要自己尋找實現路徑。

這時,知識廣度就發揮作用了,瞭解的信息越廣泛,知道的情況越多,就越可能具備洞察力,能夠在多條路徑裡面,選出最合適的道路。知識面狹窄的人,由於不瞭解其它道路,不管遇到什麼問題,可能都選擇他會的那一條路,比如 Java。

這就是全能程序員的優勢,判斷正確的仰角 θ,使得兩點之間距離最短;特長程序員的優勢是前進速度 r,可以在既定道路上做到快速前進。所以,知識的廣度能告訴你什麼是正確的方向,知識的深度則可以讓你在該方向上快速前進。

對於長期而艱鉅的項目,走得快固然重要,但更重要的是走對方向。如果仰角 θ 不對,走得再快也沒用,因為一開始就走錯方向,後期必須停下來校正方向,甚至可能永遠到達不了目標,白白浪費了生命。

因此,全能型的人才比較適合確定項目方向,擔任團隊領導。 喬布斯、馬斯克就是這樣的人,強在知識的廣度,而不是知識的深度。他們既懂技術,又懂市場和管理,還了解人文("我喜歡站在人文和技術的交叉點"),一旦掌握資源,就能帶領團隊,做出創新的產品。但是,如果讓他們擔任工程師,絕對是糟糕的工程師,會被開除。

不過話說回來,現實中,誰會因為你知道的事情多,就讓你擔任團隊領導呢?反而是因為你克服了技術難題,才有機會來領導團隊。喬布斯和馬斯克都是自己創業才出頭的,恐怕不是偶然。

總結一下,對於公司來說,如果有明確的技術方向,那麼就需要聘請特長程序員,幫助加快開發速度。如果是剛剛誕生的創業公司,方向還在摸索之中,那麼全能程序員也許更有價值。

設計師零基礎入門

隨著互聯網一起飛速發展的職業,除了程序員,就是設計師了。

大家知道嗎,設計師的招聘需求,一點不比程序員少。而且,由於自學的難度高,好的設計師有時比程序員更難求。

國內的設計師一直存在巨大的人才缺口,供不應求。設計師的平均工資,北京市今年達到了18K,可能已經超過了程序員的平均工資。

在互聯網公司的產品團隊裡面,設計師都是標配,而且往往不止一個,前端程序員都有對接的設計師。大型團隊的設計師,還有明確的分工:UI 設計師、平面設計師、交互設計師......

週刊每週介紹的課程,一般都是程序員課程,今天是第一次,向大家介紹一個免費的設計師課程 《零基礎學 UI 設計 & 視覺設計》

如果你想增加一些設計知識,或者就是想成為設計師,去互聯網公司或廣告公司求職,那麼就是這個課程的目標聽眾。

課程分成三天,老師先講解海報設計、品牌設計、UI 設計的一些要領,然後帶你完成一個真實的海報設計項目和一個名企品牌的設計方案,最後還會分享設計師的市場行情和職業規劃。它可以當作設計師入門培訓,也可以當作求職訓練。

該課程由國內著名的培訓機構"開課吧"提供,三天的講課之中,除了體驗如何完成設計項目,動手實操海報創意作品以外,還可以獲贈設計的學習資料包。

微信掃描上方二維碼,或者點擊這個鏈接,添加助教老師就可以報名。感興趣的朋友,不妨聽聽看。

科技動態

1、高科技軟甲

《自然》雜誌報道,科學家最近研發出一種 3D 打印面料,可以做成人體軟甲。

這種材料是一種聚合物,而不是針織物。它的最大特點是能在柔軟和堅硬兩種狀態之間切換。處於柔軟狀態時,它易彎折,可以貼附在人體表面。

但是一旦成型以後,它會變得異常堅硬,能夠承受巨大的外力。因此,可以用作運動員、軍人的外骨骼和防彈衣。

2、智能機器馬

小鵬汽車發佈了一款可以乘坐的智能機器馬,其實就是一個四足機器人,帶有攝像頭、激光雷達等汽車級別的智能駕駛系統。

它可以當作玩具,讓小朋友騎,會自動行進,智能避障,並且能跟小朋友進行互動對話。小朋友撫摸機器馬,它也會做出反應。

此外,它還可以當作載具,在主人取貨、逛街、遠足時載貨。它的具體發售日期和售價,還沒有公佈。

3、新陳代謝速率

《科學》雜誌報道,科學家發現人體新陳代謝的速率,與以前認為的不一樣。

  • 1歲時,新陳代謝達到最高點。
  • 1歲到20歲,新陳代謝每年放緩約3%。
  • 20歲到60歲,新陳代謝保持穩定。
  • 60歲以後,每年下降約0.7%。

這意味著,青年和中年時期,人體的能量消耗速度並沒有下降。

所以,20歲到60歲之間,節食可以減肥,因為新陳代謝並沒有放緩,只要吃得少,體重就會下降。進入60歲以後,就很難通過節食減肥,因為新陳代謝每年都在下降,節食效果越來越小。

4、SpaceX 的民用航天項目

SpaceX 公司預定在下週三(9月15日),發射一艘宇宙飛船,四名宇航員全部都是平民。這是歷史上第一次"平民宇航員"的宇宙飛行,為將來的太空旅遊做嘗試。

這四名乘客此前沒有任何宇航經驗,他們將在太空停留三天。這與貝佐斯今年7月份僅僅持續50分鐘的"飛出大氣層"之旅完全不一樣,更接近真正意義上的"太空旅遊"。

5、道路使用費

美國國會最近通過了一項計劃,研究徵收統一的道路使用費是否可行。

目前,世界各國都對汽油額外收費,用於道路維護,比如美國徵收汽油稅,中國徵收燃油附加費。但是,越來越多的人開始使用電動汽車,不再使用汽油車,這筆錢就收不到了。

為了給道路維護提供資金,確實應該找到一種辦法,按照行駛里程,對所有車輛徵收道路使用費。

6、小行星撞地球

根據美國宇航局的計算,有一顆叫做 Bennu 的小行星,直徑約為492米,將在一個多世紀後的2135年到2200年之間,在地球和月球之間經過,而且不能排除撞上地球的可能性。

早先的計算是撞擊概率為2,700分之一,後來經過修正為1,750分之一。不過,就算千分之一的可能,真的相撞了,那時的科技應該有改變小行星軌道的方法。

7、Mac 專用機械鍵盤

很多人不喜歡筆記本電腦的鍵盤,不如機械鍵盤手感好。一家英國的鍵盤公司,就發明了一種供筆記本電腦使用的便攜式機械鍵盤。

使用時,套在 Mac 筆記本鍵盤上方即可。這樣的話,既提供了良好的打字手感,又不必適應不同的鍵盤佈局。

文章

1、青海冷湖:東半球唯一一個世界級天文臺址誕生記(中文)

中國國家天文臺經過3年連續監測認定,青海冷湖的光學觀測條件比肩國際一流大型天文臺。

這一發現為中國光學天文發展創造了重大機遇,也為國際光學天文發展提供了寶貴的戰略資源。8月18日的《自然》雜誌公佈了這項重大科學進展。

2、中國的實驗室猴子短缺(中文)

生物醫藥研究,都需要用到實驗室猴子(主要是獼猴)。獼猴是國家保護動物,不能去野外抓,只能從養殖場購買。由於疫情,猴子供應緊缺,價格飛漲。本文介紹了國內實驗室猴子的狀況。

3、使用 React.memo() 提高組件性能(英文)

默認情況下,如果 React 父組件重新渲染,它包含的所有子組件都會重新渲染,即使子組件沒有任何變化。

React.memo() 方法可以防止子組件不必要的渲染,從而提高組件性能。

4、CSS 盒狀模型的 block 和 inline 之分(英文)

CSS 盒狀模型的bordermarginpadding屬性,有 block 和 line 之分,比如paddingpadding-inlinepadding-block兩個子屬性。本文介紹這種區別。

5、elm 語言的使用心得(英文)

作者在生產環境使用 Elm 將近兩年了,寫了10萬行代碼。這篇文章詳細評價了 elm 語言,給予很高的評價。本文寫得很好,推薦閱讀。

6、NetBSD 解釋(英文)

一篇科普文章,介紹什麼是 NetBSD 操作系統,它的由來和特點。

7、Let's Encrypt 的免費替代品(英文)

現在大家都用 Let's Encrypt 生成免費的 HTTPS 證書,本文介紹其它三個類似的免費證書服務。

8、JavaScript 漣漪動畫(英文)

一篇簡單的 JavaScript 教程,介紹如何在 Canvas 上面,使用正弦函數畫出漣漪動畫。

工具

1、Clip It

一個智能視頻剪輯軟件,分析 OBS 軟件的直播視頻,從中選出精彩片段,通過人工智能自動生成一段精選視頻。

2、NvChad

一個 NeoVim 編輯器的插件集合,將其變成一個完備的 IDE 開發環境。你也可以用它來了解 NeoVim 編輯器需要安裝什麼插件。

3、Lit

谷歌推出的基於 Web Components 的前端框架,非常小巧(5KB),用法很優雅。

4、intellij-media-player

這個插件可以讓 JetBrains 公司的 IDE,在背景裡面播放視頻。適合在同一個窗口,一邊編碼,一邊看視頻。(@wuyr 投稿)

5、markdown-tweet-scheduler

使用 GitHub Actions 將倉庫裡面的 Markdown 文件,定時發到推特上面。

6、Webpack to Vite

這個工具可以將 Webpack 項目轉為 Vite 項目。(@Chieffo2021 投稿)

7、Act

一個在本機搭建 GitHub Actions 環境的工具,讓你在本機運行 GitHub Actions,可以用來驗證 workflow 文件是否正確。

8、TypeIt

一個 JS 庫,用來在網頁上生成打字機輸入文字的動畫效果。

9、Gitfs

這個工具把一個遠程 Git 倉庫掛載到本地目錄,該目錄所有的變動自動提交到 Git,並推送到遠程倉庫,因此也可以回滾到任意時點。它相當於實現了基於 Git 的文件系統。

資源

1、商務部國別指南

商務部網站提供全世界各國的《國別指南》,PDF 文件免費下載,詳細介紹各國基本情況,內容非常實用。

2、交互式線性代數

一本英文的初級線性代數教材,免費在線閱讀,並提供 PDF 下載,最大特點就是配有很多圖片,方便理解。

3、機器學習入門

瑞典烏普薩拉大學的《機器學習》英文教材,針對大學新生,有 PDF 全書下載。

4、Merlin

一個手機 App,用來識別看到或聽到的鳥類,特色是可以根據鳥的叫聲識別是什麼鳥。

5、技術面試手冊

工程師如何準備技術面試的英文免費電子書,全書分成兩部分:面試本身的準備和技術知識的準備。GitHub 有5萬多顆星。

圖片

1、中銀膠囊塔大廈

1972年,日本東京建造了一個膠囊大廈,使用140個預置的公寓單元,堆疊成一幢樓,稱為中銀膠囊塔。

建築師的設想是,以後可以隨意更換某個單元,使用新的膠囊替換舊的,不影響其他單元。但是建造完成後,開發公司就破產了,所有單元后來都沒有更換過。

更糟糕的是,由於組合結構本身的缺陷,以及建造質量不過關,建成後一直有漏水問題,導致內部結構生鏽,破損不堪。前幾年,政府決定拆除這棟樓,但是一直沒有動工。

目前,樓裡只有少部分的房間,還有人居住。前幾年,有一位攝影師拍攝了一些膠囊大樓居民的生活狀態。

2、古斯塔夫·哈肯松

1951年,66歲的瑞典人古斯塔夫·哈肯松(Gustaf Håkansson),報名參加一個超長距離1764公里的自行車比賽。主辦方拒絕了,理由是他的年紀太大了,比賽只允許40歲以下的人參加。

但是,他還是跟選手一起出發了,但不是正式參賽者,而是在最後一名參賽者出發後一分鐘出發,並穿著一件寫著零的號碼牌襯衫。

比賽分成好幾天,其它參賽者睡覺時,古斯塔夫·哈肯松依然在騎車。他留著很長的白鬍子,顯得更加蒼老。許多報紙都報道了他的故事,引起了全國的關注,他變成了知名人物。

經過6 天 14 小時 20 分鐘,他率先到達終點,比其它參賽者早了 24 小時。人們在終點迎接他。

他一直活到了1987年,102歲逝世。

3、空中看極光

一位歐洲宇航員在國際空間站,拍到了地球南極的極光照片。

最難得的是,那天是滿月,所以光照非常好,可以清晰地看到雲層和地面,非常壯觀。

文摘

1、錯誤的面試答案,讓我得到了工作

2007年,我去一家公司應聘程序員。當時,為了應聘成功,我不得不故意答錯了一個問題。你可能覺得很奇怪,讓我解釋一下怎麼回事。

面試官有兩個人:技術團隊的負責人和公司總經理。總經理是技術負責人的上級,技術負責人對我進行提問。

一開始是幾個一般性的問題,然後他問我"什麼三層架構"?

我回答說,"三層架構"就是客戶端-服務器-數據庫。我還補充說 Web 瀏覽器就是最常見的瘦客戶端。他們似乎對我的回答很滿意。

他接著問:"三層架構與 MVC 模式(模型-視圖-控制器)有什麼關係?"

我知道,這個問題有一點棘手。大多數人都會將兩者等同起來,但是實際上,MVC 模式只用於中間的"應用程序"層,並不涉及客戶端和數據庫。

維基百科是這樣解釋的:

"三層架構"的一個基本規則是,客戶端不直接與數據層通信,所有通信都必須通過中間層。因此,從概念上講,三層架構是線性的。

然而,MVC 模式是三角形的:視圖層向控制器發送更新,控制器更新模型,模型的更新又直接觸發視圖的更新。

我原想這樣回答,但是我懷疑,面試官認定的正確答案,就是大多數人的錯誤答案。如果我說出自己的答案,他會認為我是錯的。

要是我當面指出他的錯誤,而他的老闆又在一旁,就等於在老闆面前讓他丟臉。那麼,他可能會堅持自己的立場,拒絕我的正確答案,挽回自己的面子。他也可能承認自己錯了,當眾丟臉。

我覺得這兩種結果都不好,最後決定,我必須回答他們眼中正確的答案。

我先試探著,說出我的正確答案,看看對方的反應。

"MVC 模式是一種軟件模式,屬於代碼的組織形式,大多數情況下,僅在應用程序層運行......"

我看到技術負責人皺著眉頭,所以猜想這不是他預期的答案。我就改口說:"視圖對應用戶界面,控制器對應應用層,模型對應數據庫"。

搞定!回答正確!大家都很高興,我得到了這份工作。

這個故事告訴我們,面試不僅僅需要技術技能,還需要人際交往能力。這也很合理,因為實際工作中,確實兩種能力都需要。

言論

1、

宇宙誕生於138億年前的大爆炸,可能會在未來數十億年後終結。我們還不知道宇宙到底是什麼,但是無論宇宙是什麼,它肯定與我們人類無關。我們越瞭解宇宙,宇宙也就越發顯得毫無意義。

-- 史蒂芬·溫伯格,不久前去世的諾貝爾獎得主、美國物理學家。這是他的暢銷科普書《宇宙誕生後的前三分鐘》裡面的名言。

2、

自由軟件運動,本質上不是一場軟件運動,而是一場社會運動,因為它的核心是提倡一種基於"共享"的意識形態,要求成員相互支持和幫助。

-- 《理查德·斯托曼與自由軟件的歷史》

3、

許多企業拒絕自由軟件,提出質疑:如果一家公司免費贈送軟件產品,它如何生存?

理查德·斯托曼不得不向他們解釋:自由軟件只是要求給予用戶自由,而不是提倡免費。但是,企業無法理解這種意識形態的細微差別。

-- 《理查德·斯托曼與自由軟件的歷史》

4、

日本的卡通片畫師,畫一幀可以賺 1.80 美元,有時一個月只能畫 300 幀,總收入為 540 美元。這點錢維持生計非常困難,所以日本動畫師離職率極高。

-- 《日本動畫師離職率高達90%》

5、

我在普林斯頓大學學習物理學時,曾經與一個同學一起花了三個小時,研究一個非常困難的偏微分方程,但一無所獲。後來,我們去找了班上最聰明的同學,他看了幾分鐘就說:"餘弦變換可以解"。我們表示不理解,他就寫了三頁紙的答案,並說幾年前就解過類似的問題。

因為這件事,我知道自己永遠不會成為一名偉大的理論物理學家,所以就改學了計算機。

-- 貝佐斯,亞馬遜公司的老闆,回憶大學生活

歷史上的本週

2020年(第 124 期):華為如何考核員工

2019年(第 72 期):當代人不再有手稿

2018年(第 21 期):人生的水平運動和垂直運動

訂閱

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

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

(完)