糟糕,你写的 BUG 要被存1000年了!
摘要:代码冰封,祖传千年!
把大象放在冰箱需要几步?
三步!把代码放在北极需要几步?纳尼?
GitHub刚刚公布了一组照片,你写的代码(BUG)上周已经被打包运往北极保存。 只要你2月2日以前贡献过的开源代码,现在都已经被埋在北极的冰雪之下,保存一千年。

2019年GitHub公布了一项计划:Arctic Code Vault,项目的意思是要把你的/我的/他们的代码带入北极,然后埋入北极地下400米深的永久冻土层,据说,要保存1000年。 (这就是传说中的 祖传 代码 吗? )
据GitHub官方统计,已经有数百万的程序为这个北极代码仓库(Arctic Code Vault)计划做出了贡献。第一阶段的代码已经成功打包“快递”到北极,接下来GitHub还会继续开展这个项目。
这是怎么样个神操作?来,跟随着小熊派的脚步,来一场代码的北极之旅吧!
第一步:上传北极代码库
要想将让自己代码被带往北极,首先你得将代码上传至GitHub的北极代码库。
https://github.com/github/archive-program
GitHub官方为这些将自己代码上传至北极代码库 的开发者们还设计了 荣誉徽章 以示表彰,只要将鼠标悬停在开 发者主页 资料介绍中“ Highlight ”的下方,即可看到该开发者有哪些项目存在于北极代码库。

第二步:代码的保存
可能会有不少小伙伴非常疑惑,这些网站上的代码要怎么才能保存下来?
除了自行将代码上传北极代码库外,GitHub还会对每个活跃的公共存储库进行快照捕获,将其储存在北极代码库里,并将北极代码库中足足有21TB的代码数据交给挪威Piql公司。由该公司位于挪威德拉门的工厂进行编码并以QR码的形式保存在卤化银胶片上。这种胶片的使用寿命极长,可以最大限度地将代码完整地保存下来。

第三步:代码的运输以及存放
这些每帧都包含880万个像素点的胶片足足装了186箱,在运到挪威的首都奥斯陆后通过空运前往北极。

这些存放了代码的胶片最终落在了斯瓦尔巴群岛上一个只有几千人的小镇朗伊尔城,这里人迹罕至、气温寒冷,有几百米厚的冻土层,非常适宜存放胶片。

这些胶片卷轴将会被存储在小城附近的一座废弃煤矿密封室内的钢壁容器中。而在这废弃煤矿的不远处则是存储了全球数以百万计种子的全球种子库,现在来自世界各地的开源代码与全球种子库一起存储在这座小岛上,为人类的子孙后代留下一笔难以衡量的宝贵财富。

