每周分享第 30 期

作者: 阮一峰

日期: 2018年11月 9日

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

欢迎投稿,请前往 GitHub 的 ruanyf/weekly 提交 issue。

上个月谷歌宣布,社交应用 G+ 将在10个月后关闭。

主要原因有两个。一是缺乏用户,90%的用户会话短于5秒;二是有安全漏洞,近50万用户资料存在泄露风险,虽然没有证据表明黑客发现了这个漏洞。

谷歌是世界最大的互联网公司,资金和技术都不是问题,所有底层产品几乎都是业内最强:人工智能、搜索、邮件、地图、照片、云盘、在线办公......按理说,G+ 没有理由失败,谷歌只要把底层产品组合一下,就没人打得过。可是,G+ 就是做不起来。谷歌做过四个社交产品,全部失败了,这是为什么?

几年前,一度有传言,Gmail 要并入 G+,提升后者的访问量,结果也没有实施。这多少反映了 G+ 不是谷歌的核心业务,公司并没有不惜一切代价投入。谷歌这家公司的兴趣,从来不在应用软件,而是在基础服务、底层算法、操作系统上面。我猜想,谷歌内部多多少少把 G+ 看作玩具,"发动态,加好友,这种玩意有多少难度?",工程师和科学家更愿意去研究高难度的产品。这才是 G+ 失败的根本原因,谷歌从高管到基层,对社交产品都缺乏足够兴趣。不信你去看,谷歌没有一个高管,喜欢玩社交媒体。甚至谷歌工程师里面,很少有特别喜欢写博客的,Steve Yegge 算一个,但是他觉得谷歌不合适自己,辞职了。

这件事情告诉我们,公司跟人一样,也有自己的兴趣爱好。倘若硬要去做那些没兴趣的事情,不仅内心煎熬,而且投入大量时间和金钱之后,最终还是难逃认赔离场的结局。

新闻

1、太阳热能发电

目前,太阳能发电主要是指光伏发电,将太阳光直接转化为电流。它的问题是,太阳光有间歇性,导致电能储存成了巨大问题。

但是,太阳能发电还有另一种方式,我们知道,聚焦太阳光会产生巨大的热量。这意味着,我们可以建立工厂,将太阳能转化为热能,然后通过热能发电。相比储存电能,热能的储存容易得多,这样就可以实现全天候发电。这在技术上已经可行,但是现阶段,太阳能的热能发电还是比光伏发电贵得多。上图为位于以色列内盖夫沙漠的110兆瓦太阳能发电厂。

2、感知观众的播放器

视频播放器 Bitmovin 加入了观众感知功能。播放视频的时候,它会打开摄像头,观察正在看视频的观众。如果发现观众距离比较远,就降低了一些比特率(画面质量),反之则提高比特率;如果发现观众起身走开了,自动暂定播放,等到发现观众回来,再恢复播放。

3、车对车通信取代红绿灯

交通控制都通过红绿灯。但是,如果车辆之间可以互相通信,我们是否还需要红绿灯?

卡内基梅隆大学开发的一种算法,允许汽车使用车载通信功能进行协商,彼此约定谁先通过路口、谁后通过,而无需使用任何红绿灯。通过模拟计算,这种算法比起红绿灯,可以将通勤时间减少三分之一。长远来看,它如果与自动驾驶汽车相结合,就可以精确控制整个行程的时间。

4、SSPL 许可证

很多软件采用 GPL 许可证。这种许可证规定,如果你修改了代码再进行"分发",就必须开放源码。但是,如果某家公司使用 GPL 软件提供线上服务,不分发软件本身,就可以不提供修改后的源码。很多人认为,这是 GPL 许可证的一个漏洞。

现在,MongoDB 宣布,许可证从 GPL 改为 SSPL,明确要求使用 Mongo 提供线上服务的公司,也必须开放源码。举例来说,如果亚马逊公司在 AWS 里面有一个 MongoDB 服务,那么现在它就必须开源它的 MongoDB 源码修改。

5、泥浆打印的房屋

一家意大利3D打印公司,发明用泥浆和稻草打印小屋。每间的成本只要1000欧元。上图中,外墙的水平纹路就是一圈圈打印出来的。点击标题链接,就可以观看小屋打印过程的视频。

