GitHub 要把全球開源代碼埋在北極,保存 1000 年

愛範兒此前一篇文章提到,全球的數據儲存很快就會亮出「儲存空間不足」的預警,人們開始追求超高的儲存密度和永恆的儲存時間,其中微軟 Project Silica 項目中的「玻璃光盤」以持續使用上千年。

這只是微軟數據儲存計劃的一部分,去年被微軟收購的軟件源代碼託管服務平臺 GitHub,最近也公佈了一項代碼存檔計劃 Arctic Code Vault,要把開源軟件代碼埋藏在北極的數百米地底下,至少保存 1000 年。

之前的文章裡介紹過,但現在可用的儲存介質最長的壽命最多才約 60 年,像「玻璃光盤」和 DNA 存儲這些新興儲存介質距離成熟商用還有很長的距離,那麼 GitHub 要用什麼儲存設備將代碼存檔上千年後還能被讀取呢?

▲ 圖片來自:Digi.no

答案是膠片,GitHub 採用的是挪威公司 Piql AS 製造的一種表面有氧化鐵粉塗層的膠片,據稱這這種叫膠片在正常條件下能保存 750 年,如果在寒冷、乾燥、低氧的洞穴能保存 2000 年。

從 2020 年 2 月 2 日,GitHub 為所有的公共儲存庫生成快照,經過處理後以 QR 碼(二維碼)的形式編碼儲存在一卷 3500 英尺(1066.8 米)長的膠捲上,然後存放在挪威斯瓦爾巴特群島(Svalbard)一座廢棄的礦井中。

斯瓦爾巴群島位於挪威大陸與北極點兩者之間,被稱為「世界最北的城市」,寒冷的環境有利於延長膠片的存儲壽命。而且根據《斯瓦爾巴條約》,這個地區為永久非軍事區域,這意味不會因為戰爭等原因導致數據損毀丟失。

GitHub 認為開源代碼現代文明的「隱藏基石」, 而 Arctic Code Vault 計劃就是為了將來即使人類文明因為自然災害或戰爭幾乎毀滅,子孫後代也可以通過這些開源代碼更快地重建文明。

其實在斯瓦爾巴特群島,還有一個被成為「全球農業諾亞方舟」的斯瓦爾巴全球種子庫,儲存了 4000 個人類賴以生存的農作物的 86 萬份種子備份,以防止人類在面臨大規模的災害時永遠喪失某些糧食的基因。

▲斯瓦爾巴全球種子庫. 圖片來自:The Verge

看起來,GitHub 希望通過 Arctic Code Vault 打造全球代碼的諾亞方舟。

在幾周之前,GitHub 的首席執行官 Nat Friedman 已經來到了儲存代碼的檔案館,據 Nat Friedman 介紹,GitHub 將在在這裡存放 200 個膠片盤片,每個盤片上儲存 120 GB 的開源軟件代碼,首個盤片儲存 Linux、Android 操作系統並記錄超過 6000 個重要的開源應用程序。

可是即便這些膠片可以儲存上千年,如果 1000 年後的人無法理解這些代碼,那也沒有意義,就像我們今天依然沒有完全解讀出古埃及象形文字的含義。

為了確保後人順利解碼這些代碼,GitHub 成立了一個諮詢小組,成員包括人類學家、考古學家、歷史學家、語言學家以及檔案科學、未來主義等方面的專家,力求把存檔指南寫得通俗易懂。

整套存檔指南 QR 解碼,文件格式、字符編碼和其他重要元數據的技術指南,可以幫助多年之後的人類快速將原始數據轉換為源代碼。

正如 GitHub 所說的,開源代碼是全世界人類的共同財產,這個代碼存檔計劃對於人類文明的延續具有重大價值。

古羅馬人 2000 多年前建造的混凝土海牆保存至今,而現代的鋼筋混凝土海堤只能用幾十年,很長時間以來都是建築界的一個謎,直到 2017 年科學家才利用先進的技術將這種混凝土的配方破解。

▲圖片來自:BBC

其實不用上千年,源代碼的存檔對現在的開發者來說也很重要。前段時間暴雪旗下的遊戲《暗黑破壞神 2》原創團隊成員 Max Schaefer 透露,由於這款遊戲的源代碼和全部的備份都丟失,幾乎無法重製一個《暗黑破壞神 2》,他們只能從頭開始製作。

互聯網誕生不過 50 年,但各種軟件已經和我們的生活工作密不可分,隨著人工智能的興起,人類社會的經濟、工業、醫療、軍事等體系都離不開算法中的源代碼。

在數百年後,今天的開源代碼或許也會成為和巴黎聖母院、蒙娜麗莎名畫一樣重要的世界文化遺產。

題圖及部分配圖來自:bloomberg