科技爱好者周刊:第 86 期
这里记录每周值得分享的科技内容,周五发布。
本杂志开源(GitHub: ruanyf/weekly[1]),欢迎提交 issue,投稿或推荐你的项目。
周刊讨论区的帖子《谁在招人?》[2],提供大量就业信息,欢迎访问或发布工作/实习岗位。
封面图:Pixel4 XL 夜拍模式样张(出处[3])。
刊首语
最近,我看到一个心理测试《你是不是一个完美主义者?》,题目还挺有意思的。
(1)你是不是经常为自己设定目标,而且最终往往达不到那些目标?
(2)当一件事件做得不够好时,你是否有再试一次的想法?
(3)你是否休息时仍想着学习、工作、或者其他还没有解决的事?
(4)如果遇到别人说话或打岔,破坏了你的注意力,你是否觉得不太高兴?
(5)你是否常常会在事后想,如果当时能换成另一种方式来解决,也许会更加理想?
如果上面的问题,你的回答全是肯定的,那么你就有完美主义倾向。
简单说,完美主义就是追求一个较高水平的目标,不接受一个较低水平的、但可用的结果。这是不好的。我就一直告诫自己,千万不要追求完美。就像一篇文章[4]说的,完美主义的最大问题是,它实际上让你追求高成本。
完美主义是一种压力,它让你为自己创造不切实际的期望。你明明做到了正常水平,但是因为设定的目标太高,所以看上去距离目的地仍然很遥远。你的心态变成了:这一切还不够好,依然可以改进。
完美主义消耗了我们最宝贵的资源和时间,让你将注意力从真正的优先事项上移开。
我在以前的周刊[5]里也写过,“做得快”比“做得好”更重要。我们需要的是,低成本地做出尽量多的成果,而不是高成本地创造一件精品。完美主义会妨碍我们“做得快”。
另外,完美主义带来的高压力,也不利于身心健康。不要追求完美,要随心所欲地生活。
人工智能学习大礼包
人工智能是 IT 领域最热的热点,人才相对稀缺,薪酬待遇上升得很快。我遇到的在校生,大部分都希望往这个方向发展,学习相关知识。但是,人工智能不太容易自学,涉及的理论知识太多了,需要阅读大量专业书籍,不断动手编码实践。
现在有一个 200GB 的人工智能学习大礼包,内容针对学习者的实际需要,与企业招聘和岗位要求结合紧密,包括以下几个部分:(1)Python 学习资料,(2)人工智能数学基础,(3)数据处理与框架技术,(4)机器学习与深度学习。
各种形式的文件都有:视频课程、专业书籍 PDF 版、知识图谱、项目实战。其中的视频课程,是由前谷歌资深机器学习与深度学习科学家秦老师主讲。他一直研发搜索引擎的相关算法,在这个领域已经十余年,项目经验非常丰富。下面是课程相关的人工智能学习路径(点击看大图)。
这些资料由咕泡学院向周刊读者提供。该学院成立于2016年,目前和腾讯课堂联合运营,在线学习人数突破40万人次,已经向一线互联网大厂输送了18000多名高薪程序员,其中不乏阿里P7、百度、腾讯、科大讯飞、深蓝科技等大公司。所有课程均由技术专家研发设计,保证全程直播授课,课程源码全部共享 。优秀学员可获得阿里、华为、腾讯、蚂蚁金服、字节跳动、大众点评等知名互联网企业的内推机会。
微信扫描下方二维码(手机端长按识别两次),就可以免费获得这个 200GB 的人工智能学习大礼包。名额只有199个 ,感兴趣的朋友不要错过。
资讯
1、机器人辅助的远程手术[6]
11月1日,加拿大多伦多的医生在电脑上指导一个机器人,对一个64岁女性进行大脑手术,在大脑内放置一个支架和线圈治疗肿瘤。医生在病人床边几米外的控制台上,操纵系统的机械臂。整个手术花费2.5个小时。患者于第二天出院,情况良好。
以前,外科手术机器人通常用于膝关节置换、前列腺和心脏手术,还没有用于脑部手术,因为大脑中有数千个主要血管,对手术的精度要求非常高。研究小组表示,可能会在明年进行完全远程的手术,如果成功,医生以后完全可以进行异地、甚至跨国的大手术。
2、猛犸淘金热[7]
随着全球气温上升,俄罗斯西伯利亚永久冻土带开始融化,里面埋葬的数百万个猛犸遗骸慢慢暴露出来。这吸引了很多象牙淘金者,他们用高压水龙冲开沼泽,寻找古老的象牙和化石,迅速用保鲜膜包裹它,然后卖掉,可以赚很多钱。
据估计,目前仍然有1000万猛犸埋在西伯利亚的永久冻土中,远远超过现存的35万头非洲象。象牙交易时,很难区分猛犸象牙与非洲象牙的差异。
3、脚踩发电的电脑台[8]
一个美国程序员制作了脚踩发电的电脑台,在底下安装了自行车踏板和发电机。操作电脑的时候,用户不停地踩踏板,就可以对电脑供电,也可以为手机充电。如果你每天花几个小时坐在计算机前,这个电脑台可以让你保持运动。
作者称,自己每小时踩踏板,可以产生60瓦的电力。同时,每小时可燃烧300卡路里。电脑台设置了八个电源插座用于供电,还内置了一个小电脑,通过远程连接,可以查看发电统计,以及对电脑台进行各种操作。
4、大整数分解的新纪录[9]
美国科学家宣布,240个十进制位的整数分解成功(相当于795个二进制位),找到了它的两个大质数因子。这是已经公布的最高纪录,此前的记录是768个二进制位整数。
整数分解是加密学的基石,一旦实现快速的整数分解,现代的公钥加密就会失效。目前主流的加密强度是2048个二进制位的密钥,所以还是安全的。本次分解在 2.1G CPU 上需要4000核年,即单核运算需要4000年,多核运算的总花费大约为十多万美元。
上海的公交车站正在试点显示,下一趟公交车的拥挤程度。公交线路名称后面,会显示1到3个卡通小人,分别对应“舒适、适中、拥挤”。
这项技术背后使用的是基于图像捕捉的乘客密度分析。每次车辆出站30秒后,多个车载探头实时拍摄车内画面,后台使用空间密度算法,得出乘客密度,也就是拥挤程度。这样可以避免乘客过多地集中在一部车,也为调度员调整发车频次、优化平衡车距提供数据参考。
6、石头纸张[10]
传统纸张都是使用植物纤维制作,可能会破坏环境。目前,一些制造商正在推出石头做的纸张,这种纸张防水、耐用,更加环保,不需要树木,生产过程也不需要漂白剂,使用的水也较少。
这种石头纸张由大约80%的碳酸钙制成,碳酸钙是石灰石和大理石的主要成分,纸公司将建筑和采石场遗留的岩石粉碎,再用塑料将粉末融合在一起,然后用滚筒将其压扁直至像纸一样薄。由于这种纸由细小的颗粒制成,而不是较粗糙的植物纤维,因此与传统纸相比,会感觉更平滑。
这种纸张的一个问题是,不能跟植物纸放在一起回收。现有的纸张回收程序不能处理这种纸,不过石头纸本身也是可以反复回收使用。
7、一句话消息
•一份欧盟研究报告[11]称,依赖物理学专业知识的行业对欧盟经济的贡献,要大于金融业或零售业。以物理学为基础的行业包括电气、土木、机械工程,计算机等。
•Instagram[12] 开始隐藏点赞数量,目的是防止无意义的点赞竞赛。
•Intel 公司[13]因为14纳米产能不够,重启已经关闭的22纳米生产线,恢复生产低端的奔腾 Haswell CPU。
•俄罗斯[14]在北冰洋海域,发现世界最大的甲烷喷泉。海底的甲烷猛烈喷发,涌出成千上万的气泡。科学家认为,原因是海水温度升高,海底冻土融化导致地下甲烷冒出地底。
•一个以色列爱好者[15]设计出纸飞机控制器,可以把这个装置安装在纸飞机上,然后用手机遥控纸飞机。这个装置在 KickStarter 众筹,已经有超过1万名支持者,认捐了100多万美元。
•乐高[16]推出盲文积木,积木背后有盲文符号可以触摸感知,帮助盲人和视障儿童学习盲文。
文章
1、QR 码在中国到处可见[17](英文)
一个老外来到中国,感叹 QR 码在国内的广泛使用。他在这篇文章里面,列出了他见到的 QR 码的16个使用场景。
2、Karatsuba 算法[18](英文)
Karatsuba 是1960年发现的一种快速相乘算法,可以大大减少大整数相乘的计算步骤。
3、日落的几何学[19](英文)
如果地球是平的,日落在水中的倒影照片应该像下面这样。
但是实际上,由于地球是圆的,照片是下面这样。
本文根据几何学,推导一个公式,可以根据日落的半径,算出地球的半径。
4、WebAuthn 密钥入门[20](英文)
WebAuthn 是互联网密钥登陆的国际标准,属于一种双因素认证的方法。本文对用户的密钥硬件和使用方法,进行长篇介绍。
5、git rebase 是有害的[21](英文)
本文详细解释理由,建议不要使用 git rebase 命令,至少不要在多人开发的分支上使用。
6、不要把 DNS 的 TTL 设得过低[22](英文)
购买域名的时候,都要设置 TTL 参数。它表示 DNS 记录的缓存时间,如果设得过低,浏览器就会不停发出 DNS 请求,这完全没有必要。本文作者建议,TTL 可以设成40分钟到1小时。
7、使用浏览器的 AudioContext API 生成用户指纹[23](英文)
很多网站想追踪用户,但是浏览器对 Cookie 的限制越来越严,于是有人想出使用音频 API,为每个用户生成一个音频指纹,通过这个指纹追踪用户。本文给出代码实例。
8、Firefox 和 Chrome 为何要革 EV 证书的命[24](中文)
最贵的域名加密证书是 EV 证书,即企业认证证书。但是,新的 Firefox 浏览器不再显示 EV 证书标志,使得有没有这个证书在页面视觉上没有差异。本文讨论背后的原因,认为 EV 证书有可能死掉。这里还有另一篇文章[25]也可以参考。(@dallaslu[26] 投稿)
9、表格的体验优化[27]
本文采用大量示意图,展示了表格应该怎么设计,才能让用户获得最佳的使用体验。
10、如何编写一个编程语言的垃圾收集器?[28](英文)
垃圾收集机制是编程语言的重要特性,有助于程序保持性能,减少内存消耗。本文使用简单的代码,介绍如何自己写一个垃圾收集器。
工具
1、fingerprint.js[29]
一个在浏览器生成用户指纹的 JS 库,可以识别用户,不使用 Cookie。
2、carnage3d[30]
3D 游戏《GTA1》的开源克隆,已经基本可玩。
3、erra[31]
一个 Node.js 的 HTTP 接口调试工具,可以拦截并修改 HTTP 通信,也可以 Mock 接口。(@hughfenghen[32] 投稿)
4、a*
寻路算法可视化演示[33]
本文在网页上演示a*
寻路算法,可以自己调整参数。(@sbfkcel[34] 投稿)
5、easy-service[35]
一个开源工具,将程序注册为 Windows 的系统服务。(@pandolia[36] 投稿)
6、划词二维码[37]
Chrome 浏览器插件,为选中的文字生成二维码,可以用来为网页提到的网址生成二维码。(@tanghuibo[38] 投稿)
7、Slate[39]
API 文档的静态站点生成器。
8、AI 生成的渐变[40]
用户指定一个颜色,该网站会自动生成基于该颜色的渐变模式。
9、Sketchviz[41]
生成手绘风格的流程图的在线工具。
10、draw.io[42]
在线图表工具 draw.io 的源码。
资源
1、基础德语教科书[43]
英语的基础德语教科书,可以免费阅读和下载。
2、A* 寻路算法教程[44]
一个免费的英文教程,介绍 A* 寻路算法,寻找两点之间的最短路径。(@douchuan 投稿)
3、微软 REST API 设计指南[45]
微软的官方文档,讲解微软对 REST API 的设计要求。
4、JSLinux[46]
该网站提供 JS 虚拟机,让一些 Linux 发行版在浏览器中运行。
5、Gravity[47]
这个创业公司发明了飞行背包,人穿上就能在空中飞行。目前不公开出售,但是可以到官网预约现场体验。
图片
1、诺里尔斯克[48]
俄罗斯的诺里尔斯克(Norilsk)是全世界最北方的城市,位于北极圈以北400公里,冬季温度在零下40多度。
该城市是俄罗斯为了开发石油天然气而建立的,由于缺乏维护,已经破败不堪。俄罗斯摄影师 Elena Chernyshova 在2012年至2013年,在那里待了七个月,拍摄了许多照片。下面就是其中一张,冬天结冰的楼道。
极夜时的街道。
2、无意义的发明[49]
该网站收集一些看似无用的发明。
专门看后方的眼镜。
带有太阳能板、可以充电的汗衫。
一次剪四个手指的指甲钳。
文摘
1、沙皇炸弹[50]
冷战期间,苏联一共制造了两枚 RDS-202 氢弹。这种氢弹威力巨大无比,被称为“沙皇炸弹”。“沙皇”一词在俄语中通常用于形容巨型事物。
其中一枚于1961年10月30日试爆,是迄今为止最大的人造爆炸。在全世界所有已知爆炸事件中排名第二,仅次于导致恐龙灭绝的大爆炸。
它的爆炸当量本来相当于一亿吨的TNT炸药,苏联当局忧心试爆后的核落尘对环境的严重影响,会导致内政难题与外交风波,因此将核弹减半为5000万吨的爆炸威力。尽管如此,这枚炸弹的威力依旧是二战期间广岛原子弹的3800倍,相当于二战中所有使用的炸弹总量十倍。
爆炸的第一阶段以核分裂为主,所产生的能量诱发第二阶段的核聚变,聚变释放出的中子诱发出更剧烈的第三阶段核裂变。
试爆地点是北冰洋的一个岛屿,所产生的火球半径达4600米,将近1000公里外的地方都可看见。爆炸产生的蕈状云宽近40公里,高约64公里,相当于珠穆朗玛峰海拔高度的7倍多;爆炸产生的热风可以让远在170公里以外的人受到3级灼伤,爆炸的闪光能造成220公里以外人的眼睛剧痛与灼伤,甚至造成白内障以及失明。
55公里外的一个村庄所有房屋全毁。数百公里内的木造房屋全毁,只有砖造或石造房屋残留,但是门窗与屋顶都被强风吹走。
虽然这一次试爆是在空中试爆,但是往地球传送的震波,被美国仪器侦测到,相当于里氏地震规模5~5.25的地震。
为了保证试爆人员的安全,炸弹上还特别加装一副重达800公斤的减速伞,以延迟炸弹释放坠落后的爆炸时间。否则爆炸威力太大,会危机投放炸弹的飞机安全。
当时的苏共中央第一书记赫鲁晓夫,在1961年7月10日批准了这种炸弹的研发,并要求在十月底完成试爆,刚好是第22届苏共党代会会期,赫鲁晓夫可以借试爆的成功来巩固自己在苏共中央的地位。
这种炸弹体积太大,当时的轰炸机无法携带它飞很远,因此苏联军方并没有用于实战的打算,主要用来对西方世界的恐吓。不过,苏联军方却有将这枚氢弹以舰船或潜艇运至敌方海岸,在海中引爆引发巨型人工海啸的规划。
2、汽车电影院
(摘自《全民蠢萌的美国》[51],比尔·布莱森著,江苏凤凰文艺出版社,2018)
20世纪30年代早期,新泽西州有位名叫理查德·霍林谢德的人,将一台电影投影机装在他的车顶上,坐在车里前排,欣赏投射在他家车库门上的电影。
谁也不知道当时他是怎么想的,或者说这个主意是哪儿来的,可是他的左邻右舍看到车库门上的电影画面都跑过来看。很快,整片小区的人都不请自来,跑到霍林谢德家的车库门前看电影。
1933年,霍林谢德给这个主意注册了专利,这年年末,美国第一家免下车电影院在邻近的小镇卡姆登诞生了。一开始影院的生意并不太好,然后慢慢地沉寂下去。直到50年代,汽车在美国开始普及起来,这种电影院一下子火爆得不得了。50年代初,美国全国一家免下车电影院都没有,但在不到10年的时间里一下子猛增到6000家。
这种电影院有一些好处。有孩子的父母上电影院也不用花钱请保姆照看孩子了,因为孩子们可以穿着睡衣躺在后座上。妈妈们也能给孩子喂奶了。有些免下车电影院甚至还提供洗衣之类的特殊服务。你进去的时候扔下一袋脏衣服,看完出来再把洗好烘干折叠好的衣服拿回去。
有一次,我打算鼓动全家,一起去汽车电影院。“很简单,”我解释起来,“你把车开进一片带大屏幕的空地,停在安有小喇叭配有电线的一根金属柱子旁边,然后把喇叭挂在你的车门内侧听声音。”
“那里有空调吗?”我小儿子问。
“当然没有空调了,是露天的。”
“为什么不去真正的电影院呢?那里有空调,还有很舒服的椅子。”
我突然明白为什么这类电影院迅速衰落下去了。首先,坐在汽车里看电影完全谈不上舒服:如果你坐在司机座,你得一直抵着方向盘。如果坐在后座,屏幕也看不清,除非你有先见之明,来看之前就把挡风玻璃擦干净,否则你就得透过被压扁的虫子和道路上灰尘的污渍看电影。那小喇叭里传出的声音总是恐怖而又尖细,弄得每个演员都像是在更衣室的衣箱里说话一样。新英格兰地区的夜晚都比较凉爽,如果你关上车窗保暖的话,这整个晚上你就得不停地用胳膊擦去挡风玻璃内侧凝结的水汽。有时候还会下雨。
言论与数字
1、
我觉得探索火星很愚蠢,而且真的很可惜。用于太空探索的资金,应被用来拯救我们自己的星球。现在,地球的情况如此严峻,全球正在变暖,这是第三次世界大战,我们却浪费这些钱去火星,火星上什么也没有。
-- Yvon Chouinard[52],运动服装品牌巴塔哥尼亚的老板。他被问到如何看待马斯克的火星旅行计划,做了上面的回答。
2、
敏捷开发要求,整个开发过程都始终保持高速度。请问哪一种赛跑选手,可以从头到尾一直高速?回答是短跑选手,只有短距离才能一直冲刺。
敏捷开发提出的解决方法很简单,就是把开发过程分成多个100米,每一段都是短跑比赛就可以了。
-- Rich Hickey[53],Clojure 语言的发明者
3、
尽快将无用的东西部署到生产环境,是启动新项目的正确方法。它带来未知的风险,促进项目向前发展,开启了并行的工作流程,并让开发者养成良好的习惯。
-- 《你好,生产环境》[54]
4、
1970年,国际电信联盟想为“世界标准时”定一个缩写。当时,英语的缩写是 CUT(Coordinated Universal Time ),法语的缩写是 TUC (temps Universecoordonné)。
为了避免偏向任何一方,国际电联决定,国际标准时的缩写为 UTC。
-- nist.gov[55]
5、
推特的每个推文都有一个唯一 ID。最早,工程师选择32位整数来存储推文 ID,这意味着一共可以储存42.9亿条推文。
到了2009年,明显不够了,推特只好启用一个名为“ id_str”的新字段,将推特 ID 保存成字符串。
-- 《面向未来的代码》[56]
回顾
去年的本周:《周刊第 34 期》
References
[1]
ruanyf/weekly: https://github.com/ruanyf/weekly[2]
《谁在招人?》: https://github.com/ruanyf/weekly/issues/983[3]
出处: https://photos.app.goo.gl/qwVRQdyL2YEoPpCWA[4]
一篇文章: https://medium.com/live-your-life-on-purpose/stop-trying-to-be-perfect-live-your-life-as-you-want-4735768055df[5]
以前的周刊: https://www.ruanyifeng.com/blog/2019/08/weekly-issue-69.html[6]
机器人辅助的远程手术: https://www.theglobeandmail.com/canada/article-toronto-doctors-perform-first-robot-assisted-brain-surgery-on-live/[7]
猛犸淘金热: https://www.wired.co.uk/article/mammoth-tusk-hunters-russia-china[8]
脚踩发电的电脑台: https://www.pedalpc.com/[9]
大整数分解的新纪录: https://lists.gforge.inria.fr/pipermail/cado-nfs-discuss/2019-December/001139.html[10]
石头纸张: https://www.cnet.com/news/worried-about-trees-you-can-take-notes-on-stone-paper-made-from-rock/[11]
一份欧盟研究报告: https://sciencebusiness.net/physics-worth-more-eu-economy-retail-and-financial-services-says-study[12]
Instagram: https://variety.com/2019/digital/news/instagram-likes-like-counts-hidden-1203399222/[13]
Intel 公司: https://www.pcgamer.com/intel-is-bringing-back-a-22nm-haswell-era-pentium-cpu-for-some-reason/[14]
俄罗斯: https://siberiantimes.com/other/others/news/first-pictures-and-video-of-the-largest-methane-fountain-so-far-discovered-in-the-arctic-ocean/[15]
一个以色列爱好者: https://www.kickstarter.com/projects/393053146/powerup-40-smartphone-controlled-paper-airplane[16]
乐高: https://design-milk.com/lego-launches-braille-bricks-for-children-to-learn-braille/[17]
QR 码在中国到处可见: https://a16z.com/2019/10/30/the-power-of-qr-codes/[18]
Karatsuba 算法: https://en.wikipedia.org/wiki/Karatsuba_algorithm#Example[19]
日落的几何学: https://www.shapeoperator.com/2016/12/12/sunset-geometry/[20]
WebAuthn 密钥入门: https://paulstamatiou.com/getting-started-with-security-keys/[21]
git rebase 是有害的: https://www.fossil-scm.org/fossil/doc/trunk/www/rebaseharm.md[22]
不要把 DNS 的 TTL 设得过低: https://00f.net/2019/11/03/stop-using-low-dns-ttls/[23]
使用浏览器的 AudioContext API 生成用户指纹: https://iq.opengenus.org/audio-fingerprinting/[24]
Firefox 和 Chrome 为何要革 EV 证书的命: https://dallaslu.com/why-firefox-chrome-kill-ev/[25]
另一篇文章: https://www.bleepingcomputer.com/news/software/chrome-and-firefox-changes-spark-the-end-of-ev-certificates/[26]
dallaslu: https://github.com/ruanyf/weekly/issues/938[27]
表格的体验优化: https://uxdesign.cc/design-better-data-tables-4ecc99d23356[28]
如何编写一个编程语言的垃圾收集器?: http://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector/[29]
fingerprint.js: https://github.com/Valve/fingerprintjs2[30]
carnage3d: https://github.com/codenamecpp/carnage3d[31]
erra: https://github.com/hughfenghen/erra[32]
hughfenghen: https://github.com/ruanyf/weekly/issues/949[33]
a*
寻路算法可视化演示: https://sbfkcel.github.io/fast-astar/[34]
sbfkcel: https://github.com/ruanyf/weekly/issues/951[35]
easy-service: https://github.com/pandolia/easy-service[36]
pandolia: https://github.com/ruanyf/weekly/issues/953[37]
划词二维码: https://github.com/tanghuibo/qrcode-chrome-plug-in[38]
tanghuibo: https://github.com/ruanyf/weekly/issues/954[39]
Slate: https://github.com/slatedocs/slate[40]
AI 生成的渐变: https://www.designwithai.com/aigradient[41]
Sketchviz: https://sketchviz.com/new[42]
draw.io: https://github.com/jgraph/drawio[43]
基础德语教科书: https://courses.dcs.wisc.edu/wp/readinggerman/print-entire-textbook/[44]
A* 寻路算法教程: http://theory.stanford.edu/~amitp/GameProgramming/[45]
微软 REST API 设计指南: https://github.com/microsoft/api-guidelines/blob/master/Guidelines.md[46]
JSLinux: https://bellard.org/jslinux/[47]
Gravity: https://gravity.co/[48]
诺里尔斯克: http://www.bbc.com/culture/gallery/20190321-norilsk-the-city-where-the-sun-doesnt-rise[49]
无意义的发明: https://www.unnecessaryinventions.com/[50]
沙皇炸弹: https://zh.wikipedia.org/wiki/%E6%B2%99%E7%9A%87%E7%82%B8%E5%BD%88[51]
《全民蠢萌的美国》: https://book.douban.com/subject/30255668/[52]
Yvon Chouinard: https://www.fastcompany.com/90411397/exclusive-patagonia-founder-yvon-chouinard-talks-about-the-sustainability-myth-the-problem-with-amazon-and-why-its-not-too-late-to-save-the-planet[53]
Rich Hickey: https://github.com/matthiasn/talk-transcripts/blob/master/Hickey_Rich/SimpleMadeEasy.md[54]
《你好,生产环境》: https://blog.thepete.net/blog/2019/10/04/hello-production/[55]
nist.gov: https://www.nist.gov/pml/time-and-frequency-division/nist-time-frequently-asked-questions-faq#cut[56]
《面向未来的代码》: https://slate.com/technology/2019/10/y2k-2038-bug-coding-future.html