GitHub存档计划:北极代码保险库

在2019 GitHub 宇宙大会(GitHub Universe 2019)上,他们提到了一个问题,1000年后的软件会是什么样?人类会是什么样子?对此我们只能猜测,但我们可以采取行动以确保当下最重要的组成部分能够延续到未来。GitHub方面认为,我们的世界是由开源软件提供支持的,这是我们文明的隐藏基石,也是全人类的共同遗产。所以“GitHub存档计划”的任务就是将其保存下来以供后代使用,他们跟斯坦福图书馆、Long Now基金会、互联网档案馆、软件遗产基金会、Piql、微软研究院和博德莱恩图书馆合作,以保护全球的开源代码。主要是通过在不同的数据格式和位置存储多个副本来保护这些知识,其中包括一个专门设计来保存至少1000年的超长存档,被称为GitHub北极代码保险库(GitHub Arctic Code Vault)。

在2020年2月2日,相关人员对GitHub上所有活动的公共存储库进行了快照,以将其存档在保险库里。过去几个月,他们的档案合作伙伴Piql将186卷 piqlFilm(数字光敏档案胶片)卷写入了21TB的存储库数据。所以如果你在2020年2月2日前贡献过开源代码,都进行了快照存档,被专业人员埋到北极圈了!GitHub设计了北极代码保险库徽章Highlight,该徽章显示在GitHub上开发人员个人资料的亮点部分。鼠标悬停,就可以看到个人贡献的存储库。

GitHub最初是计划让他们自己的团队团队飞去挪威,亲自护送世界开源代码到北极,但随着世界范围继续遭受疫情的影响,他们调整了计划,只能跟合作伙伴保持密切联系,等待安全前往斯瓦尔巴群岛的时间。

体验开源代码的北极之旅

值得一提的是,斯瓦尔巴群岛是世界上最北端的城镇所在地,那里气候极寒,只有几千只北极熊和几千人类一起居住。而且这里受国际《斯瓦尔巴群岛条约》管制,属于非军事区。据GitHub官方最新消息,这些代码已于2020年7月8日成功存放在斯瓦尔巴群岛的北极代码保险库(Arctic Code Vault)中。

您的代码之旅始于Piql在挪威德拉门的工厂,那里装有186个胶片卷轴的盒子被运到奥斯陆机场,然后装到飞机的腹部,为斯瓦尔巴群岛提供旅客服务。 斯瓦尔巴群岛位于欧洲大陆以北约600英里(1000公里),最近才开放给申根地区和欧洲经济区国家的游客。

运载代码的飞机降落在斯瓦尔巴特群岛(Svalbard)上一个只有几千人的小镇朗伊尔城(Longyearbyen),所有箱子被当地的一家物流公司运到了中间的安全仓库过夜。第二天早上,它门会来到位于山上的一座废弃的煤矿,然后到达深藏在数百米下的永久冻土层中的一个密室,我们的代码现在就驻留在那,以履行其将全球开放源代码保存1000多年的使命。

这些代码其实并不孤独,这个地方还有着世界数据档案馆(Arctic World Archive),里面保存了意大利、巴西、挪威、梵蒂冈还有很多其他国家的历史和文化数据。另外著名的全球种子库与这个矿井也就1.6公里的距离,那里也保存了几乎所有农作物的种子。虽然会受到气候变化的影响,但在可预见的未来,它只能影响到最外层几米的永久冻土,预计不会威胁矿井的稳定性。

确保将来的人能够正确使用

官方召集了一个GitHub存档计划(GitHub Archive Program)咨询小组,包括人类学、考古学、历史学、语言学、档案科学、未来主义等方面的专家,就档案中应包括哪些内容以及如何与继承者进行最佳沟通提出建议。

一千年是很长的时间,像吴哥窟、大津巴布韦和马丘比丘这样的古代遗迹在一千年前还没有建成。他们考虑并规划未来1000年的各种可能性,最后以我们今天拥有的最佳创意为基础。

关于对存档文件及其使用方式的概述,“技术树”将作为软件开发和计算的快速入门手册,并与该存档的用户指南捆绑在一起。它描述了如何从原始数据向后处理到源代码,以及如何提取项目,目录,文件和数据格式。

受《长期文明手册》启发,该档案还将包括应用开放源代码的信息和指南,以及我们今天如何使用开放源代码,以防将来读者需要从头开始重建技术。就像旅行者1号和旅行者2号这两艘宇宙飞船上携带的黄金唱片一样(承载着人类与宇宙星系沟通的使命),它将有助于我们将这个世界的故事传达给未来。

档案的介绍将包括QR解码、文件格式、字符编码和其他关键元数据的技术指南,以便原始数据可以转换回源代码供未来人类使用。该档案还将包括一个“技术树”,上面有路线图和罗塞塔石碑,以供将来好奇的人继承该归档文件的数据。

转载请标明本文来源:https://www.cnblogs.com/yswenli/
更多内容欢迎我的的github:https://github.com/yswenli/
如果发现本文有什么问题和任何建议,也随时欢迎交流~

