# 每周分享第 48 期 这里记录过去一周,我看到的值得分享的东西,每周五发布。 欢迎投稿,或推荐你自己的项目,请前往 GitHub 的 [ruanyf/weekly](https://github.com/ruanyf/weekly) 提交 issue。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032201.jpg) 上图是世界最著名的程序员之一:Bill Joy。 四十年前,他20岁出头,在加州大学柏克利分校读研究生,是 Unix 系统 BSD 版本的主要作者之一。因为找不到合适的编辑器,他用一个周末,在 `ex` 命令的基础上创造了 Vi 编辑器。Unix 系统的 TCP/IP 协议也是他实现的。 28岁时,他与其他人一起创建 Sun 系统公司,担任首席科学家,参与发明了 Java 语言。2003年,49岁时,他从 Sun 公司离职,改为从事风险投资。但是,他不投互联网公司,只投绿色能源,尤其是新型电池。原因是电动汽车大规模推广以后,地球上所有的锂元素制造电池都不够,必须找到新种类的电池。 我觉得,他的人生非常令人羡慕。不是因为取得的成就,而是因为每个人生阶段,他都在干不一样的事情:年轻时是程序员,中年时是科学家,老年时是新能源企业家。美国总统特朗普也是这种情况:年轻时是房地产商,中年时变成电视明星([《学徒》](https://baike.baidu.com/item/%E5%AD%A6%E5%BE%92/10198638)一口气拍了十季),老年时变成了总统。人生就好像一次旅行,不同时期能够从事不同的领域,就好像看到了不同的风景,体验了不一样的人生。 时代在变化,人生的可能性比任何时候都要多,真的没必要,一种职业干到老,多么单调的人生。实际上也不太可能,[有人统计](http://scholarsupdate.hi2net.com/news.asp?NewsID=23145)2002年的中国500大企业,三分之二以上已经消失或没落了。这么大的公司都撑不久,何况个人呢?我们在规划自己的人生时,应该有这种预见:总有一天,可能是每隔七年,我就会彻底离开现在的领域,在一个不一样的地方,干着自己感兴趣(理想的情况)或者不感兴趣(不理想的情况)的事情。 ## 新闻 1、[汽水税](https://www.inverse.com/article/53465-is-the-soda-tax-working-yes-actually-it-is) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032202.jpg) 2014年,美国加州伯克利市宣布开征“汽水税”,希望降低人们对含糖饮料的消费,因为大量喝含糖饮料会导致肥胖和糖尿病。 四年后,有一项研究发现,2014~2017年期间,该市的汽水销售量减少了52%。2014年之前,伯克利的居民每天平均喝1.25次含糖饮料。2014年之后,每天平均喝0.5次。同一时期,周边城市的汽水消费量则没有明显变化。 2、[世界最大的蜜蜂](http://www.nhm.ac.uk/discover/news/2019/february/the-worlds-largest-bee-rediscovered-after-38-years.html) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032203.jpg) 印度尼西亚北部的一个小岛上,生活着一种世界最大的蜜蜂 Megachile pluto,比普通蜜蜂大四倍。上次人们看到这种蜜蜂,还是在1981年。 2018年3月,一只雌性的此类蜜蜂的新标本,出现在拍卖网站上,以9100美元的价格成交。几个月后,第二个标本出现,售价为4,150美元。科学家非常担忧,一方面印尼的热带雨林正在快速消失,另一方面这么高的拍卖价格,将会加速这种蜜蜂的灭亡。 2019年1月,一支由美国、澳大利亚、加拿大科学家组成的团队,前往寻找这种蜜蜂。在一个小岛上搜寻五天后,终于在离开前一天,他们发现了这种蜜蜂的活体。科学家希望印尼政府对此采取保护措施。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032204.jpg) 3、[仍在使用的寻呼机](https://www.bbc.com/news/technology-47332415) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032205.jpg) 上个世纪80年代,手机普及之前,寻呼机曾被广泛使用,目前已经淘汰了。但是,医疗行业仍在使用寻呼机,单单是英国,还有13万台寻呼机在使用中。医疗行业的许多人认为,寻呼机快速可靠,尤其在紧急情况下有重要作用。 相比手机,寻呼机的优点有:(1)医院的手机信号和 Wi-Fi 信号覆盖范围不完整,往往有死角;(2)手机可能会干扰医院设备;(3)寻呼机功能单一,因此更便捷可靠。 4、[ARM 芯片的 Mac](https://www.axios.com/apple-macbook-arm-chips-ea93c38a-d40a-4873-8de9-7727999c588c.html) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032206.jpg) 有迹象表明,苹果公司可能会在2020年,将 Mac 电脑的 CPU 芯片从 Intel 的 x86 改为 ARM 芯片,主要目的是让 iPhone、iPad 和 Mac 可以运行同一个应用程序。Mac 以前也改过 CPU 芯片,当时是从摩托罗拉的 PowerPC 芯片改成英特尔。 5、[转基因蚊子](https://www.npr.org/sections/goatsandsoda/2019/02/20/693735499/scientists-release-controversial-genetically-modified-mosquitoes-in-high-securit) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032207.jpg) 意大利的一个实验室已经培养出了转基因蚊子。这种蚊子的嘴巴类似于雄蚊子的嘴巴,所以不能咬人,因此无法传播病菌。此外,这种蚊子的生殖器官变形,这意味着它们不能产卵。这些基因改变会传给下一代,这意味着有可能让蚊子灭绝。 实验室还在评估,这种技术是否安全有效。如果确认的话,有朝一日可能会在疟疾盛行的非洲村庄,把它们释放出来,目标是最终让所有的雌蚊子都受到感染。 6、[维珍银河的第一位太空乘客](https://www.cnbc.com/2019/02/22/richard-bransons-virgin-galactic-sends-first-test-passenger-on-spaceflight.html) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032208.jpg) 2月22日,英国太空飞机公司维珍银河(Virgin Galactic),搭载了第一位太空乘客,进行了试飞。飞机飞到距离地面90公里的太空,然后安全返回。该公司计划开展太空观光,让游客在太空观看地球,并且体验失重,据称目前已经有600多人报名。 这次的乘客是一名叫做 Beth Moses 的女性,在维珍银河担任太空乘客的培训老师。与她一起上天的还有两名飞行员。下图是飞行过程的示意图。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032209.jpg) 7、[机器人菩萨](https://sea.mashable.com/culture/2515/japan-just-created-possibly-the-worlds-first-android-deity-a) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032210.jpg) 2月23日,日本京都的高台寺公开展示了一个机器人菩萨 Kannon,它象征日本的怜悯之神,造价90万美元。该机器人身高1米95,会念《心经》,进行佛教布道。 该机器人内部安装了 Android 系统,它是世界上第一个受到信徒崇拜的机器人。它的左眼安装了一个摄像头,可以移动头部,手臂和躯干。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032211.jpg) 8、**一句话新闻** * [Gail.com](https://gail.com/) 这个网站每天至少有5000次访问,并且收到几百万封邮件,原因是人们把 gmail 拼错了。