6、饮料瓶回收机

伊斯坦布尔在地铁站新增了饮料瓶回收机,乘客提交饮料瓶,可以折算成地铁票积分。一个1.5升塑料瓶可以换6美分,一个易拉罐9美分,而单程地铁票是40美分。

7、地球生物的分布

美国科学家估算了,全世界生物体内的碳元素一共是550千兆吨(Gt C),其中植物占了450GTC,细菌70GTC,真菌12GtC,原核生物7GtC,单细胞生物4GtC,所有动物只有2GtC。

动物之中,一半是节肢动物(昆虫)占1GtC,鱼类0.7Gtc,人类0.06GtC,牲畜(以牛和猪为主)0.1GtC,野生哺乳动物0.007GtC。

8、最古老的沉船

考古学家在黑海底部发现一艘世界最古老的沉船,据称这艘船有2700年的历史,可以追溯到古希腊。这艘船长23米,桅杆、方向舵和划艇长凳都存在,沉没在水下一英里的地方。考古学家说,那个深度缺氧,所以把它保留了下来。

以前人们只在大英博物馆收藏的古希腊陶器上,见过那个时代的船只。

9、欧洲禁止一次性塑料

欧洲议会支持禁止使用一次性塑料,以解决海洋,田野和水道的污染问题。根据拟通过的法令,塑料吸管、棉签、一次性塑料板、餐具等物品,都将在2021年禁止。

现在,大量的塑料废物冲入海洋,在那里可能需要几个世纪才能完全降解。那些轻质的一次性塑料物品是最大的麻烦,它们可以轻松地在海洋里长途漂流,破坏海洋动植物。

10、一句话新闻

  • Youtube 是世界第二大搜索引擎,它的每月搜索次数比 Bing + Yahoo 加起来都多。

  • 一家美国制药公司开发出艾滋病口服预防片,可以预防艾滋病。

教程

1、压缩算法的解释(英文)

压缩是最常用的功能之一,压缩算法一般分成两大类:基于熵的压缩和基于字典的压缩。本文简单解释这两类算法的原理,以及将它们合在一起的 deflate 算法。

2、Manjaro 发行版介绍(英文)

Manjaro 是一个新的 Linux 发行版,内核采用 Arch Linux,UI 采用 Deepin,集灵活性和易用的 UI 于一体。

3、密码学简明教程(英文)

本文回顾了加密发展的几个阶段,每个阶段都给出了 Python 的小例子。

4、停止无限滚动(英文)

本文提出网页的无限滚动并不是一个好的设计,应该限制使用或者停止使用。

5、WebAssembly 的未来(英文)

WebAssembly 目前只是 MVP(最小可行产品)阶段,本文介绍了这种编译语言未来可能具有的功能。

6、YAML 格式的问题(英文)

YAML 格式虽然比 JSON 格式易读易写,但也有很多问题。这种格式其实很复杂,并不是配置文件的理想格式。

7、Pokemon Go 为什么成功?(英文)

Pokemon GO 是一个在地图上捕捉口袋妖怪的游戏,初看起来相当无聊,不需要任何游戏技能。但是该游戏取得了惊人的成功,这是为什么?

8、2018 最佳 Linux 桌面发行版(英文)

本文对三个层次的(初级、中级、高级)用户,介绍最合适的 Linux 发行版,用于桌面系统。对新手有一定的参考价值。

9、Web Performance 101(英文)

网页性能的基础知识,针对初学者,内容比较全。

资源

1、IPv6 采用率

谷歌有一个公开网页,展示使用 IPv6 访问谷歌的比例。最近,这个比率来到历史最高的25%。

2、进入纯数学

一本英文的纯数学教材,免费下载,从简单的自然数讲起,包括代数、数论、集合运算、概率和微积分等章节。我觉得,至少对于了解数学的符号体系很有好处。

3、33 个 JS 程序员需要知道的概念

按照主题,收集 JS 学习资源的仓库。

4、纸飞机

收集纸飞机折纸方法的网站,目前有40种纸飞机。

5、微积分很容易(Calculus made easy)

有名的微积分教材,版权已经过期。虽然年代比较久了,但是内容很经典。

