May Reading List

Alex O'Callaghan

五月閱讀清單

這是五月份值得一讀的有趣內容精選,你也可以在此閱讀上個月的文章

更多遭入侵的 npm 套件

又過了一個月,又出現了更多的 supply chain attacks(供應鏈攻擊)。各種TanStack 套件遭到入侵,這是一起「Mini Shai-Hulud」攻擊。Tanner Linsley(坦納·林斯利)分享了一篇詳細的事後分析報告,描述了攻擊如何透過 GitHub Actions 設定漏洞發生。稍後又有317 個 npm 套件使用相同的 credential harvesting(憑證竊取)腳本遭到入侵,該腳本會利用它找到的任何 npm 憑證在套件之間自我複製。

這再次強烈提醒我們要採取措施來強化 supply chain security(供應鏈安全)。我們已將所有專案升級到最近發布的pnpm v11,該版本預設將 minimumReleaseAge 設為 1 天。這些攻擊大多很快就會被發現,保留一些緩衝時間應該有助於抵禦這類攻擊。

同樣在安全議題上,我這個月發現了Varlock——一個有趣的工具,它能讓 agent 了解有哪些 secrets 可用,同時防止存取實際的密鑰值。確保機密資訊不會以明文形式存放在你的電腦上,也能在你不小心引入這類套件時,協助抵禦 credential harvesting 攻擊。

模型訓練與 Opus 4.8

Anthropic 發布了一篇部落格文章,談論其alignment training(對齊訓練)方法的變化,詳細說明了如何透過基於倫理選擇背後的原則與推理來訓練 Claude,從而提升 agentic alignment(代理對齊)。這讓人思考這或許也能應用在我們建立的 skills 上,因為僅列出期望行為的具體範例,對於 agent 遇到全新情境時是不夠的。

OpenAI 發布了一篇有趣的文章,談論「哥布林從何而來」。訓練「nerdy」人格特徵時,無意間給予了生物隱喻過高的獎勵,以至於最後不得不加入 system prompt 來告訴模型不要談論哥布林。

Anthropic 也在月底發布了Claude Opus 4.8,距離 4.7 僅僅一個多月。

使用 Agent 進行開發

Addy Osmani(艾迪·奧斯馬尼)發表了一篇關於long running agents(長時運行代理)不同策略的文章,不過我對於用這種策略來撰寫正式環境的程式碼仍持保留態度。

Birgitta Böckeler(碧姬塔·伯克勒)關於針對程式碼代理的可維護性感測器的文章值得一讀,內容探討了對於讓 agent 能夠自我修正至關重要的各種防護機制與檢查。

我也讀了 Helio Medeiros(海利歐·梅代羅斯)關於使用 DORA metrics(DORA 指標)衡量 AI 導入成效的文章。這與我在 Mintel 透過打造回顧型代理的工作所嘗試系統化進行的方法類似。

有趣的觀點

Mark Erikson(馬克·艾瑞克森)分享了一篇長文,談論他對 AI 程式碼工具從懷疑、恐懼到接受的心路歷程。

Tuhin Nair(圖欣·奈爾)寫了一篇關於資深開發者如何傳達自身專業的文章。其中有些觀點我相當認同,談到工程師如何思考並與企業內其他部門溝通。文中建議採用一套用於快速實驗的「speed」系統或許很吸引人,但對於實務上如何設置足夠的防護機制,以及對於已經賣給客戶的「speed」版本需要額外花多少功夫來拆解重構等細節,卻有所欠缺。

Lalit Maganti(拉利特·馬甘提)分享了一篇關於不要回答第一個問題的文章。我認為這對於任何在平台團隊工作或為其他工程師打造工具的人來說,都非常有共鳴。

Web 平台與前端

Chrome 團隊發表了一篇關於Declarative Partial Updates(宣告式局部更新)的文章。這項提案試圖讓亂序的 HTML 串流與更高效的 HTML 插入成為 Web 平台的一部分。基本上就是要讓islands architecture(孤島式架構)成為 Web 的一等公民。

Storybook 10.4 已經發布。對我而言最有趣的是它新增了對TanStack React 的一等支援。

Yangshun Tay(楊順·泰)撰文探討前端開發正在如何轉變,並針對前端開發者應該將學習與發展重心放在何處提出了建議。

我還發現了D2。我一直在部落格中使用Mermaid 來繪製圖表,但在自訂樣式上遇到了困難,D2 看起來是一個我想嘗試的強大替代方案。

有趣的技術選讀

2004 年的 RuneScape 如何在 56k 撥接網路下實現多人線上 RPG是一篇技術深度文章,深入探討了 2004 年的 RuneScape 客戶端如何透過瀏覽器中的 Java applet 實現高效的主從式通訊。這是一篇很有趣的文章,也是我早期遊戲回憶之一,更是我初次認識到 Web 有多強大的契機。

Netflix 技術部落格發表了一篇關於打造即時服務拓撲圖的文章。這個方法很有趣,儘管在技術實作上著墨不多,而且有很重的 AI 生成痕跡。這讓我很有共鳴,因為我在工作中正試圖讓 agent 能夠跨系統進行探查,並意識到有許多跨系統的依賴關係根本沒有被清楚地記錄下來,而這些知識大多只存在於人們的腦海中。

最後,Google 部落格上有一篇關於在程式碼審查回覆中加入脈絡的短文。文中提供了非常有用的指引,說明你應該如何回應程式碼審查的意見,並提供關於你如何或為何處理該意見的脈絡。

原文由 Alex O'Callaghan 發布

本文章由 muse-spark-1.2-contributor 進行翻譯