未来如何解析出代码?
那就有人担心了,千年后的人类与现在人类的认知水平必会出现偏差,那时的人类该怎么解析出这些代码呢?
据GitHub官方说明,在开展计划前就已经召集了人类学、考古学、历史学、语言学等各方面的专家组成GitHub Archive Program咨询小组,为解决如何与"继承者们"进行最佳的沟通已经提出诸多方案了。在这些胶片卷轴中除了开源代码以外还会有存档的简介、其使用方式、开源应用的信息和指南以及当下这些开源项目的使用情况等,以防将来的读者无法解读该文档或解读后需要从头开始重建技术。
千年太久,只争朝夕!
幸运的是,你不用等一千年才能看小熊派的代码!
话说,1000年以后你的后代看到你的代码以后是什么样的反应?
糟糕,你写的 BUG 要被存1000年了!的更多相关文章
- 没错,老板让我写个 BUG!
前言 标题没有看错,真的是让我写个 bug! 刚接到这个需求时我内心没有丝毫波澜,甚至还有点激动.这可是我特长啊:终于可以光明正大的写 bug 了
- 架构师写的BUG,非比寻常
部门新来了个架构师,BAT背景,住在三环,开宝马上班,有车位. 小伙话不多,但一旦说话斩钉截铁,带着无法撼动的自信.原因就是,有他着数亿高并发经验,每一秒钟的请求,都是其他企业运行一年也无法企及的.这 ...
- 写英文bug的经验总结
本文链接: https://www.cnblogs.com/hchengmx/p/10800855.html 由于工作原因,开bug的时候需要由英文开,刚开的时候比较痛苦,因为有些词汇老师用的不太准确 ...
- 捅娄子了,写个bug被国家信息安全漏洞共享平台抓到了?
摸不了鱼了 2019 年 11 月 26 日,本来应该是无比平静的一天,开开会,改改bug,摸摸鱼之后等着下班.刷着新闻的间隙,手机的消息提示音响了起来,收到了一条邮件,平时收到邮件我都会选择稍后处理 ...
- 脚本写一行echo也能写出bug ? glob了解一下
背景 最近处理一个 bug 很有意思,有客户反馈某个配置文件解析失败了,出错的那行的内容就只有一个字母 a. 最开始以为是谁改动了处理的脚本,但要到了问题代码中的脚本,比较发现跟库上是一样的. 又经过 ...
- 写了Bug,误执行 rm -fr /*,我删删删删库了,要跑路吗?
每日英语,每天进步一点点(偷笑): 前言 临近五一节,想到有 5 天假期,小林开始飘了. 写个简单的 Bash 脚本都不上心了,写完连检查都不检查,直接拖到到实体服务器跑. 结果一跑起来,发生不对劲, ...
- Doug Lea在J.U.C包里面写的BUG又被网友发现了
这是why的第 69 篇原创文章 BUG描述 一个编号为 8073704 的 JDK BUG,将串联起我的这篇文章. 也就是下面的这个链接. https://bugs.openjdk.java.net ...
- 犹记当年写出bug睡不着,回想今天只求睡好渡余生……
不想面对已经在博客园注册了3年多的时间 了,就是这么快的就已经过去了近3年的工作时间,从最开始的对编程的困惑到慢慢有一点的认识,好像哦就这样没有什么啊,也没有涉及到一些比较难的东西. 但是当初第一份工 ...
- 10种常见OOM分析——手把手教你写bug
点赞+收藏 就学会系列,文章收录在 GitHub JavaKeeper ,N线互联网开发必备技能兵器谱,笔记自取 在<Java虚拟机规范>的规定里,除了程序计数器外,虚拟机内存的其他几个运 ...
随机推荐
- Android/iOS内嵌Unity开发示例
Unity 与 Android/iOS 交叉开发主要有两种方式,以 Android 为例,一是 Android 生成 jar 或者 aar 包,导入到 unity3d plugin/bin/ 目录下: ...
- 简单shellcode学习
本文由“合天智汇”公众号首发 作者:hope 引言 之前遇到没开启NX保护的时候,都是直接用pwtools库里的shellcode一把梭,也不太懂shellcode代码具体做了些什么,遇到了几道不能一 ...
- Django的Cookie Session和自定义分页
cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...
- Scala 基础(七):Scala 运算符
1 算术运算符 算术运算符(arithmetic)是对数值类型的变量进行运算的,在Scala程序中使用的非常多. 细节说明: 1)对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留 ...
- python--动态网页渲染pyqt5
原文:https://blog.csdn.net/tymatlab/article/details/78647543 PyQt5 渲染动态网页 示例代码: # -*- coding: UTF-8 -* ...
- python 装饰器(八):装饰器基础(四)types.MethodType的作用
1 types.MethodType的作用—添加实例方法 import types class cla(object): def __init__(self, name, age): self.nam ...
- 第二章: IPC机制
这章关于进程的概念,没有深入太多,只做了解跟学习 IPC: Inter-Process Communication,进程间通信或者跨进程通信,两个进程之间进行数据交换的过程 2.1介绍 线程:CPU调 ...
- 【真实分享】学习linux!让我工资翻5倍!从月薪3000到年薪18W!只用了六个月!
月薪3000到年薪18W,我用了六个月时间.从只会皮毛,到一家公司的运维工程师主力,我的故事蛮神奇的,今天和大家分享一下我自己的经历. 我今年26岁,之前做个体,修过电脑,卖过电脑,做过桌面运维,一直 ...
- Web优化躬行记(1)——CSS
Web优化的对象包括页面性能.用户体验.开发效率.代码优化.网络延迟等,本系列会列举出众多常用的优化技巧,每个技巧都可深入分析,在此只做抛砖引玉. 本系列优化内容提炼于<前端面试宝典>.& ...
- 题解 洛谷 P1552 【[APIO2012]派遣】
根据题意,我们不难发现忍者之间的关系是树形结构. 发现答案的统计只是在该节点的子树中,因此我们考虑通过树形\(DP\)来解决问题. 从叶子节点开始,从下往上考虑,因为一个节点的最优答案只与他的领导力和 ...