6、科幻界面

该网站收集科幻影视作品里面出现的计算机界面设计。

7、ScriptOJ

国人开发的前端题库,可以用作评测系统,带有讨论区。(@LeeChar 投稿)

工具

1、WebPerl

通过把 Perl 5 解释器编译成 WebAssembly,从而在网页上运行 Perl 代码。

2、Thonny

一个针对初学者的 Python IDE(集成编程环境),界面清爽简单,可用于儿童的编程教育。

3、svg-inject

这个 JS 库可以将网页上的外联 SVG 图像,变为内嵌的 SVG 图像,从而使得全局的 CSS 样式文件可以对这个图像生效。

4、arwes

一个质量不错的科幻风格 React UI 组件库。(@Anderson-Liu 投稿)

5、CommentBox.io

一个类似 Disqus 的网站评论服务。

6、gRPC-Web

gRPC-Web 是一个JavaScript客户端库,使 Web 应用程序能够直接与后端gRPC服务通信,不需要 HTTP 服务器充当中介。这意味着可以构建真正的端到端 gRPC 应用程序体系结构。

7、irondb

irondb 是一个浏览器 key-value 储存的封装库,把 Cookies、IndexedDB、LocalStorage、SessionStorage 统一成一个接口。它的最大特色就是数据冗余机制,即使某种底层储存机制失效,它可以从其他机制恢复数据。

8、Screen to GIF

一个可以录制 GIF 图片的开源工具,同时还具备编辑帧、调用摄像头录制、录制画板等功能。(@winshu 投稿)

9、Sketch 2 Code

微软的在线工具,将手绘草图转成 HTML 代码。(@xiaohesong 投稿)

10、Process On

免费在线作图,可以实时协作。ProcessOn 支持流程图、思维导图、原型图、UML、网络拓扑图、组织结构图等。(@wuzhenda_ _投稿)

文摘

1、金星移民

美国国家航天局 NASA 正在讨论金星移民的可能。

上图左侧是金星,右侧是地球。

金星地面的照片。

初听起来,金星根本不是一个可能的目标,它的表面温度有460度,高于许多金属的熔点。下雪的时候,金星落下的实际上是金属滴。金星的大气压高达93个大气压,人类根本无法承受。金星大气由97%的二氧化碳,3%的氮气和微量的其他气体组成,还有大量硫酸形成的致密云层,因此它的空气具有腐蚀性。

NASA 讨论的并不是地面移民,而是派出一艘飞艇,飞行在金星地面上方50公里~60公里的高空中,人类就生活在飞艇里面。那个区域的大气压相当于地球海平面大气压的一半,跟乞力马扎罗山顶差不多,温度介于20°C和30°C之间。人类在那里甚至不需要宇航服与外界隔离,只需要携带氧气装置,因为那里的空气绝大部分是二氧化碳。

高于此高度的大气层也足够密集,可以保护人员免受来自太空的电离辐射。太阳辐射提供了比地球更大的能量,可用于发电(是地球太阳能发电效率的大约1.4倍)。

飞艇漂浮在空中,使用正常的地球空气填充就可获得浮力,因为氧气和氮气的比重低于二氧化碳,所以飞艇可以飞起来。目前的技术完全可以实现这个方案。

2、代码所有权

Martin Fowler 提出,大多数软件项目存在三类代码所有权。

(1)强代码所有权。

每个模块指定一个负责人。开发者只能更改自己拥有的模块,如果需要更改其他人的模块,就必须与模块所有者联系,让后者更改。你可以为其他模块写补丁,将其发送给模块所有者来加速此过程。

(2)弱代码所有权。

每个模块指定一个负责人,但是开发者可以更改其他人的模块。模块所有者应对其拥有的模块负责,密切关注其他人所做的更改。礼貌的做法是,更改其他人的模块之前,首先与模块所有者进行讨论。

(3)集体代码所有权。

模块不指定负责人,代码库由整个团队拥有,任何人都可以在任何地方进行更改。这种做法可以视为代码没有个人所有权,只有团队所有权。