你的代码已被埋在北极冰雪之下,保存千年——GitHub北极代码保险库的更多相关文章

  1. 使用命令创建github代码仓库,push本地仓库到github远程代码仓库

    1.利用命令创建github远程代码仓库 在将本地代码push到github远程代码仓库之前,总是需要新建github代码仓库,在将本地仓库关联到github远程仓库.其中最为繁琐的操作是建立gith ...

  2. Asp.Net异常:"由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值"的解决方法

    今天项目中碰到一个以前从没有见过的异常信息“由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值”,于是查了一下资料,原来此异常是由于我在代码中使用了"Response.End ...

  3. 异常:Data = 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。

    做项目的时候,将DataTable序列化成Json,通过ashx向前台返回数据的时候,前台总是获取不到数据,但是程序运行却没问题, 没抛出异常.一时找不到办法,减小输出的数据量,这时前台可以接收到页面 ...

  4. C# 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。这个错误是什么原因引起的?

    C# 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值.这个错误是什么原因引起的? 2011-12-17 22:45 提问者: 匿名|浏览次数:6056次 我来帮他解答 图片 符号 ...

  5. Page 由于代码已经过优化或者本机框架位于调用堆栈之上

    Page.Response.Clear();            Page.Response.Write("<script type=\"text/javascript\& ...

  6. 【.NET】由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。

    前言 上段时间做项目时,遇到如题之类问题,如今过去有一段时间了,具体出现的情形忘了,当时虽然找到了解决方法,但是依旧没有弄明白出现此种情况是何种原因,后来在微软的帮助支持中心找到了答案,特此记录,以防 ...

  7. asp.net 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值

    看MS给的解决方案:(http://support.microsoft.com/kb/312629/ ) 症状:如果使用 Response.End.Response.Redirect 或 Server ...

  8. 在Windows下github展示代码

    最近大爱Web编程,于是寻找各种代码中,然后就发现了GitHub这个网站,如果你知道Google Code,那么你就知道这个GitHub是做什么的了.不过GitHub主要是用作基于Git的分布式版本管 ...

  9. GitHub 系列之「向GitHub 提交代码」

    1.SSH 你拥有了一个 GitHub 账号之后,就可以自由的 clone 或者下载其他项目,也可以创建自己的项目,但是你没法提交代码.仔细想想也知道,肯定不可能随意就能提交代码的,如果随意可以提交代 ...

  10. 从0开始学习 GITHUB 系列之「向GITHUB 提交代码」【转】

    本文转载自:http://stormzhang.com/github/2016/06/04/learn-github-from-zero4/ 版权声明:本文为 stormzhang 原创文章,可以随意 ...

随机推荐

  1. 拒绝了对对象 ‘GetTips‘ (数据库 ‘vipsoft‘,架构 ‘dbo‘)的 EXECUTE 权限

    SQL Server 2016 安装 数据库-属性-权限-选择用户或角色-勾选执行权限即可.

  2. 将镜像上传到Docker Hub中央仓库中

    首先创建一个镜像,点击:创建一个简单的Docker镜像 1.先注册帐号 https://hub.docker.com/ 2.将镜象推上去 [root@localhost docker]# docker ...

  3. GitLab--安装部署

    配置信息 系统:centos7.8 gitlab版本:12.8.8 1 下载gitlab wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum ...

  4. 【每日一题】33. 简单瞎搞题 (滚动数组 + bitset 优化DP)

    补题链接:Here 这个问题的难点在于如何统计出所有和可能出现的情况,并且不能重复. 很容易想到用桶去存储每一个数,即某个和能够组合出来则为1,否则为0 不妨令 \(dp[i][j]\) 表示为第 \ ...

  5. Python | 解放双手,用Python实现自动发送邮件

    解放双手,用Python实现自动发送邮件 使用Python实现自动化邮件发送,可以让你摆脱繁琐的重复性业务,节省非常多的时间. Python有两个内置库:smtplib和email,能够实现邮件功能, ...

  6. Flink DataStream API 编程模型

    Flink系列文章 第01讲:Flink 的应用场景和架构模型 第02讲:Flink 入门程序 WordCount 和 SQL 实现 第03讲:Flink 的编程模型与其他框架比较 第04讲:Flin ...

  7. docker 镜像管理之 overlay2 最佳实践

    1. Docker 镜像 Docker 镜像是个只读的容器模板,它组成了 Docker 容器的静态文件系统运行环境 rootfs,是启动 Docker 容器的基础. Docker 镜像是容器的静态视角 ...

  8. spring cloud 通过feign请求设置请求头

    本文为博主原创,转载请注明出处: spring cloud 服务组件之间通过feign 的方式请求,会携带很少的基础类型的消息头参数,比如Content-Type等,但不会携带自定义或指定的请求头参数 ...

  9. 如何在Typora中跳转到文本内的指定位置?

    1.问题 网上写的使用HTML锚点,在typora并不适用 如 跳转 你好 2.解决 参考链接 https://segmentfault.com/q/1010000018057010 https:// ...

  10. JMS 服务器健康检查

    JMS所有服务器程序,包括Gateway.GatewayReferee.Proxy.TokenServer.以及编写的微服务器,都支持使用第三方工具进行健康检查. 使用telnet 进行健康检查 向任 ...