網易首頁 > 網易號 > 正文 申請入駐

失戀以后,他發明了一門超越C的編程語言!

0
分享至

2015年,程序員安德魯和女朋友分手,失戀了。

他心情沮喪,很長時間都走不出來,為了排解失戀的痛苦,他想起了一直被自己壓抑的一個想法:開發一門編程語言。

安德魯告訴自己說:放松一點吧,去做你喜歡干的事情吧,會對你很有好處的。

于是,一門叫做Zig的編程語言誕生了。

安德魯也許不會想到,10年以后,Zig成立了基金會,擁有了一個非常活躍的Discord社區和GitHub生態系統,更是被很多人認為是更現代、更安全、更高效的 C 語言替代品。

0 1

向C語言開刀

搞個什么編程語言不好,為什么要向C語言開刀呢?

要知道C可以系統編程的王者語言啊!

這是因為安德魯之前開發過一個數字音頻工作站的軟件,由于涉及到底層操作,他遇到了很多C語言的“陷阱”,例如整數類型轉換,內存分配,隱式類型轉換,沒有越界檢查,C預處理器只是文本展開等等,很容易讓程序員踩雷。

更煩人的是,安德魯覺得C語言社區帶著強烈的防御性和刻薄文化,比如在某C語言社區問一個非常簡單的問題:“我該如何對齊結構體中的字段?”

你可能會遇到一個人罵你,一個人直接說“不行”,完全不解釋。

“這真是世界上最糟糕的地方之一”,安德魯決心解決這些痛點問題,他希望:


  • Zig 默認有安全檢查(數組越界、空指針、整數溢出)

  • 內存分配透明且可控

  • 沒有隱藏控制流

  • 靜態鏈接,減少外部依賴,實現跨平臺的簡潔可靠發布。

  • Zig能在編譯期執行代碼


編譯期執行代碼這個很有意思,下面這段代碼是計算斐波那契數列的,C語言也能寫出類似的代碼:

fn fib(n: u32) u32 {
    return if (n < 2) n else fib(n - 1) + fib(n - 2);
}
var fib_10 = comptime  fib(10); 

但Zig的comptime關鍵字讓編譯器在“生成機器碼之前”就執行邏輯,也就是說編譯出來的可執行文件里不包含任何 fib 函數調用,fib_10 是一個常量值55;所有運算在編譯階段完成。

總之,安德魯的目標是:提供安全、現代、可移植的語言特性,建立一個友好、開放的社區。

0 2

被罵慘了

立Flag容易,實現起來就太難了,何況Zig的目標還這么宏偉。

安德魯也需要養家糊口,他不得不去找個工作賺錢,在業余時間折騰Zig。

他去Apple面試,被拒,因為“不能在業務時間做Zig”。

他又去OKCupid面試,HR給了當頭一棒:“你業余時間做的任何事情,知識產權都歸公司所有。”

安德魯怒了:“什么狗屁規定,必須得從合同中刪除這一條。我在業余時間、用我自己的設備做的所有東西,知識產權歸我自己。”

HR最后妥協,安德魯入職了。

OKCupid是個大型的遺留項目,技術棧很奇葩,雖然是個SaaS產品,但是卻沒有用Java、Python、Go等流行語言,而是用C++來實現Web服務。

不過,安德魯“因禍得福”,他有機會觀察 C++ 在現實項目中的優點和局限,為 Zig 的設計提供參考。

遇到代碼的一些Bug,安德魯會忍不住地說:在 Zig 里,如果你這樣寫,編譯器就會報錯,而不是出現這個 bug。

Zig很快推出了0.1.0版,安德魯還收到了女朋友給他買的杯子作為慶祝。

安德魯也把Zig發到著名的Hacker News上做宣傳,不出意料,評論區中罵聲一片:

我們不需要另一門編程語言 這家伙是個傻子 他根本沒寫過編程語言,這是他的第一個項目吧。 編程語言太多了,趕緊滾吧 ......

這也是開源作者必然要遇到的一個坎,尤其是對于編程語言這種“極端信仰型”產品。

人們對自己熟悉的語言有強烈的歸屬感,對新語言天然抗拒。

安德魯早就預料到這一點,所以他并不驚訝,反而冷靜應對:分清“噴子”與“建設性批評”,不因情緒化的攻擊而氣餒,也不忽略真正有價值的反饋。

他認為:在開源世界中,你的發言并不是在和人交互,而是在舞臺上給“偷窺者”表演。