现在大多数公司都要求所有人都可以修改源代码,也就是集体代码所有权的模式。这样的政策,很可能导致软件质量和员工敬业度的下降。如果你的目标是工程师既高效又以工作为荣的企业文化,那么强代码所有权模式是最佳选择。

3、没有中产阶级的加利福尼亚

加州的国内生产总值超过2.7万亿美元,约占美国的13.9%。它的经济规模超过英国,是世界第五大经济体。该州极其富有,但令人难以置信的是,加州也是美国最贫穷的州之一。

贫困线以下的美国人口平均是13%,但是加利福尼亚州为19%,远高于阿拉巴马州的14%。加州穷人多的部分原因是房价快速上涨,这对富人有利,而对中产阶级来说,生活成本过高,于是成群结队地离开。随着中产阶级的离开,加利福尼亚的社会主要由富豪和穷人组成。

加州租房者每月平均支付1,447美元,而全国平均水平为1,012美元。29%的人将超过一半的收入用于住房。房屋中位数价值为529,000美元,是全国中位数239,800美元的两倍多。

加州的流浪者多得惊人。2016年到2017年,该州无家可归者人数增加了近14%,超过130,000人。2016 年,132名流浪者死在街头。旧金山有几百亿美元的富豪,但也遍地是流浪汉的粪便。

本周图片

1、前苏联的纪念碑

前苏联建造了大量令人叹为观止的雄伟纪念碑,大部分都是为了纪念战胜纳粹。

四只巨手拿着四把枪,Novorossiysk,1978。

苏联-波兰友谊纪念碑,1983。

烈士纪念碑,摩尔多瓦,1972。

北极士兵纪念碑,摩尔曼斯克,1974。

空间征服者纪念碑,莫斯科,1972。

2、事故展览馆

日本铁路公司 JR 有一个事故展览馆,专门展示该公司发生的事故。"我们希望我们的员工永远不会忘记过去的事故。"不过,该展览馆只允许员工参观,不对公众开放。

新奇

1、人工智能音乐

一家创业公司正在开发 AI 音乐引擎。该引擎学习了无数旋律以后,已经能够自己生成音乐,主要用来为电影和游戏生成音轨。

大家可以去该公司的网站,收听机器生成的音乐,那些音乐非常动听。

本周金句

1、

由于重力只有地球的六分之一,月球很合适人类养老。在本世纪末之前,我们将在月球上为老年人设立医院,使他们能够长寿。他们的心脏在六分之一的重力下,可以跳得更轻快;他们脆弱的骨头,也将承担轻得多的负荷。

-- 科幻小说家海因莱因在1969年7月20日(阿波罗11号登月日)接受采访,谈登月对人类的影响

2、

JavaScript 的优点是可以写任何东西,缺点是你真的会用它去写这些东西。

-- Reg Braithwaite

3、

据估计,2009年全球有500万 PHP 开发人员。

-- terrychay

4、

房价不断上涨的前提是不断有新人加入,他们愿意并且能够支付越来越高的房价。房价上涨的本质是,年轻人愿意把自己的财富转移给老年人,当这些年轻人变老时,再有新的年轻人愿意给他们更多的钱。

-- 《住房不是一项好的投资》

欢迎订阅

这个专栏每周五发布,同步更新在我的个人网站微信公众号语雀

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

(完)

留言(45条)

ipv6那个是因为xx-net吗

前排。开阔视野的好地方

阮大,为什么说 JavaScript可以写任何东西

新奇

是啊, 有点像学生时代看杂志的感觉, 很喜欢, 每周必看.

请问是如何翻墙访问网站呢?(付费的也可以)

最后一个金句扎心了

pythonIDE已经在前几期看过了啊

学习了,开阔视野的地方

房价那个说的太好了

前排吃瓜

如果能给每周分享有一个单独的搜索功能就好了。比如说现在我想起来我在前几期看到过一个介绍 使用JS 实现各种算法的git仓库,想快速找到那个介绍,我只能使用 百度或谷歌 搜索,试了好几个关键词却发现根本搜索不到,这让我很苦闷

看了无限滚动,说得很好,的确要用户去控制,问题是现在大多数人都再使用移动端,无限滚动在移动端会比数字分页好用很多,不过用户很难控制或者回去之前哪个页面看哪条信息,也不可能都收藏吧

