糟糕,你写的 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虚拟机规范>的规定里,除了程序计数器外,虚拟机内存的其他几个运 ...
随机推荐
- 配置类需要标注@Configuration却不知原因?那这次就不能给你涨薪喽
专注Java领域分享.成长,拒绝浅尝辄止.关注公众号[BAT的乌托邦]开启专栏式学习,拒绝浅尝辄止.本文 https://www.yourbatman.cn 已收录,里面一并有Spring技术栈.My ...
- PE文件动态加载执行过程
主要步骤: 1.将要加载的文件读取到内存中(简称为文内),检查文件格式无误后,根据可选PE头(简称op头)的SizeOfImage,申请出一块空间用于存储该文件加载到内存后展开的数据(简称为内内).记 ...
- flask 源码专题(十):flash源码研究
flash源码 def flash(message, category="message"): flashes = session.get("_flashes" ...
- unity-疑难杂症(一)
1.使用odin插件序列化,当出现预制体有引用类型的关联, 拖到scene就没关联时,可右键预制体--Reimport解决. 2.类似问题1,脚本组件关联AudioMixer,拖到scene没有关联, ...
- 接口测试框架实战(三)| JSON 请求与响应断言
关注公众号,获取测试开发实战干货合辑.本文节选自霍格沃兹<测试开发实战进阶>课程教学内容. 数据驱动就是通过数据的改变驱动自动化测试的执行,最终引起测试结果的改变.简单来说,就是参数化在自 ...
- CISSP 考试经验分享
复习资料: <Eleventh Hour CISSP> <汇哲培训讲义> <CISSP Official Security Professional>Eighth ...
- 五大高效的PDF文件搜索引擎
当你花了半个多小时在线搜索PDF文档,却发现您找到的文档都不是您需要的PDF格式.如前说述,您可以先打开PDF文档查看是不是PDF格式的,然后再到web浏览器中下载该文档.那么,为了确保您获得的文档是 ...
- 五分钟带你深入了解Redis
相信phper都知道Redis是什么,既然如此,为表仪式感,首先我还是得说说什么是Redis. Redis是什么 redis是一个高性能的key-value数据库,它是完全开源免费的,而且redis是 ...
- [spring] -- 设计模式篇
工厂模式 Spring使用工厂模式可以通过 BeanFactory 或 ApplicationContext 创建 bean 对象. BeanFactory :延迟注入(使用到某个 bean 的时候才 ...
- springboot(4)Druid作为项目数据源(添加监控)
参考博客:恒宇少年:https://www.jianshu.com/p/e84e2709f383 Druid简介 Druid是一个关系型数据库连接池,它是阿里巴巴的一个开源项目.Druid支持所有JD ...