GitHub Universeで発表された永久凍土の地下にソースコードを保存する新プロジェクトとは?
GitHub Universe 2019ではActionsやPackagesといった大きめのアナウンスからGitHub Desktop、GitHub for Mobileなどの新製品まで幅広い新情報が目白押しだった。その中で、何よりもユニークだったのが「Arctic Code Vault」と呼ばれる新プロジェクトだ。
これはプレス向けには事前に「Special Project」とだけ呼称されていたもので、GitHub Universe 2019の初日のキーノートでCEOのNat Friedman氏によって披露された瞬間、筆者は「これは何か悪い冗談なのでは?」と思ってしまったぐらいにユニークなプロジェクトである。
そこでArctic Code Vaultの背景や狙いなどをKyle Daigle氏(Director of Product Management, Ecosystem)そしてThomas Dohmke氏(VP of Special Project)にインタビューを行った。Dohmke氏はHockeyAppという会社をMicrosoftが買収した時にMicrosoftに移った生粋のデベロッパーだ。MicrosoftがGitHubを買収した後には、このスペシャルプロジェクトとMicrosoftとGitHubのパートナーシップを統括する立場に就いたエグゼクティブだ。肩書はVP of Special Projectだが、Arctic Code Vaultの責任者と言っていいだろう。
最初にこのプロジェクトのことをキーノートで聞いた時は何か質の悪い冗談かと思いました。でもGitHubは真剣にやっているんですよね?
Daigle:そうですよ! 全然冗談なんかじゃありません。我々は真剣にこのプロジェクトに取り組んでいます。
Dohmke:100%シリアスにやってます。
そもそもこのアイデアはどこから出てきたものなのですか?
Daigle:これはノルウェーのスヴァールバル島に設置された種子を保存するプロジェクト「Global Seed Vault」にヒントを得たもので、人類の文明を保存するという意味ではソフトウェアについても同じことが必要なのではないか? という議論が社内で行われたことがきっかけです。そこからすべてが始まったのです。
Dohmke:私は「人類の文明(Civilization)を保存する」という発想を素晴らしいと感じて、それをオープンソースソフトウェアにあてはめてみたいと思ったのです。じゃぁ、どうやったらそれが実現できるのか? これについてInternet ArchiveやSoftware Heritage、Stanford Libraryなどと言った組織と話し合いをしたところから始まったと言えます。
Daigle:今Thomasが言ったように、そもそもソフトウェアは人類の文明の一つであるべきだと私は思っています。その文明の遺産を長期に渡って保存することで、今後人類に何かがあったとしてもその文明を後世に遺すということが必要なのだと思います。ソフトウェやデータを保存するというと、普通に考えればハードドライブに保存してそれを複数の場所に分散するという方法があります。ですが、その方法ではそれを読み出すためのシステムが必要になります。つまりそれを未来に利用しようとすれば、何かに依存してしまうわけです。そういう依存関係をなくして、どんな状況でも人間がそれを読めば理解できるという仕組みが必要だと思ったのです。
具体的にはソースコードはどうやって保存されるのですか?
Daigle:これは他の機材などの依存性をなくすという意味で、QRコードでエンコードされたものをフィルムに格納して保管する形になります。具体的には2020年の2月2日のGitHub上のアクティブなリポジトリーのスナップショットを取って、それをエンコードする形です。どのリポジトリーが対象になるのか? これについては今募集を始めています。
Dohmke:これはGitHub上のすべてのパブリックなリポジトリーが選択の対象になります。そのため、英語だけではなく、どんな言語でもアーカイブ可能であり、エンコード可能です。数千年後にこれを開けた人が、どんな言語でも翻訳できる万能な翻訳機を持っていることを期待したいですね(笑)。
去年のGitHub Universeで発表されたGitHub Octoverseによれば、Rubyのコミュニティではコメントに絵文字がよく使われるという傾向にあるようですが、そのような文字であってもエンコードが可能ですか?
Daigle:大丈夫です。Rubyのコミュニティの絵文字によるコミュニケーションが、数千年後の人類によって解読されると考えたら楽しくないですか? ソースコードだけではなく、そこで行われたやり取りもすべて対象になりますから。
MicrosoftのProject Silicaの名前も出ていますが、これは?
Dohmke:Microsoftとも一緒に話をしています。MicrosoftのProject Silicaはまったく別のプロジェクトで、石英ガラスにレーザー光線でデータを記録することにより、大量のデータを長期保存することを目指して研究が進んでいます。
今回のプロジェクトとしては2020年の2月2日に最初のアーカイブが行われるということですので、来年のGitHub Universeではその経過報告が行われると思って良いですか?
Daigle:そうですね。期待していてください。最初にも言ったように、これはGitHubとしては真剣に取り組んでいるプロジェクトですが、多くのデベロッパーは最初は懐疑的な反応をするんですよ。「本当にそんなことをやるのか?」「何の意味があるのか?」といったように。しかし我々が説明を行って真剣なんだと分かると、「自分が関わっているリポジトリーをそこに入れるためにはどうしたら良いのか?」と聞いてくるようになります(笑)。人類が後世に遺すべき資産としてソフトウェアやソースコードを含めるというのは大きな意味がありますし、これはGitHubが取り組むべきプロジェクトだと確信しています。
このインタビューを通じて、GitHubが真剣にこのソースコードを長期保存するプロジェクトに取り組んでいることをわかっていただけただろうか。オープンソースソフトウェアがすでに社会のインフラストラクチャーを担う重要な構成部品であり、文学や種子と同様に自然災害や予測できない変化にも耐えうるアーカイブとして残そうという想いが、十分に伝わってきたインタビューとなった。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- 米GitHub Kyle Daigle氏インタビュー:セキュリティからSBOM、コーディング支援まで、開発者に恩恵をもたらすGitHubの最新アップデートとは
- GitHub Universe 2022、キーノートで見せた多角的にデベロッパーを支援する機能とは?
- GitHub Universe開催、CI/CDのActions、ArtifactリポジトリのPackagesなど多数の発表が行われた
- GitHub Universe 2023、MSのCEOもサプライズで登壇した初日のキーノートを紹介
- GitHub Universe 2023、GitHubのCOO、Kyle Daigle氏にインタビュー
- GitHubにとってAPIとは? GraphQLが提供する価値とは?
- GitHub Universe開催。βユーザーたちが語るActions導入の容易さ
- GitHubが年次カンファレンスで新サービスやAIの応用などを発表
- GitHub Universe開催。ワークフローを実現するActionsなど多くの新機能を発表
- AI駆動型開発ツールに関する勉強会を取材。「まず使ってみることが大事」