大佬您好,manjaro Linux官方版本只有xfce、GNOME、kde和一个基础版本,并没有deepin版,那个deepin版本是社区的

引用wang的发言:

如果能给每周分享有一个单独的搜索功能就好了。比如说现在我想起来我在前几期看到过一个介绍 使用JS 实现各种算法的git仓库,想快速找到那个介绍,我只能使用 百度或谷歌 搜索,试了好几个关键词却发现根本搜索不到,这让我很苦闷

site:www.ruanyifeng.com/blog intitle:"每周分享" "javascript"+"算法"

你的需求,Google 就可以办到 ^_^

阮老师,一句话新闻中的美国一家公司研制出来艾滋病预防药的链接貌似不对

没有人认为中国理工本科的第一堂数学课(在开始高等数学之前)应该是数学史吗?类似《什么是数学》这样的教材,毕竟大多数经过应试教育的,除了少数有天赋的或名师指点的,根本体会不到数学在整体上的体系构成、思维方式。稀里糊涂得学完微积分、线性代数,上来都是一推公式加一堆题,等到学控制理论用到复式变换时又一脸懵逼。现在想想,初等数学那点儿东西,高考没拿满分,自己智商是不是有问题啊,可现在连小学题都做不出来了,严重怀疑人生。偏偏有那么一群人,把简单问题复杂化,站在莫须有的金字塔上往下仍石头。

commentbox有人用了吗?没搞懂怎么用。。。


import commentBox from 'commentbox.io';
// or
const commentBox = require('commentbox.io');
// or if using the CDN, it will be available as a global "commentBox" variable.

commentBox('my-project-id');

Process On 不错,我用了快1年了。

对未来的思考

文中提到的那个linux发行版看着挺惊艳的,准备试试

引用Samsara9527的发言:

site:www.ruanyifeng.com/blog intitle:"每周分享" "javascript"+"算法"

你的需求,Google 就可以办到 ^_^

谢谢, 原来这样用 google 搜索

感谢分享

引用大白的发言:

请问是如何翻墙访问网站呢?(付费的也可以)

vyprvpn了解下

相比储存电能,热能的储存容易得多
热能更难储存吧。

引用wang的发言:

如果能给每周分享有一个单独的搜索功能就好了。比如说现在我想起来我在前几期看到过一个介绍 使用JS 实现各种算法的git仓库,想快速找到那个介绍,我只能使用 百度或谷歌 搜索,试了好几个关键词却发现根本搜索不到,这让我很苦闷

git clone https://github.com/ruanyf/weekly
克隆到本地,vscode打开搜就行了,如果有感兴趣的,需要后续追看的,copy markdown源代码到自己的md笔记里

感谢分享

Manjaro 的桌面默认为Xfce、GNOME 和 KDE,而不是 Deepin。

纸飞机那个是38个,不是40个

每周都有不同学习

Javascript还OK~
请问您的网站用的是什么字体??特别好看!

那个纸飞机的网站竟然没有我小时候最常用的一种折叠方式。

“JavaScript 的优点是可以写任何东西,缺点是你真的会用它去写这些东西。”

这个比“PHP是最好的语言” 还秀 ????

写得不错

“JavaScript 的优点是可以写任何东西,缺点是你真的会用它去写这些东西。”

总结得到位

人工智能音乐也太好听了吧?

今天我辞职了

访问ScriptOJ这个前端题库了,感觉好像很久没人维护了的样子。

参考答案中的分享链接域名是有问题的。

参考答案分享链接的域名是 scriptoj.com ,但实际上访问不了,需要把域名变为 scriptoj.mangojuice.top

好奇,船只上绑的naked man是祭天的吗?

新的周五准备到了。

周五了?新的没有发

引用Leon Zou的发言:

Javascript还OK~
请问您的网站用的是什么字体??特别好看!

font-family: Georgia, serif;

请问可以转载吗

Sketch 2 Code 这个找了找,打不开了,可能是下线了。

人类移民到火星大气层中很有意思,依照现在的技术能源食物都能解决,是个很好的想法,不过现在好像没有这方面的进展。

我要发表看法

«-必填

«-必填,不公开

«-我信任你,不会填写广告链接