這裡記錄每週值得分享的科技內容,週五釋出。
封面圖

成都出現了花田火鍋,火鍋店開在盛開的油菜花地裡,運營期兩個月。(via[6])
低程式碼程式設計,恐怕不會成功
這十幾年,一批批程式設計師前仆後繼,去搞低程式碼程式設計(包括無程式碼程式設計)。光在我身邊,就有三四批。

他們搞的低程式碼程式設計,我理解就是透過圖形介面,拖拉各種元件,自動生成軟體 UI 的底層程式碼,減少手工編碼。

這個想法很好,確實很多人需要,尤其不懂程式設計的人,這簡直是生成程式的唯一可用方式。
但是很奇怪,他們無一例外都失敗了,開發出來的低程式碼工具,開始還有一些好奇的使用者,很快就不來了,使用者越來越少,後來即使開源了,也沒人用。
更奇怪的是,這似乎不是偶然現象,業界所有的低程式碼工具好像都不成功,至少我想不出成功的例子,哪一個受歡迎的應用程式是用低程式碼工具生成的。
它的背後有什麼原因嗎?是哪裡沒有做對,還是低程式碼程式設計本身就不可行?
我一直沒有想通這個問題。雖然不看好,但是依然抱有一絲幻想,也許某一天醒來,低程式碼程式設計就成了主流,無論手機 App 還是桌面應用,滑鼠拖幾下,就可以生成。

直到上週,我讀到一篇文章《低程式碼程式設計受困於形式》[7](下圖),才恍然大悟,低程式碼程式設計有先天缺陷,恐怕不會成功。

文章說,優秀的作品都是形式(form)和功能(function)的統一。形式必須服從功能,功能決定了形式,英文叫做“form follows function”。

對於優秀的程式設計師,只要弄清楚了底層,UI(使用者介面)就會顯而易見。
低程式碼程式設計的問題在於,它是先有 UI(形式),再有程式碼(功能)。
使用者先拖拉生成 UI,系統再根據 UI 生成程式碼。這是本末倒置,讓底層程式碼適配 UI,註定了兩者都有問題:UI 是空想出來的,程式碼為了適配 UI,註定冗餘和低效。
所以,優秀的軟體不可能用這種方式生成,低程式碼程式設計不會成功。
我認為,他說的很有道理。低程式碼程式設計解決不了這個根本缺陷,適用場景有限,大概只適合一些簡單任務,或者生成原型,不會成為主流工具。程式設計師應該謹慎開發這類工具,付出的勞動很可能打水漂。
寫到這裡,問題就來了:AI 算不算低程式碼程式設計(或者無程式碼程式設計)?如果低程式碼程式設計不會成功,那麼 AI 程式設計會成功嗎?
我認為,AI 不同於低程式碼程式設計。低程式碼程式設計是使用者給出 UI,系統來生成程式碼,而 AI 是系統同時生成 UI 和程式碼,使用者只需要說出需求即可。
這種情況下,形式與功能的結合,完全取決於 AI 的能力。如果有一天,AI 影片能夠成功,畫面美,情節好,那麼 AI 程式設計大概也會成功,生成形式與功能統一的應用程式。
小程式容器 FinClip
現在的手機 App 有一個技術趨勢,大家注意到了嗎?
那就是新增小程式容器,讓自家 App 能夠執行其他應用程式。
不僅國內 App 這樣做,海外的一些超級 App 也紛紛效仿,比如 YouTube、Telegram、Line。

上圖就是 Youtube 應用內建的“小遊戲”,類似於微信小程式。
究其原因,大概是因為小程式這種架構很靈活,可以方便地新增和更新功能,有利於形成外部生態和變現。
今天,就向大家介紹一款國產的小程式容器 FinClip[8]。如果你想為自己的 App 引入小程式,就用得到它。
它是一個完整的、開箱即用的小程式技術解決方案,提供現成的 SDK,將小程式執行環境嵌入宿主 App。
有了它,任何開發者都能在 iOS / Android / HarmonyOS 等平臺,構建自己的"小程式宇宙"。下圖是 FinClip 目前支援的宿主平臺。

