# 每周分享第 53 期

这里记录过去一周，我看到的值得分享的东西，每周五发布。

欢迎投稿，或推荐你自己的项目，请前往 GitHub 的 [ruanyf/weekly](https://github.com/ruanyf/weekly) 提交 issue。

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042601.jpg)

日本东京最近举行了一次[“DNA 相亲会”](https://m2.people.cn/r/MV8wXzEyMzQwNTM2XzIwNDU3NV8xNTUwNDg0MzIx)。参加活动的男女互不认识，婚介公司根据双方 DNA 的相配程度，介绍他们见面。

这种相亲的依据是，根据 DNA 测序，如果基因高度相似或者互补，那么双方很可能就是相配的。报道说，参加者都认可这种想法，觉得比起其他方法，这样找相亲对象，可能效率更高一点，更可能找到合适的人，以后分手的可能性也会比较小。

如果这种方法可行，那么不久的将来，相亲节目和相亲网站也许都将不存在。只要 DNA 配型合适，你们就开始约会吧。

而且还不止于此，一家公司所有员工的 DNA，进行加总计算，就可以得到这家公司的"平均 DNA"。以后入学或者找工作，有可能都要测 DNA。要是你跟本单位的 DNA 不相配，对不起，只能请你另找别家了。

## 新闻

1、[OpenStreetMap 获奖](https://www.fsf.org/news/openstreetmap-and-deborah-nicholson-win-2018-fsf-awards)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042602.jpg)

2019年3月23日，自由软件基金会 FSF 正式将2018年的自由软件奖，颁发给 OpenStreetMap。理查德·斯托曼亲自颁奖。该奖项表彰显著造福社会、或者表达了自由软件运动理念的自由软件。

OpenStreetMap 是一个协作项目，用于创建可自由编辑的世界地图。它创立于2004年，目前拥有超过一百万社区成员参与编辑，已经有数千个网站、手机 App 和硬件设备上使用了它。它是唯一真正不受限制，可以自由使用的全球地图服务。

2、[三个数的立方和问题](https://www.quantamagazine.org/sum-of-three-cubes-problem-solved-for-stubborn-number-33-20190326/)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042603.jpg)

长久以来，数学家一直想知道，哪些整数可以写成 x^3 + y^3 + z^3 的形式，比如 29 等于 27 + 1 + 1，而 32 已经证明是不可能的。目前，小于 100 的整数里面，只有 33 和 42 无法确定能否写成三个数的立方和。

最近，一个澳大利亚数学家终于找出了三个整数，它们的立方和等于 33。

(8,866,128,975,287,528)³ + (–8,778,405,442,862,239)³ + (–2,736,111,468,807,040)³ = 33

3、[加拿大政府资助“超循环”研究](https://www.cbc.ca/news/politics/hyperloop-transport-canada-high-speed-transport-1.5075268)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042604.jpg)

加拿大运输部发布了一个招标公告，由政府出资，请研究机构评估所谓的“超循环”技术（hyperloop）。这种技术设想使用巨大的真空管，降低摩擦，从而高速移动人员和货物，预计速度可以达到1,000公里/小时，从加拿大东岸到西岸，只要三个小时，比飞机还要快。

加拿大政府想知道两个关键问题：该技术是否可行且安全？成本与传统高速铁路相比如何？

4、[这张人像照片是伪造的吗？](https://havetheyfaked.me/)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042605.jpg)

现在的人像照片，已经无法确定真人还是假人。有人就收集了几十万张假人的照片，都是算法生成的，然后提供服务。你上传照片，系统返回长相相似的假人照片。上图左边是上传的照片，右边是系统返回的假人照片。

5、[世界上最厚的流体和最久的实验](https://smp.uq.edu.au/pitch-drop-experiment)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042606.jpg)

加拿大昆士兰大学的 Pitch Drop实验，是世界历时最久的实验，从1927年开始，到现在还没有结束。该实验由包含在玻璃漏斗中的黑色沥青组成，用来表明沥青实际上不是固体，而是一种非常粘稠的液体，是世界上最厚的流体，粘度约为水的1000亿倍。

沥青从玻璃漏斗里面，慢慢往下滴落。从1930年至今，一共滴下了9滴。最新的一滴是在2014年4月，预计第10滴将在2020年代的某个时候发生。

6、[接听推销电话也能赚钱](https://www.bbc.com/news/technology-23869462)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042607.jpg)

英国一男子对于推销电话忍无可忍，注册了一个服务收费号码。这种号码要向拨入者收取服务费，常用于心理咨询之类的热线。该男子将这个号码，当作自己的联系电话，留作各种外部服务的联系电话。

这个号码的成本是10英镑，如果有人拨打这个号码，会被收取每分钟10便士。据该男子说，两年里面获利了300英镑。

7、**一句话新闻**

* [中国政府](http://sports.sina.com.cn/esports/2019-04-05/doc-ihvhiqax0124375.shtml)修订职业目录，新增13个职业，其中包括电子竞技员和电子竞技运营师。这意味着，玩电子游戏也是政府承认的正式职业。

* [美国科学家](http://www.xinhuanet.com/politics/2019-04/18/c_1124385978.htm)让已经死亡四个小时的猪脑，重新恢复了呼吸功能，但是没有出现意识。此事动摇了死亡的定义，如果死去的大脑是可以恢复生物功能的，那么这算死了吗？

* [丰田公司](https://www.topgear.com/car-news/electric/toyota-sharing-its-ev-secrets-free)公开23,740项电动汽车和混合动力汽车的专利，供其他公司免费使用。由于大部分是混合动力汽车的专利，有人猜测丰田的动机是，使得混合动力汽车不会那么快被淘汰。

* [国家发改委](https://www.cnbeta.com/articles/tech/835283.htm)发布《产业结构调整指导目录（2019年本，征求意见稿）》，将虚拟货币“挖矿”活动列入淘汰类行业。这意味着，中国可能禁止加密货币挖矿。

* [Game Boy](https://www.theverge.com/2019/4/17/18311479/nintendo-game-boy-30th-anniversary-switch-gaming) 于1989年4月21日发布，今年是30周年纪念日。

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042608.jpg)

## 文章

1、[加强 Linux 服务器安全的七个步骤](https://medium.com/@mutendebrian/how-to-secure-your-linux-server-6026cfcdefd8)（英文）

自己架设 Linux 服务器的时候，按照本文的步骤，可以防止90%以上的攻击。

2、[提高《星际迷航》的分辨率](https://captrobau.blogspot.com/2019/03/remastering-star-trek-deep-space-nine.html)（英文）

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042609.jpg)

机器学习已经可以将一幅低分辨率图像，提升为高分辨率图像。作者使用这项技术，尝试将早年一部 480p 的电视剧，提升为 1080p 高分辨率。

3、[全文搜索的相关性评分](http://burakkanber.com/blog/machine-learning-full-text-search-in-javascript-relevance-scoring/)（英文）

搜索结果一般按照相关性进行排序，某篇文章与你的搜索词相关性最高，就会排在第一位。相关性是怎么计算的，通常是使用 TD-IDF，但是更高级的算法使用 Okapi BM25。

4、[Node.js 的多线程指南](https://blog.logrocket.com/a-complete-guide-to-threads-in-node-js-4fa3898fe74f)（英文）

JavaScript 是单线程语言，但是 Nodejs v10.5.0 版本增加了 `worker_threads` 模块，使得 Node 也支持多线程。 

5、[如何无限延长一首歌](https://medium.com/@metalex9/generating-more-of-my-favorite-aphex-twin-track-cde9b7ecda3a)（英文）

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042610.jpg)

作者使用马尔可夫链将一首5分钟的歌，延长到了一个小时。多出来的部分都由软件自动生成。

6、[Fuchsia OS 简介](https://forum.fuchsia-china.com/t/fuchsia-os/365)（中文）

Fuchsia OS 是谷歌正在开发的下一代操作系统。本文是许中兴博士在开源开发工具大会 HelloGCC 2018上发表的一个关于 Fuchsia 的精彩演讲。

7、[Nodejs 控制无人机](https://codeforgeek.com/2019/03/programming-voice-controlled-drone-node-ardrone/)（英文）

本文介绍如何编写 Nodejs 服务控制无人机，但是使用无人机品牌不是大疆。

8、[日志记录的最佳实践](https://geshan.com.np/blog/2019/03/follow-these-logging-best-practices-to-get-the-most-out-of-application-level-logging-slides/)（英文）

如果狗是男人最好的朋友，那么日志就是软件工程师最好的朋友。本文介绍日志的一些最佳实践，文后附有幻灯片，幻灯片比文章本身更有价值。

9、[树莓派搭建空气质量监视器](https://www.balena.io/blog/build-an-environment-and-air-quality-monitor-with-raspberry-pi/)（英文）

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042611.jpg)

本文是树莓派教程，附有示例代码，演示如何搭建一个空气质量监视器（需要自购传感器）。

10、[芯片里面有什么？](https://zeptobars.com/en/read/how-to-open-microchip-asic-what-inside)（英文）

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042612.jpg)

芯片可以被认为是一个黑盒子，你通常不会看到它的内部。本文将展示如何打开芯片，看看里面是什么。

## 软件

1、[freeciv-web](https://github.com/freeciv/freeciv-web)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042613.jpg)

仿照《文明》的开源 Web 实时战略游戏，可以单人或多人在浏览器里面玩。

2、[Kdenlive](https://kdenlive.org/en/)

一个功能强大的开源的视频编辑器，主要针对 Linux 系统，但是 Mac 和 Windows 也可以安装。

3、[此简历不存在](https://thisresumedoesnotexist.com/)

该网站使用人工智能生成不存在的简历。

4、[QuickDraw](https://github.com/vietnguyen91/QuickDraw)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042614.jpg)

谷歌 QuickDraw 功能的开源实现，可以识别随手画出的图形。

5、[cloudconvert](https://github.com/ruanyf/weekly/issues/364)

在线文件格式转换工具，支持218种格式文件的转换。（@[shallynever](https://github.com/ruanyf/weekly/issues/364) 投稿）

6、[handtrack.js](https://github.com/victordibia/handtrack.js)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042615.jpg)

一个在浏览器中进行实时手部检测的 JS 库。（@[rolitter](https://github.com/ruanyf/weekly/issues/361) 投稿）

7、[jsweet](http://www.jsweet.org/)

一个 Java 工具，可以将 Java 代码转为 TypeScript/JavaScript 代码。

8、[Pi API](https://pi.delivery//#apipi_get)

谷歌推出的服务，可以获取指定位置的圆周率，比如圆周率的[小数点后第10000位](https://api.pi.delivery/v1/pi?start=10000&numberOfDigits=1)是7。

9、[code-server](https://github.com/codercom/code-server)

运行在服务器上的 VS Code 服务，支持大部分插件，可以在浏览器里面远程使用。

10、[Commento](https://gitlab.com/commento)

一个类似 Disqus 的开源评论服务。

11、[Server酱](https://sc.ftqq.com/)

一个将服务器消息推送到微信的免费工具。（@[Ming-Lei](https://sc.ftqq.com/3.version) 投稿）

## 资源

1、[manypixels](https://gallery.manypixels.co/)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042616.jpg)

一个收集无版权插图的网站，提供 SVG / PNG 格式下载，并且允许更改颜色。

2、[leetcode](https://github.com/azl397985856/leetcode)

记录个人 leecode 解题之路的笔记库，使用 JS 语言。（@[azl397985856](https://github.com/ruanyf/weekly/issues/413) 投稿）

3、[Automate the Boring Stuff with Python](https://automatetheboringstuff.com/)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042617.jpg)

免费电子书，Python 语言的入门和初级应用。（@[nosarthur](https://github.com/ruanyf/weekly/issues/416) 投稿）

4、[955.WLB](https://github.com/formulahendry/955.WLB)

该仓库收集国内不加班的 IT 公司名单。（@[ifrontend-xyz](https://github.com/ruanyf/weekly/issues/418)** **投稿）

5、[I love PDF](https://www.ilovepdf.com/)

该网站提供各种免费的 PDF 在线工具，比如合并、拆分、压缩、Office 文件转 PDF、PDF 转图片等。（@[ifrontend-xyz](https://github.com/ruanyf/weekly/issues/428) 投稿）

## 文摘

1、[美国互联网的中心位置](https://splinternews.com/how-an-internet-mapping-glitch-turned-a-random-kansas-f-1793856052)

距离堪萨斯州威奇托市一小时车程的地方，有一个叫 Potwin 的小镇，那里是一个360英亩的农场，主人是现年82岁的 Joyce Taylor。

过去十年，她遇到了很大的麻烦，被指控为垃圾邮件发送者和诈骗犯，联邦调查局特工、联邦警察、州警察、国税局都找过她。有一次，有人在车道上留下了一个破损的马桶，这是一种奇怪的威胁。

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042618.jpg)

这一切都是因为 MaxMind 公司的 IP 定位服务的一个错误。该公司提供每个 IP 地址的物理位置。有时候，只能知道 IP 地址属于某个大致的地理范围，得不到确切的地址。为了处理这种不精确性，MaxMind 决定在城市、州和国家的层面设置默认位置，以便反映 IP 地址的大致位置。如果它只知道某个 IP 地址在美国，并且无法弄清楚它在何处，那么它就显示美国的地理中心。

美国的地理中心位于堪萨斯州北部，确切地说，中心点的坐标为 39°50'N 98°35'W。MaxMind 决定简化这个坐标，采用 38°N 97°W 作为美国 IP 地址的默认地点。过去的14年中，每次有人查询无法识别的美国 IP 地址的位置时，它就会显示这个地点的坐标。现在有超过6亿个 IP 地址与该坐标相关联。如果有人发垃圾邮件或者从事互联网诈骗，MaxMind 的数据库就会现在他们的位置是38.0000，-97.0000。

这正是 Joyce Taylor 的农庄地址。得知这个问题以后，MaxMind 已经更新了数据，从而让农庄恢复平静。

2、[谈谈 To B 业务的难点](https://xw.qq.com/partner/hwbrowser/20190128A0BHUQ/20190128A0BHUQ00?ADTAG=hwb&pgv_ref=hwb&appid=hwbrowser&ctype=news)

为什么 To B （企业服务）业务在中国很难做？

首先，很多人可以影响企业客户的购买决策。一个企业要买一套管理系统，决策的可能是业务负责人，也可能是主管信息化的副总裁。他们的诉求很可能不是企业利益最大化，而是他自己及他的部门在企业内的话语权、存在感。如果你连诉求都没搞清楚，你怎么可能拿到订单？

再举一个例子，你认为销售部门使用了你的软件，老板能更容易地掌握他们的业绩和效率，因此销售部门会赞成购买你的软件。但是，销售骨干不一定希望老板掌握他的实际情况。为了自己的利益，他抵触你的系统，最终你就无法完成这个系统的实施。

一个大企业的决策负责人，往往是企业高管或中层。选择 To B 产品的时候，他并不只是从业绩出发，还会考虑自己的风险。我选择上市巨头A公司的产品，如果出了问题，那是 A 公司的问题，不是我的问题，因为人家是上市公司，行业领先者，老板不会说我什么。但如果我选了创业企业 B 公司的产品，如果出了问题，那肯定是我的问题，老板会觉得你怎么选这么一个不靠谱的产品，你是不是拿了人家好处什么的。所以，决策者评估这种信用风险的时候，他们宁可选择对他们而言，风险最低的产品和服务方案。

大部分 To B 产品都是为了老板服务的，而对员工来说，这意味着更多负担和约束，所以他们不喜欢、也不感兴趣你的产品。我知道有不少老板抱怨，他们员工非常不喜欢用钉钉。对于普通人而言，他们为了游戏、娱乐所投入的时间和精力，远大于为了工作和学习投入的时间和精力，也就是说，你不能指望公司职员用玩游戏的精神去研究你的产品。

## 图片

1、[非洲最后的巨齿象](https://www.theguardian.com/environment/gallery/2019/mar/20/the-last-of-africas-big-tusker-elephants-in-pictures)

Tusker 象生活在肯尼亚草原。它是非洲最后一种有着巨大牙齿的大象。专家认为，这种大象现存可能不到20只。许多自然保护主义者认为，自己的使命就是让这些大象在偷猎者手中幸存下来，不要死于陷阱、子弹或毒箭。

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042619.jpg)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042620.jpg)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042621.jpg)

2、[第一款 iPhone 的原型](https://www.theverge.com/2019/3/19/18263844/apple-iphone-prototype-m68-original-development-board-red)

2007年6月，苹果公司发布 iPhone。此前的两年半，他们一直在秘密研发 iPhone，没有泄露任何消息。

现在，当初研发 iPhone 的原始开发板泄露出来了。你看到这块板子，绝对想不到苹果公司在研发手机。

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042622.jpg)

![](https://cdn.beekka.com/blogimg/asset/201904/bg2019042623.jpg)

## 言论

1、

软件行业是一个年轻的行业，谷歌和亚马逊的员工平均年龄是30岁。全球10万名程序员的2018年 Stack Overflow 调查发现，四分之三的人未满35岁。

尽管技术领域的起薪很高，但是年轻人的优势在就业的前十年就会减少一半。2017年的一份报告发现，50岁以上的技术工人的工资实际上低于年轻人。

-- [《老程序员的按计划淘汰》](https://onezero.medium.com/ctrl-alt-delete-the-planned-obsolescence-of-old-coders-9c5f440ee68)

2、

“JS 疲倦”发生在人们使用他们不需要的工具，来解决他们没有的问题时。

-- [《JavaScript 疲倦的终极指南》](https://lucasfcosta.com/2017/07/17/The-Ultimate-Guide-to-JavaScript-Fatigue.html)

3、

有些人说，他们更喜欢纸书，而不是电子书。这可能因为纸书是有机物质组成的，那些物质包含了热、光、水分，在生产过程中发生化学反应，产生独特的旧书气味。纸张释放出数百种挥发性有机化合物，让人觉得有大自然的感觉。

-- [《为什么旧书有味道》](https://www.bookofjoe.com/2019/03/why-do-old-books-smell.html)

4、

现在是2019年，你可以从亚马逊租用 CPU，每小时约2.5美分。换句话说，使用 CPU 每小时的费用，比美国最低工资雇佣一个人便宜约300倍。

-- [《为什么 CPU 时间不值钱？》](https://www.johndcook.com/blog/2019/03/07/cpu-time/)

5、

以前在台湾拍电影，感觉跟学生时代差不多。一个原因是酬劳，付给你的钱不足以要求你去承担什么责任，我们只是凭着对电影的喜好，拼命去做。

后来为好莱坞拍电影，他们付的薪水，让我觉得真的可以养家糊口、能置产。拍完《理性与感性》后我才第一次在美国缴税，记得第一张支票是18万美元，我手软得都签不下去。

-- 李安《十年一觉电影梦》

6、

面向对象编程的问题是，默认带有环境。你只想要一个香蕉，但是得到了一只拿着香蕉的大猩猩，甚至还有整个丛林。

-- 计算机语言大师 [Joe Armstrong](http://www.defprogramming.com/quotes-by/joe-armstrong/)，2019年4月20日去世。他非常不喜欢面向对象编程，发明了函数式语言 Erlang。

## 回顾

去年的本周：[《每周分享第 1 期》](https://www.yuque.com/ruanyf/share/issue-1)

## 订阅

这个专栏每周五发布，同步更新在我的[个人网站](http://www.ruanyifeng.com/blog)、[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)和[语雀](https://yuque.com/ruanyf/share/)。

微信搜索“**阮一峰的网络日志**”或者扫描二维码，即可订阅。

![](http://www.ruanyifeng.com/blogimg/asset/2018/bg2018042311.jpg)

（完）

