互聯(lián)網(wǎng)誕生不過 50 年,但各種軟件已經(jīng)和我們的生活工作密不可分,隨著人工智能的興起,人類社會的經(jīng)濟、工業(yè)、醫(yī)療、軍事等體系都離不開算法中的源代碼。
愛范兒此前一篇文章提到,全球的數(shù)據(jù)儲存很快就會亮出‘儲存空間不足’的預(yù)警,人們開始追求超高的儲存密度和永恒的儲存時間,其中微軟Project Silica項目中的‘玻璃光盤’以持續(xù)使用上千年。
之前的文章里介紹過,但現(xiàn)在可用的儲存介質(zhì)最長的壽命最多才約60年,像‘玻璃光盤’和 DNA 存儲這些新興儲存介質(zhì)距離成熟商用還有很長的距離,那么GitHub要用什么儲存設(shè)備將代碼存檔上千年后還能被讀取呢?
圖片來自:Digi.no 答案是膠片,GitHub采用的是挪威公司Piql AS制造的一種表面有氧化鐵粉涂層的膠片,據(jù)稱這這種叫膠片在正常條件下能保存 750 年,如果在寒冷、干燥、低氧的洞穴能保存 2000 年。
從 2020 年 2 月 2 日,GitHub 為所有的公共儲存庫生成快照,經(jīng)過處理后以 QR 碼(二維碼)的形式編碼儲存在一卷 3500 英尺(1066.8 米)長的膠卷上,然后存放在挪威斯瓦爾巴特群島(Svalbard)一座廢棄的礦井中。
斯瓦爾巴群島位于挪威大陸與北極點兩者之間,被稱為‘世界最北的城市’,寒冷的環(huán)境有利于延長膠片的存儲壽命。而且根據(jù)《斯瓦爾巴條約》,這個地區(qū)為永久非軍事區(qū)域,這意味不會因為戰(zhàn)爭等原因?qū)е聰?shù)據(jù)損毀丟失。
GitHub 認為開源代碼現(xiàn)代文明的‘隱藏基石’, 而 Arctic Code Vault 計劃就是為了將來即使人類文明因為自然災(zāi)害或戰(zhàn)爭幾乎毀滅,子孫后代也可以通過這些開源代碼更快地重建文明。
其實在斯瓦爾巴特群島,還有一個被成為‘全球農(nóng)業(yè)諾亞方舟’的斯瓦爾巴全球種子庫,儲存了 4000 個人類賴以生存的農(nóng)作物的 86 萬份種子備份,以防止人類在面臨大規(guī)模的災(zāi)害時永遠喪失某些糧食的基因。
斯瓦爾巴全球種子庫。 圖片來自:The Verge 看起來,GitHub 希望通過 Arctic Code Vault 打造全球代碼的諾亞方舟。
在幾周之前,GitHub 的首席執(zhí)行官 Nat Friedman 已經(jīng)來到了儲存代碼的檔案館,據(jù) Nat Friedman 介紹,GitHub 將在在這里存放 200 個膠片盤片,每個盤片上儲存 120 GB 的開源軟件代碼,首個盤片儲存 Linux、Android 操作系統(tǒng)并記錄超過 6000 個重要的開源應(yīng)用程序。
可是即便這些膠片可以儲存上千年,如果 1000 年后的人無法理解這些代碼,那也沒有意義,就像我們今天依然沒有完全解讀出古埃及象形文字的含義。
為了確保后人順利解碼這些代碼,GitHub 成立了一個咨詢小組,成員包括人類學(xué)家、考古學(xué)家、歷史學(xué)家、語言學(xué)家以及檔案科學(xué)、未來主義等方面的專家,力求把存檔指南寫得通俗易懂。
整套存檔指南 QR 解碼,文件格式、字符編碼和其他重要元數(shù)據(jù)的技術(shù)指南,可以幫助多年之后的人類快速將原始數(shù)據(jù)轉(zhuǎn)換為源代碼。
正如 GitHub 所說的,開源代碼是全世界人類的共同財產(chǎn),這個代碼存檔計劃對于人類文明的延續(xù)具有重大價值。
古羅馬人 2000 多年前建造的混凝土海墻保存至今,而現(xiàn)代的鋼筋混凝土海堤只能用幾十年,很長時間以來都是建筑界的一個謎,直到 2017 年科學(xué)家才利用先進的技術(shù)將這種混凝土的配方破解。
圖片來自:BBC 其實不用上千年,源代碼的存檔對現(xiàn)在的開發(fā)者來說也很重要。前段時間暴雪旗下的游戲《暗黑破壞神 2》原創(chuàng)團隊成員 Max Schaefer 透露,由于這款游戲的源代碼和全部的備份都丟失,幾乎無法重制一個《暗黑破壞神 2》,他們只能從頭開始制作。
在數(shù)百年后,今天的開源代碼或許也會成為和巴黎圣母院、蒙娜麗莎名畫一樣重要的世界文化遺產(chǎn)。這只是微軟數(shù)據(jù)儲存計劃的一部分,去年被微軟收購的軟件源代碼托管服務(wù)平臺 GitHub,最近也公布了一項代碼存檔計劃Arctic Code Vault,要把開源軟件代碼埋藏在北極的數(shù)百米地底下,至少保存1000年。