可以看到,除了手機系統,它還支援嵌入桌面應用、車機應用、電視應用等等。
此外,它還有一些很吸引人的技術特性。
(1)跨平臺統一性。它直接相容微信/支付寶/抖音小程式,可以一行不改,直接讓微信小程式跑在你的應用裡面,無需二次開發。
(2)敏捷開發正規化。它的小程式更新無需應用商店稽核,可以實現"小時級"迭代。
(3)小遊戲引擎。跟它配套的還有一個小遊戲即時內容互動引擎 RealClip,提供小遊戲執行環境。

這個引擎重點針對小遊戲的效能和相容性,進行了最佳化,除了微信小遊戲,還相容 Unity、Cocos、Laya、Egret Engine 等主流引擎和 WebView。也就是說,無論哪種引擎製作的小遊戲,都能夠直接執行在你的 App 中。
(4)配套開發工具 FinClip Studio。這個工具能將現有的小程式/小遊戲程式碼,一鍵轉換成獨立 App,做成可用於 iOS、Android 和鴻蒙的安裝包。
總之,如果你的 App 想引入小程式,或者你現有的小程式需要執行在其他應用(手機或桌面),那麼就可以嘗試 FinClip。
歡迎訪問 Finclip 官網[9]詳細瞭解,免費註冊試用。任何問題都可以加入官方社群交流(下圖)。

[活動] AI 創意挑戰賽,開始投票了
上週五,週刊釋出了訊息。首屆全國 AI 程式設計大賽的“創意賽道”,可以提交作品了,不管你會不會程式設計,只要有 AI 創意,都可以參賽。
訊息釋出後,大家反響熱烈。我從組委會同學那裡得知,已經有幾百個創意提交了。

從今天(3月14日)開始,大賽進入了投票階段,歡迎大家投票,評出最能打動你的創意。也許你還可以從中得到靈感,拿來自己實現。
所有投票使用者均可抽獎,獎品有小夜燈、工卡套、手持風扇等等。因為投票是當天有效,第二天可以再次投票,所以每個人有多次抽獎機會。
當然,如果你還有創意沒有提交,現在依然可以提交參賽。
已經參賽的同學,不要忘了為自己拉票,釋出到社交平臺上(公眾號/b站/小紅書/微信朋友圈/技術社群),分享比賽,爭取大賽獲獎。
大賽詳情和作品投票,可以點選這裡[10],或者掃描上方海報。
科技動態
1、人工心臟[11]
一個澳大利亞男子,植入了一顆人工心臟(下圖),已經活了100天,並且成功出院,創造了世界紀錄。

這相當於在胸腔植入一個血液泵,一天24小時推動血液迴圈。
他是目前世界唯一一個帶有人工心臟的人,也是世界第六例人工心臟植入。前五例的人工心臟都只是過渡,病人後來又移植了其他人的心臟。
如果機器心臟以後技術成熟了,人類的壽命可望大幅延長。
2、手機改路由器[12]
舊手機有什麼用?
一家比利時公司取出手機主機板,加上網線口、USB 口,將其改成了路由器。

上圖左側是手機主機板,右側是將手機主機板安裝在擴充套件板上,從而形成路由器主機板。
手機的 CPU、調變解調器、記憶體等,都是可複用的,因此改裝費用很低。而且,手機的硬體配置很高,效能比高階路由器強得多。
3、靜音圖示[13]
蘋果上週釋出的 MacBook Air M4,悄然改掉了一個26年之久的設計。
它把筆記本的靜音圖示(F10 按鈕上的圖示),在喇叭上加了一道刪除線。
下圖是以前的圖示。

下圖是現在的圖示。

這麼簡單的一個圖示,蘋果用了26年才改掉。
4、汽車的物理按鈕[14]
德國大眾汽車宣佈,未來它的所有車型,都會同時配備觸控式螢幕和物理按鈕。