每一次發言,其實都是在塑造個人品牌。

Zig 最初在 Hacker News 上被“趕出去”,幾年后卻多次登上熱門榜單,吸引了越來越多認同其設計哲學的開發者。

這種“從被嘲笑到被追隨”的反轉,是每個偉大開源項目的共同命運:

  • Linux 被稱為“玩具系統”

  • Python 被嘲笑“太慢”

  • Rust 被質疑“復雜且沒必要”

而這些項目,最終都用時間證明了自己。

0 3

靠捐款生活

在OKCupid工作了一段時間后,安德魯發現了一個嚴重的問題:無法平衡養家糊口的工作和自己熱愛的開源項目。

全職工作占用了大量時間,隨著Zig社區的不斷擴大,他的業余時間都被用來合并pull request和響應問題,想做一些重大的規劃都沒有時間。

慢慢地,他覺得上班就是浪費生命,是別人賺錢棋局中的一個棋子。

怎么辦呢?

他先學朋友在在眾籌平臺Patreon開通了捐贈賬號,然后在文章中宣傳,雖然收入增長很緩慢,但是趨勢很穩定。

他算了一筆賬,如果辭掉工作,并且捐贈的增長速度繼續保持,那么存款會先下降一段時間,但在歸零之前會重新回升。

于是,他決定冒險一試,從公司辭職,嘗試靠捐款生活。

辭職以后,安德魯立刻發現自由給自己帶來了巨大的幸福感,再也不用每天困在公司,打卡勞動,每周工作40小時或者更多時間了。

當他把全部的精力都投入到Zig上以后,Zig的飛輪開始轉動:

(1)全職投入時,產出更快;

(2)當項目進展更快,社區信任度提升;

(3)當信任度提升,捐贈與關注也會增加;

(3)最終,你的經濟狀況又得到改善。

Zig用戶活躍度大幅度提升,越來越多的用戶群將Zig加入到他們的軟件棧當中,例如:

Bun: JavaScript / TypeScript 運行時 + 包管理器

TigerBeetle: 事務型數據庫 / 金融交易數據庫

Uber:基礎設施,工具鏈

雖然距離C語言的王者地位還差很遠,但是Zig已經成為一個非常活躍的編程語言了。

安德魯不想追求更多的利潤和增長,他成立了非盈利的Zig基金會,收入依然來自于用戶和支持者的捐款,每年大概有40多萬美元。

Zig董事會每年給安德魯開的工資是15.9萬美元,相當于紐約市高級程序員的平均工資。

但安德魯每年只拿10.8萬,足夠自己生活了,其他的又捐給了基金會。

現在安德魯推出新功能,改進產品的動力,完全來自于熱愛,而不是金錢。

這真是一種幸福的狀態。

0 4

結語

10年過去了,安德魯不但早已從失戀的痛苦中走出,并且把Zig建設成了許多程序員心中的“安全島”和“利器”。

它用現代化的語言特性、透明的內存控制和編譯期執行能力,解決了C語言遺留的痛點,也讓開發者們在編程時少了踩雷、多了自由。

更重要的是,安德魯不僅在寫一門新語言,也在寫一種新的人生腳本:開源不僅是一種技術,更是一種生活方式和價值觀的實踐。

特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
王健林近照,又瘦了,臉都瘦脫相了,看著令人心疼!

王健林近照,又瘦了,臉都瘦脫相了,看著令人心疼!

老吳教育課堂
2026-04-23 21:57:29
中國造不出高端發動機?日企拆開紅旗車,發現中國已走在時代前面

中國造不出高端發動機?日企拆開紅旗車,發現中國已走在時代前面

軒逸阿II
2026-04-24 10:31:00
砍掉26號線:一鯨落萬物生?

砍掉26號線:一鯨落萬物生?

吃貨的分享
2026-04-24 06:36:51
貴州省監獄管理局原黨委委員、副局長,貴州黔新企業集團有限公司原總經理吳道明接受紀律審查和監察調查

貴州省監獄管理局原黨委委員、副局長,貴州黔新企業集團有限公司原總經理吳道明接受紀律審查和監察調查

知知貴陽
2026-04-24 10:10:44
最好的安排!同積分同凈勝球,第一聯賽排面拉滿,曼城槍手拼到底

最好的安排!同積分同凈勝球,第一聯賽排面拉滿,曼城槍手拼到底

濤哥侃球
2026-04-24 12:20:01
郭冬臨現狀:住北京老房子,身形消瘦、臉頰凹陷,59歲無兒無女