* [最新研究](https://www.washingtonpost.com/health/2019/02/28/weekend-catch-up-sleep-is-lie/)发现,周末补睡也无法弥补平时缺乏睡眠对健康造成的影响。

* [特斯拉公司](https://www.tesla.cn/blog/introducing-v3-supercharging)发布新的超级充电桩,充电5分钟可以行驶120公里,使得用户平均减少充电时间50%。

* [互联网](https://mashable.com/article/google-doodle-world-wide-web/#rKtA5.brRZqx)是1989年3月12日由 Tim Berners-Lee 发明的,三十周年纪念日来临之际,谷歌发布了一个纪念 Doodle。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032212.jpg) ## 文章 1、[异步编程是什么?](https://luminousmen.com/post/asynchronous-programming-blocking-and-non-blocking)(英文) 一组系列文章,从操作系统的高度,较为通俗地介绍如何认识异步编程。 2、[行内 JS 脚本的堵塞效应](http://www.phpied.com/asynchronous-inline-scripts-via-data-urls/)(英文) 网页加载 JS 脚本时,允许异步加载脚本(即加上 async 属性),但是行内脚本可以堵塞异步脚本,本文介绍解决方法。 3、[Unix 文本操作命令介绍](https://www.ibm.com/developerworks/aix/library/au-unixtext/index.html)(英文) Unix 命令行有许多操作文本的命令,本文逐一介绍。 4、[Python 数据类型简介](https://www.labnotes.in/2019/02/python-introduction-and-data-types.html?m=1)(英文) 初学者的基础知识文章,介绍和列举 Python 的数据类型。 5、[正则表达式为什么不能解析 HTML 网页?](https://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags)(英文) 正则表达式最多只能解析网页的片段,而不可能写出一个基于它的 HTML 解析器。 6、[Go 语言编程风格的最佳实践](https://dave.cheney.net/practical-go/presentations/qcon-china.html)(英文) 作者谈了一些建议,如何编写可维护的 Go 语言代码。 7、[橙色的历史](https://mymodernmet.com/history-color-orange/)(英文) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032213.jpg) 欧洲人直到16世纪才开始使用这种颜色。橙色象征着生育和富饶,上图是1895年的油画,反映了穿着橙色长袍的青年女性。 8、[Beacon:暗网的搜索引擎](https://hothardware.com/news/beacon-dark-web-search-engine-probes-the-internet-underworld)(英文) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032214.jpg) 暗网必须在加密条件下才能访问。Beacon 是一个暗网的搜索引擎,允许在正常网络中搜索暗网的信息,该工具目前还没有正式推出,本文只是介绍。 9、[网站扩展的图说教程](https://arcentry.com/blog/scaling-webapps-for-newbs-and-non-techies/)(英文) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032215.jpg) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032216.jpg) 本片使用多张图片,通俗地解释如何拓展网站服务,承受更大的访问量。 10、[Flexbox 详解](https://github.com/veedrin/horseshoe/blob/master/flex/flex.md)(中文) 详细介绍 CSS 的 Flexbox 布局,配有大量图片说明。(@[veedrin](https://github.com/ruanyf/weekly/issues/295) 投稿) 11、[React Router 为什么发布5.0版?](https://reacttraining.com/blog/react-router-v5/#why-the-major-version-bump)(英文) 如果你记不住脱字符( `^` )的作用,下面这起事故会让你记住。react-router 先发了4.4版,但是一个核心衍生库(react-router-dom)的4.3版,依赖错误地写成 `"react-router": "^4.3.1"` ,与4.4版不兼容导致报错。最后团队决定,撤销4.4版,改发5.0版。 ## 工具 1、[github-history](https://github.com/pomber/github-history) 该工具提供一个用户友好的界面,查看某个文件在 GitHub 上面的编辑历史。 2、[swc](https://github.com/swc-project/swc) 一个使用 Rust 语言写的 JS 转码器,可以取代 Babel,将 ES6/TS/JSX 代码转成 ES5 代码。 3、[miniC-hosting](https://vasyop.github.io/miniC-hosting/) 运行在浏览器里面的 C 语言虚拟机。 4、[Search Icons Visually](http://compute.vision/nouns/index.html) 图标搜索引擎。你上传一个图标,它就返回一系列相似的图标。 5、[gitignore.io](https://gitignore.io/) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032217.jpg) 生成 gitignore 文件的网站。 6、[DeskGap](https://github.com/patr0nus/DeskGap) 生成跨平台(Win & Mac)桌面应用的工具,类似 Electron,但是使用了系统内置的 WebView。 7、[TLDR 小程序](https://linux.cn/article-10528-1.html) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032218.jpg) TLDR 项目移植到小程序,微信查看 Linux 命令。(@[zqb-all](https://github.com/ruanyf/weekly/issues/274) 投稿) 8、[WireGuard for macOS](https://lists.zx2c4.com/pipermail/wireguard/2019-February/003853.html) WireGuard 的 Mac 客户端。 9、[Sloth](https://github.com/sveinbjornt/Sloth) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032219.jpg) Mac 系统的桌面应用,显示当前所有正在运行的进程、打开的文件和系统连接(socket),基本上就是 lsof 命令的图形界面。 10、[Marp](https://yhatt.github.io/marp/) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032220.jpg) 跨平台的桌面工具,将 Markdown 文档转成幻灯片。 11、[COI - Chat Over IMAP](https://www.coi-dev.org/)(英文) IMAP 电子邮件协议可以实时推送邮件,COI 就是基于这一点实现的一个聊天协议。通过它的客户端,可以达到聊天效果,但实际是互相发送 Email。 12、[coderplanets](https://coderplanets.com/home/posts) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032221.jpg) 小众语言的社区,可以建立各种主题的子社区。[CodePlantes](https://github.com/coderplanets/coderplanets_server) 是开源的,服务端使用 Elixir 语言编写。(@[mydearxym](https://github.com/ruanyf/weekly/issues/352) 投稿) ## 资源 1、[Tracker 服务器列表](https://newtrackon.com/list) BT 下载需要有稳定的 Tracker 服务,该网站收集可用的 Tracker 服务器列表。另外还有一个 [GitHub 仓库](https://github.com/ngosang/trackerslist) ,也是做类似的事情。 2、[Treeographer](https://thetreeographer.com/archive/) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032222.jpg) 该网站收集各种著名树木的历史。 3、[Our World in Data](https://ourworldindata.org/) 该网站收集一些世界性问题的数据,比如人口、健康、食物、能源等等。 4、[互动式线性代数教程](http://immersivemath.com/ila/index.html) 基于网页的线性代数教程,有各种互动式图形。 5、[Grokking Deep Learning](https://livebook.manning.com/#!/book/grokking-deep-learning/) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032223.jpg) 深度学习入门教材的在线阅读。 6、[Marc Andreessen 创业文集](https://pmarchive.com/) Marc Andreessen 是 Netscape 浏览器创始人,现在是硅谷著名的风险投资家,本书收集了他关于创业的文章。 7、[中国独立 iOS 和 macOS 开发者的作品](https://josephchang10.github.io/chinese-indie-hackers/) 该仓库收集个人开发者提交的作品。(@[Y024](https://github.com/ruanyf/weekly/issues/323) 投稿) 8、[GeoFS](https://www.geo-fs.com/int/cn/) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032224.jpg) GeoFS是一个免费的在线飞行模拟器,包含全球的真实景色。你只需要一个网页浏览器就能运行它。(@[JeremiahZhang](https://github.com/ruanyf/weekly/issues/360) 投稿) ## 文摘 1、[微出行的意义](https://florentcrivello.com/index.php/2019/01/28/five-promises-of-micromobility/) 去年,美国开始流行共享电动滑板车和自行车。很多人把它们看作玩具或者一种时尚风潮,但是我认为,这种微出行比自动驾驶的意义更重大。 微出行比汽车出行更清洁、更安全。除了非常便宜,它们将空间和能源的使用效率提升了一个数量级,而且马上就可以部署它们,不用等待新技术普及。这些特点会改变游戏规则,汽车公司花费数十亿美元追求同样的效果,微出行轻松就达到了。 (1)清洁 交通运输占温室气体排放量的28%。微出行可以承担2英里以下的大部分出行,占城市出行的40%,不排放任何温室气体。 更重要的是,它提高了能源效率。汽车内燃机的效率仅为35%,即只有35%的能量可以用于行进,其余部分都是热能损耗。然后,35%的能量里面,只有5%用于移动乘客 - 另外95%用于移动汽车本身。因此,汽车的整体效率为0.05 * 0.35 = 1.75%。这意味着每加仑汽油,只有2盎司用于移动乘客,其余的要么在高温下丢失,要么用来移动你的车。 相比之下,电动滑板车的能源效率是85%,由于它本身重量约为30磅,所以整体能量的70%可以用于移动乘客。这比汽车提高了4000%。 (2)空间 微出行更节省空间。下图是60个人的出行方式,左边是他们全部驾驶汽车占据的空间,右边是他们步行、骑自行车、乘公共汽车占据的空间。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032225.jpg) 下图是哥本哈根的一所学校,停放汽车和停放自行车的对比。同样的空间,只能停放七八辆汽车,如果改成自行车,可以停放100多辆。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032226.jpg) 电动滑板车还允许骑车者彼此之间保持较短的安全距离。这两个因素相结合,将导致交通流量增加10倍。 (3)安全 如果城市交通40%变成自行车和电动滑板车,全世界每年可以少死几十万人。 (4)城市面貌 一座充满自行车的城市,远远比充满汽车的城市更适合居住。下图是30年前和现在的丹麦街道的对比,该国大力推广自行车取代汽车。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032227.jpg) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032228.jpg) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032229.jpg) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032230.jpg) 这些变化不仅仅对城市风貌有影响,还对当地经济产生影响:它增加了客流量和当地企业的收入。这反过来提升了社区的房地产价值。 汽车是将你隔离在车厢里,汽车行业的创新都是使得这个隔离尽可能有效:更好的噪音隔离,更好的防震动,更好的扬声器......微出行是相反的。当你骑滑板车时,你并不与周围空间隔离。驾驶汽车非常无聊,这就是为什么我们要尝试自动化驾驶。骑自行车很有趣 - 当它是电动时更是如此! 我觉得有趣的是,美国人访问欧洲后,歌颂欧洲很迷人,有热闹的街道,然后回到美国,继续建造汽车城市。 我最喜欢的例子是洛杉矶,用约翰列侬的话说,它只是一个“停车场,你可以在那里购买一个去旧金山的汉堡包。”洛杉矶的停车场面积是曼哈顿的四倍多,这个城市很像一个巨大的停车场。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032231.jpg) 一个外人来到美国城市,感觉就像一个二等公民。因为这些城市明显地是为汽车设计的,不是为行人设计的。走在城里,缺乏视觉多样性,使得行走很无聊,根本无法长时间闲逛,而且长时间在高楼的阴影里也不健康。 (5)成本 微出行的成本远远低于汽车。今天最便宜的交通选择是公共交通,但是仍然存在“最后一英里”的问题,公共汽车到不了许多地点,微出行可以弥补这个缺陷。 ## 本周图片 1、[重访 Lena](https://www.wired.com/story/finding-lena-the-patron-saint-of-jpegs/) 相隔46年之后,著名的 Lena 重拍了一张当年姿势的照片。那时她21岁,现在67岁。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032232.jpg) 2、[太空殖民的概念图](https://publicdomainreview.org/collections/space-colony-art-from-the-1970s/) 1970年代,美国宇航局委托物理学家,绘制太空殖民的概念图,1万人左右的太空殖民点可能是什么样子。下面就是当时绘制的一些想象图。 ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032233.jpg) ![](https://cdn.beekka.com/blogimg/asset/201903/bg2019032234.jpg) ## 本周金句 1、 云计算领域对于学习者几乎没有进入障碍,只需要一点天生的好奇心。所有云服务都有免费层,优秀的文档,示例项目等,Kubernetes 是免费和开源的。 技术很有趣,你边玩边学,就会得到一份工作。 -- [HN 读者留言](https://news.ycombinator.com/item?id=19062624) 2、 如果你每月在 AWS 花费10万美元,亚马逊会向你提供折扣。如果你一个月的花费超过100万美元,他们将不再理会你。因为他们知道你已经被锁在他们的服务里面,去不了别的地方。 -- [《Lambda 和 无服务器将锁定你》](https://www.theregister.co.uk/2017/11/06/coreos_kubernetes_v_world/) 3、 如果你跟风险投资家说,你的项目将使得他们三年内获得3倍的回报,他们可能根本不会进行投资。每年50%的回报率不值得他们花时间。 这是因为所有风投项目如果有1/3提供3倍的回报,其余的都失败了,那么这个风投基金将一无所获。 -- [《我们未能建立一个10亿美元的公司》](https://medium.com/@jimgreer/we-also-failed-to-build-a-billion-dollar-company-b7a2aab742cf) 4、 我的80多岁的阿姨说,她没有太大困难适应新事物,但是她无法适应旧东西的消失。 -- [《纽约人》](https://www.newyorker.com/magazine/2019/02/11/the-machine-stops)杂志 5、 目前,智能手机的平均尺寸是5.5英寸。苹果手机选择更大的屏幕,可能不是一个好主意。因为统计显示,女性拥有 iPhone 的可能性比男性高,而女性的手比男性小。 -- 英国[《卫报》](https://www.theguardian.com/lifeandstyle/2019/feb/23/truth-world-built-for-men-car-crashes) ## 欢迎订阅 这个专栏每周五发布,同步更新在我的[个人网站](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) (完)