上圖是大眾 ID.3 車型的控制檯,上方是觸控式螢幕,下方都是按鈕。
該公司表示,汽車不是手機,不能都靠觸控式螢幕,重要的功能必須有固定的位置和真實的觸感。
5、其他
(1)一家英國生物公司,研發了轉基因香蕉[15]。這種香蕉可以長期保持新鮮和黃色,不會變褐變黑。

即使剝開後12小時,香蕉皮也不變色,這樣有利於香蕉銷售。
(2)Android 15 將有一個原生的終端程式[16],提供一個基於 Debian 的 Linux 發行版供使用者使用。

這個功能的底層是虛擬機器機制,它將大大方便程式設計師,將安卓手機當作 Linux 桌面電腦使用。

文章
1、AI 大模型2024年的進展[17](英文)

著名程式設計師 Simon Willison 3月7日的演講稿,通俗地介紹了 AI 在過去一年的巨大飛躍,很好的綜述。
2、如何用 Claude Code 反編譯程式碼[18](英文)

作者演示了一個驚人的例子,使用 Anthropic 釋出的 Claude Code,將 Webpack 編譯出來的檔案反編譯,還原成原始碼。
3、CSS 跨文件檢視轉換[19](英文)
本文介紹一個示例,透過 CSS 新的跨文件檢視轉換功能,使得多頁面應用的跳轉,也像單頁面應用(SPA)一樣流暢順滑。
4、Cursor 上傳 .env 檔案[20](英文)

Cursor 是現在非常流行的一個 AI 程式碼編輯器,它的使用者論壇爆出一個帖子,有人發現它會上傳使用者的 .env 檔案,由於裡面都是環境引數,會帶來安全隱患。
5、JSON 與 JavaScript 的物件成員順序[21](中文)

JSON 與 JavaScript 的物件,裡面的成員順序有沒有規定?本文探討這個問題。
6、Go 語言錯誤處理機制的優點[22](英文)

Go 語言的錯誤處理很特別,沒有 try…catch 機制,錯誤是一個值,作者解釋這樣設計的好處。
工具
1、TypeScript 7[23]
微軟使用 Go 語言重寫了 TypeScript 編譯器 tsc,據說速度可以提高10倍,參看介紹文章[24]。

目前,TypeScript 的版本是5.8,等到這個工具穩定了,將釋出為 TypeScript 7。
2、QR Code Generator[25]

一個網頁應用,可以定製二維碼的顏色、斑點、徽標。
3、WatchYourLAN[26]

一個開源的網頁應用,用來掃描區域網的 IP 分配,可以傳送主機上線和掉線的通知。
4、XPipe[27]

一個跨平臺的桌面應用,透過圖形介面,將所有的伺服器連線在一個地方管理。
5、TransBridge[28]

一個開源的翻譯 API 代理服務,可以接入各種大模型,對外提供翻譯服務,試用 Demo[29]。(@fruitbars[30] 投稿)
6、DouYin Downloader[31]

開源的 Python 指令碼,用來下載抖音短影片。(@jiji262[32] 投稿)
7、Java Thread Dump[33]

免費分析 java thread 的網站,上傳 jstack 匯出的執行緒快照檔案,分析執行緒池內執行緒狀態。(@HbOrea[34] 投稿)
8、Mono[35]

製作內容分享卡片的免費網站。(@RiverTwilight[36] 投稿)
9、Telegram Files[37]

開源的 Telegram 檔案下載器,支援多頻道、多賬戶同時下載。(@jarvis2f[38] 投稿)
10、Obsidian 雲盤同步外掛[39]
一個開源的 Obsidian 外掛,將筆記自動同步到多種雲盤服務。(@ai-bytedance[40] 投稿)
AI 相關
1、Mistral OCR[41]
上週,Mistral AI 釋出了號稱史上最強的 OCR 識別工具,具有公式和表格的識別能力,參見介紹文章[42]。

網友 monsoonw[43] 做了一個免費的試用網站[44]。