郭冬臨現狀:住北京老房子,身形消瘦、臉頰凹陷,59歲無兒無女

攬星河的筆記
2026-04-17 18:36:52
油價內幕大起底:私人站比中石化便宜近2元,真不是油質差!

油價內幕大起底:私人站比中石化便宜近2元,真不是油質差!

三農老歷
2026-04-23 00:46:36
翻倍漲價!《魔獸世界》6月22日起多國月卡上調

翻倍漲價!《魔獸世界》6月22日起多國月卡上調

3DM游戲
2026-04-24 10:11:04
33歲章澤天風格大變!穿艷俗紗裙、副乳突出,比實際年齡成熟10歲

33歲章澤天風格大變!穿艷俗紗裙、副乳突出,比實際年齡成熟10歲

阿訊說天下
2026-04-18 14:53:39
旅行后,你對哪個城市祛魅了?網友:異域風情哈爾濱

旅行后,你對哪個城市祛魅了?網友:異域風情哈爾濱

夜深愛雜談
2026-04-17 17:29:36
山東醫藥大學通報“展某某學位證無法認證”

山東醫藥大學通報“展某某學位證無法認證”

澎湃新聞
2026-04-24 09:03:16
爆大冷!西部豪強轟然倒下:全場狂歡慶祝,戈貝爾鎖死約基奇

爆大冷!西部豪強轟然倒下:全場狂歡慶祝,戈貝爾鎖死約基奇

體壇小李
2026-04-24 12:37:36
出乎意料!2032奧運主辦地確定了,不知名小城市以72:5碾壓當選

出乎意料!2032奧運主辦地確定了,不知名小城市以72:5碾壓當選

安珈使者啊
2026-04-24 11:44:45
以色列襲擊已致黎巴嫩2483人死亡

以色列襲擊已致黎巴嫩2483人死亡

每日經濟新聞
2026-04-24 08:37:07
汽車制造革命!余承東:一體壓鑄已死,電磁時代來臨

汽車制造革命!余承東:一體壓鑄已死,電磁時代來臨

生活魔術專家
2026-04-24 02:51:14
行程開始,中方專機抵美,G20峰會已出變故,80歲總統硬剛特朗普

行程開始,中方專機抵美,G20峰會已出變故,80歲總統硬剛特朗普

時尚的弄潮
2026-04-24 00:05:25
破例接機!中方強勢降臨中東,伊朗導彈下餃子,美霸權迎來終局?

破例接機!中方強勢降臨中東,伊朗導彈下餃子,美霸權迎來終局?

未來展望
2026-04-23 18:24:29
殲-35總師:中國兩款六代機或將再出意外

殲-35總師:中國兩款六代機或將再出意外

丁鋏驚悚影視解說
2026-04-21 17:47:14
路易王子年滿8歲,專家稱威廉夫婦將吸取經驗,杜絕孩子備胎感受

路易王子年滿8歲,專家稱威廉夫婦將吸取經驗,杜絕孩子備胎感受

談點世
2026-04-23 07:12:54
全球首家AI妓院,革了成人行業的命

全球首家AI妓院,革了成人行業的命

廣告案例精選
2026-04-02 14:49:22
2026-04-24 13:51:00
碼農翻身 incentive-icons
碼農翻身
有趣且硬核的技術文章
256文章數 648關注度
往期回顧 全部

科技要聞

剛剛,DeepSeek-V4 預覽版發布 百萬上下文

頭條要聞

華誼兄弟被申請破產:曾坐擁百位明星 如今還不起千萬

頭條要聞

華誼兄弟被申請破產:曾坐擁百位明星 如今還不起千萬

體育要聞

里程碑之戰拖后腿,哈登18分8失誤

娛樂要聞

王思聰被綠!戀愛期間女友被金主包養

財經要聞

19家企業要"鋁代銅",格力偏不

汽車要聞

全景iDrive 續航近800km 新款寶馬7系/i7亮相

態度原創

房產
游戲
健康
教育
手機

房產要聞

三亞安居房,突然官宣!

夢幻西游10開搬磚月入4189?這個游戲成就即將絕版

干細胞如何讓燒燙傷皮膚"再生"?

教育要聞

告訴孩子:千萬不要被4種朋友借運,后果比早戀可怕100倍

手機要聞

國產上一代Ultra銷量比比看,華為還是最強,小米第二

無障礙瀏覽 進入關懷版