北極凍土裡的代碼是GitHub的終極浪漫
這是身處2020年的人類,留給未來歷史學家們的禮物。在常年冰封的Svalbard——斯瓦爾巴群島,坐落著世界上最北端的小鎮。這裡氣候極寒,數千隻北極熊與三千人類居民共生。受國際斯瓦爾巴條約的監管,它是地球上最偏遠,也是地緣政治最穩定的人類居住地之一。
在GitHub的一項異常浪漫的人類計劃裡,Svalbard被選作存放現代人類文明火種的最佳位置。7月8日,GitHub將支撐當今社會運轉的幾乎所有開源代碼,以膠片的形式儲存,打包運往Svalbard。目前,這些膠片已經被放置在鋼製容器內,密封在一個廢棄煤礦中。在這個極其乾燥的、-5°C恆溫的礦井中,這些代碼至多可以保存一千年。
GitHub代碼存儲地,一個位於Svalbard群島上的廢棄礦井|GitHub
這是身處2020年的人類,留給未來歷史學家們的禮物。在官方聲明中,GitHub寫到,’未來的歷史學家將能夠從開源項目和元數據中了解我們,他們可能會認為我們這個開源的、志願的、遵循摩爾定律的時代具有歷史意義。’
末日重啟基地
雖然Svalbard會受到氣候變化的影響,但在可預見的未來,受到影響的大概率只是最外層幾米的永久凍土,氣候變暖不會威脅礦井的穩定。因此,這個礦井也成為保存人類文明的重要基地。
AWA(ArcticWorldArchive,世界數據檔案館)就在這裡,除GitHub的代碼外,AWA已經保存了來自意大利、巴西、挪威、梵蒂岡和許多其他國家的歷史和文化數據。著名的’全球種子庫’也位於此,距離GitHub選擇的礦井僅一英里遠,那裡保存了世界上幾乎所有農作物的種子。
儲存開源代碼所用的膠片|GitHub
或許是靜待末日重啟,又或者是在平安順遂的數百年後等待歷史學家考古。被冰封在Svalbard的人類文明,無論是種子還是代碼,對於未來的人類來說,都承載著像如今馬丘比丘和吳哥窟一樣的歷史意義。
計算機世界瘋狂迭代,被迭代掉的代碼往往慘遭丟棄,或者被放進不足夠穩定的存儲介質中。毫不危言聳聽,若不採取行動,當下社會中的數字資料,在未來幾代人的時間週期內,將會消失殆盡。
GitHub的初心來源於此。硬盤、磁帶、CD、SSD,這些介質在’保存人類文明’這件事面前,都顯得不足夠穩定。地理位置也是考慮因素之一,戰爭也好,自然災害也罷,天災人禍時有發生。作為當下數字社會運轉的基石,如何讓開源代碼長期、安全地被保存下來,是GitHub想要成就的事。
存儲開源代碼的膠片被打包運往Svalbard|GitHub
膠片上的代碼
由於硬件比大多數存儲介質的壽命長很多,因此可能在未來某些情況下,能夠正常運轉的計算機硬件被保留下來,而運行在其上的軟件代碼無跡可尋。又或者由於網絡原因,人類無法從遠端服務器獲取代碼,此時這些被印在膠片上的代碼便成為人類最後的指望。
在GitHub列出的被封存開源代碼清單中,你會發現大量當今計算世界及網絡世界的基石。Net、ruby、apache、docker、php…。。。涵蓋了操作系統、數據庫、金融區塊鏈、音視頻、前後端等等幾乎所有的程序智慧。
據官方文檔,本次存檔的檔案庫共含有201個膠卷,共計21TB。其中包括一個含有人類可讀信息和指引的’指南膠卷’和200個軟件存檔膠卷。每個膠卷包含65,000個單獨的幀。每個膠卷開頭的幀及’指南膠卷’內的幀均包含人類可讀文本和圖像,膠卷的所有其它幀則由以二維碼可視形式存儲的0和1組成。
在未來,當人類需要讀取膠卷上的代碼時,只需閱讀’指南膠卷’上的內容,並按指引將二維碼解壓為0和1構成的二進製文件,再將二進製文件解壓為一個更長但已解壓的存檔文件,最後將存檔文件解包為其所包含的不同子文件,即可獲得被保存的代碼。
GitHub透露,膠片並非該項目的最終存儲介質,一種採用二氧化矽(也即石英玻璃)的存儲技術正在開發過程中。石英玻璃能夠提供上萬年的存儲壽命,並且其對電磁干擾、水和熱都有很好的適應性,比膠片更為理想。目前GitHub已經將6000個世界範圍內最受歡迎的項目代碼以石英玻璃的形式存儲,以驗證新技術的可行性。
膠片被存放在礦井中|GitHub
遺失的技術有的時候能夠在未來幫助人類。
比如古羅馬混凝土配方堪稱完美,經久耐用屹立不倒,是人類歷史上最耐用的建築材料,卻曾因戰亂一度險些失傳。又比如20世紀上半葉被廣泛使用的抗病蟲害及瘧疾手法DDT,如今又被聯合國呼籲重拾。在復盤挑戰者號失事的過程中,美國航天界人士認為其根源在於土星5號火箭第二次生產計劃的取消,若用火星5號運載,可避免事故的發生。
與人們的普遍判斷不同的是,科技與文明並非一直滾滾向前。我們很容易想像,在未來,現在的軟件代碼應該會被人們看作是某種古怪的、接近遺失的文明,直到某個意想不到的需求出現。將如今的技術快照存檔,或許將在未來某個隨機時刻幫助人類度過難關。