著名程式設計師 Simon Willison 開源了一個 Python 指令碼[45],演示了怎樣呼叫 Mistral 的 API 進行文字識別,參考他的文章[46]。
2、Free QWQ[47]

免費、無限制的算力平臺,為開發者提供 QwQ 32B 大語言模型 API。(@nexmoe[48] 投稿)
3、Code-Review-LLM-Gitlab[49]

使用大模型對 GitLab 專案進行 Code review 的工具。(@mimo-x[50] 投稿)
4、人話翻譯器[51]
一個 Chrome 外掛,透過 AI 將難懂的中文翻譯成好懂的中文。(@DemoJ[52] 投稿)
資源
1、辰宇落雁體[53]

一個開源的中文手寫字型。
2、JetBrains Maple Mono[54]

一款合成字型,解決 JetBrains Mono 沒有中文字形的痛點,全部等寬無襯線,中英文 2:1 寬對齊。(@SpaceTimee[55] 投稿)
3、BeddyStories[56]

一個兒童睡前故事網站,收集了全球經典的兒童睡前故事。(@yimiqidage[57] 投稿)
4、IP 偵探[58]

免費的線上 IP 歸屬地查詢。(@Oliverwqcwrw[59] 投稿)
另有一個 Chrome 外掛 IP Location Finder,選中 IP 地址,顯示歸屬地。(@Yanel85[60] 投稿)

圖片
1、紅綠色盲[61]
紅綠色盲的患者,看不到紅色和綠色。在他們眼裡,這兩種顏色都會變成黃色。
下面是一半紅、一半綠的樹葉。

紅綠色盲患者看到的卻是一張黃色樹葉。

大概每20個人裡面,就有一個人有色盲或色弱問題。所以,設計介面的時候,使用紅色或綠色必須非常謹慎,因為紅綠色盲患者分不清。
下面的日曆使用綠色和粉紅色,表示特殊的日期。

但是,紅綠色盲患者看到的是下面這樣,根本分不清。

因此,使用者介面輕易不要使用紅色和綠色。
文摘
1、如果 AI 和機器人接管一切[62]
我最近常常想一個問題:如果 AI 強大到所有方面都超過人類,它和機器人接管一切,人類要幹什麼呢?
凱文·凱利認為,隨著工作都交給機器人,人類可以從事越來越多有趣的工作,就像工業革命後一樣。
這種說法在短期內有一定道理,但是有一個前提,就是人類能做計算機做不到的事情。
我認為,沒有理由認為這個前提會永遠成立。
除非政府強制規定,計算機不得從事某些工作,只有人類可以做。但是那樣的話,那些工作很可能就會停滯發展了。停滯發展的行業沒有前景,收入也不會增長,從業者難以感到滿意。
讓我們假設一種極端的情況,如果機器完全超越人類,每件事都比人類做得好,大部分人無法為社會做出貢獻時,一切會怎樣?
如果一個人無法為社會做出貢獻,也就失去了他的經濟價值,就算他能靠政府的補助繼續活著,那麼對於他來說,個人價值是什麼呢,就是活一天算一天?
目前來看,這個問題還比較遙遠,就算那一天到來,也是很久以後的事情了。眼下比較現實的問題是,AI 正在大量減少高薪工作。隨著機器的能力越來越強,很多白領工作的價值迅速變小,大多數人越來越難找到報酬豐厚、令人滿意的工作。
這就是現在發生的問題,高薪的工作崗位不斷減少,難以獲得。
言論
1、
以前的球票、音樂會票、景點票、電影票都是紙質的,現在全改成數字的。
我們的過去都儲存在手機裡,再也沒有紀念物了。
— 彭博社[63]
2、
越來越多的應用程式轉移到網際網路上,作業系統的軟體差異變得越來越不重要。這就是為什麼 M1 晶片對 Mac 的未來如此重要。
蘋果應當利用這一波 AI,發揮其硬體優勢,鼓勵開發者在本地執行 AI 模型。
— 《蘋果 AI 的潛力》[64],本文指出蘋果晶片可以本地執行 AI 模型,不需要 Nvidia 顯示卡,蘋果應該利用這一點,擴大銷售
3、
自從有了 AI,我發現自己不再擔心專案對我來說太大、太複雜,或者專案使用了我不瞭解的技術或程式語言,一切都變得容易得多。
我正在重新審視一些我曾認為太複雜或超出我能力範圍的業餘專案,只要有時間,我就會去嘗試。這是一個令人興奮的時代。
— 《有了 AI,你需要想得更大》[65]
4、
我認為,數學本質上已經沒有什麼好問題了。讓大量數學家感興趣的問題數量每年都在減少,而且幾乎所剩無幾。
現代數學研究越來越侷限於少數人對某個特定主題的研究,即使是研究生也常常被現代數學問題的極端專業性和深奧性所困擾。
未來的研究生不應再需要證明一些全新的東西,相反地,他們的主要目標可能是簡化過去的研究結果。
— 《數學已經沒有問題了》[66]
往年回顧
崖門海戰的感想[67](#294)
大資料已死[68](#244)
悲觀者正確,樂觀者成功[69](#194)
提高收入的根本途徑[70](#144)
(完)
References
[1]
開源:https://github.com/ruanyf/weekly[2]
投稿:https://github.com/ruanyf/weekly/issues[3]
《誰在招人》:https://github.com/ruanyf/weekly/issues/6189[4]
郵件聯絡:mailto:[email protected][5]
[email protected]:mailto:[email protected][6]
via:https://www.163.com/dy/article/JPP0TJOJ0552XKPD.html[7]
《低程式碼程式設計受困於形式》:https://interjectedfuture.com/visual-programming-is-stuck-on-the-form/[8]
FinClip:https://www.finclip.com/landpage-product/?from=ruan[9]
Finclip 官網:https://www.finclip.com/landpage-product/?from=ruan[10]
點選這裡:https://sourl.co/5thdnz[11]
人工心臟:https://www.theguardian.com/australia-news/2025/mar/12/australian-man-survives-100-days-with-artificial-heart-in-world-first-success[12]
手機改路由器:https://www.cnx-software.com/2025/03/02/citronics-built-a-router-based-on-the-fairphone-2-mainboard/[13]
靜音圖示:https://www.macrumors.com/2025/03/07/new-macbook-air-corrects-design-mistake/[14]
汽車的物理按鈕:https://www.autocar.co.uk/car-news/new-cars/volkswagen-reintroducing-physical-controls-vital-functions[15]
轉基因香蕉:https://www.theguardian.com/science/2025/mar/07/gene-edited-non-browning-banana-cut-food-waste-tropic-norwich[16]
原生的終端程式:https://www.androidauthority.com/android-linux-terminal-app-available-3532999/[17]
AI 大模型2024年的進展:https://simonwillison.net/2025/Mar/8/nicar-llms/[18]
如何用 Claude Code 反編譯程式碼:https://ghuntley.com/tradecraft/[19]
CSS 跨文件檢視轉換:https://simonwillison.net/2025/Mar/10/building-websites-with-llms/[20]
Cursor 上傳 .env 檔案:https://forum.cursor.com/t/env-file-question/60165[21]
JSON 與 JavaScript 的物件成員順序:https://blog.gslin.org/archives/2025/03/07/12299/json-%E8%88%87-javascript-%E5%86%8D-object-%E8%A3%A1%E9%9D%A2%E5%85%83%E7%B4%A0%E9%A0%86%E5%BA%8F%E7%9A%84%E5%B7%AE%E7%95%B0/[22]
Go 語言錯誤處理機制的優點:https://rauljordan.com/why-go-error-handling-is-awesome/[23]
TypeScript 7:https://github.com/microsoft/typescript-go[24]
介紹文章:https://devblogs.microsoft.com/typescript/typescript-native-port/[25]
QR Code Generator:https://fietkau.software/qr[26]
WatchYourLAN:https://github.com/aceberg/WatchYourLAN[27]
XPipe:https://github.com/xpipe-io/xpipe[28]
TransBridge:https://github.com/fruitbars/transbridge[29]
Demo:https://transbridge.fanyimao.cn/[30]
@fruitbars:https://github.com/ruanyf/weekly/issues/6238[31]
DouYin Downloader:https://github.com/jiji262/douyin-downloader[32]
@jiji262:https://github.com/ruanyf/weekly/issues/6240[33]
Java Thread Dump:https://www.threadanalyzer.online/[34]
@HbOrea:https://github.com/ruanyf/weekly/issues/6259[35]
Mono:https://mono.cards/zh[36]
@RiverTwilight:https://github.com/ruanyf/weekly/issues/6264[37]
Telegram Files:https://github.com/jarvis2f/telegram-files[38]
@jarvis2f:https://github.com/ruanyf/weekly/issues/6268[39]
Obsidian 雲盤同步外掛:https://github.com/ai-bytedance/obsidian-cloud-sync[40]
@ai-bytedance:https://github.com/ruanyf/weekly/issues/6275[41]
Mistral OCR:https://mistral.ai/news/mistral-ocr[42]
介紹文章:https://finance.sina.com.cn/tech/roll/2025-03-07/doc-inenuzhm5927298.shtml[43]
monsoonw:https://github.com/ruanyf/weekly/issues/6248[44]
試用網站:https://mistralocr.net/[45]
一個 Python 指令碼:https://github.com/simonw/tools/blob/main/python/mistral_ocr.py[46]
他的文章:https://simonwillison.net/2025/Mar/7/mistral-ocr/[47]
Free QWQ:https://qwq.aigpu.cn/[48]
@nexmoe:https://github.com/ruanyf/weekly/issues/6260[49]
Code-Review-LLM-Gitlab:https://github.com/mimo-x/Code-Review-GPT-Gitlab[50]
@mimo-x:https://github.com/ruanyf/weekly/issues/6261[51]
人話翻譯器:https://github.com/DemoJ/HumanizeText[52]
@DemoJ:https://github.com/ruanyf/weekly/issues/6277[53]
辰宇落雁體:https://github.com/Chenyu-otf/chenyuluoyan_thin[54]
JetBrains Maple Mono:https://github.com/SpaceTimee/Fusion-JetBrainsMapleMono[55]
@SpaceTimee:https://github.com/ruanyf/weekly/issues/6244[56]
BeddyStories:https://beddystories.com/zh[57]
@yimiqidage:https://github.com/ruanyf/weekly/issues/6272[58]
IP 偵探:https://ip.aolifu.org/[59]
@Oliverwqcwrw:https://github.com/ruanyf/weekly/issues/6271[60]
@Yanel85:https://github.com/ruanyf/weekly/issues/6278[61]
紅綠色盲:https://www.theverge.com/23650428/colorblindness-design-ui-accessibility-wordle[62]
如果 AI 和機器人接管一切:https://hyponymo.us/2013/01/29/100-percent-unemployment/[63]
彭博社:https://www.bloomberg.com/news/articles/2025-03-07/the-case-for-ditching-digital-memories-for-physical-objects[64]
《蘋果 AI 的潛力》:https://stratechery.com/2025/apple-ais-platform-pivot-potential/[65]
《有了 AI,你需要想得更大》:https://rodyne.com/?p=1828[66]
《數學已經沒有問題了》:https://medium.com/@jpolak/math-is-running-out-of-problems-14f2911fa46b[67]
崖門海戰的感想:https://www.ruanyifeng.com/blog/2024/03/weekly-issue-294.html[68]
大資料已死:https://www.ruanyifeng.com/blog/2023/03/weekly-issue-244.html[69]
悲觀者正確,樂觀者成功:https://www.ruanyifeng.com/blog/2022/02/weekly-issue-194.html[70]
提高收入的根本途徑: https://www.ruanyifeng.com/blog/2021/01/weekly-issue-144.html