这里记录每周值得分享的科技内容,周五发布。
本杂志开源(GitHub: ruanyf/weekly[1]),欢迎提交 issue,投稿或推荐你的项目。
周刊讨论区的帖子《谁在招人?》[2],提供大量就业信息,欢迎访问或发布工作/实习岗位。

封面图

5月28日,全球唯一一架最大的喷气式运输机 An-225 和全球唯一一架最大的涡桨运输机 An-22 在天津机场相遇。(出处[3]

本周话题:如果不能去美国上市

中国的优秀技术公司,在国内上市的并不多,大部分在美国上市。如果以后美国不允许中国企业上市,那对国内会有什么影响?
这是一个假设的问题,还没有真的发生。但是,看上去很有可能。这里不讨论经济影响和政治影响,只关注对国内行业环境的影响。
说实话,我觉得,这会对国内的 IT 行业和从业人员,产生巨大影响。
大家都知道,上市意味着“变现”,创业可以得到回报了。最希望公司上市的,其实不是创业者,而是风险投资家,因为他们原始投资的动机,就是尽快获利退出。
由于种种原因,国内的风险投资,目前首选的退出路径,除了被大公司收购,就是去美国上市。万一这条路断了,风险投资家将大受打击,上市只能选择国内或者香港,这两个股票市场不如美国自由,监管和限制比较多,风险投资家未必愿意或者没有能力做到上市。
我认为,不能去美国上市,对国内影响最大的领域就是风险投资。 主要的退出路径没了,国内的风险投资可能将会萎缩。随之而来的影响是:(1)创业融资将变得困难,创业热会冷却,创业者减少;(2)程序员的挖角和跳槽也会减少,明星工程师的身价将会下降;(3)国内上市的创业公司将会增多,风险投资推动的并购也会增多。

Vue 免费视频

本周的前端课程资料,是 开课吧 提供给周刊读者的 Vue 免费视频。
Vue 是目前国内主流的 JavaScript 前端框架,由于操作简单和上手快,在业务中得到广泛应用。估计未来几年,Vue 都会是国内中小型公司的主栈。越来越多的大厂也把 Vue 列入面试必考题,所以有必要对 Vue 源码仔细研读,搞懂原理。
不管你近期有没有求职的需求,都可以关注一下下面的两份免费 Vue 资料,相信看完能帮你在面试中应对关于 Vue 的提问,并解决工作中遇到的开发问题。
视频一:《Vue3响应式原理剖析》 ,内容包括:Vue3 响应式初体验、Vue2 & Vue3 响应式原理对比、Vue3 响应式实现、源码分析等。
视频二:《Vue 源码剖析之整体流程》,内容包括:Vue 源码调试环境搭建、入口文件剖析、Vue 初始化流程分析、Vue 源码学习整体流程总结、数据响应化流程分析等等。
微信长按下方二维码两次,添加成功即可免费领取,仅限 前239名 先到先得。

资讯

1、不分科教育[4]
芬兰宣布,从今年开始,小学将尝试不分科教育。学校不再开设物理、数学、文学、历史、地理等不同的课程,而是统一上课,引入基于现象的综合教学。
学生将以现实世界的现象作为起点,去学习涉及的各种知识,而不是传统的方式,先学习各学科的知识,再去认识不同的现象。新的方式把现象作为完整的实体进行研究,把跨越学科的知识和技能融合在一起。比如,一个学习主题是欧盟,内容将包括经济、语言、地理、历史等相关知识。
2、恐龙灭绝的最新解释[5]
6500万年前,恐龙为什么会灭绝?目前最流行的解释是,有一颗直径10 公里的陨石撞地球,将大量岩石抛到平流层,遮蔽阳光,引发长达数年的黑暗与寒冬。这么大的陨石撞击地球,一定会留下陨石坑,科学家认为,位于墨西哥湾的直径约180 公里的希克苏鲁伯陨石坑(Chicxulub crater),就是撞击的地点。
最近,伦敦帝国理工学院的 Gareth Collins 教授发表论文,提出这个陨石坑的撞击位置、撞击方向、撞击角度这三个要素的巧合,造就了恐龙灭绝的“完美风暴”。
首先,墨西哥湾下方有大量的硫化沉积物,陨石撞击同时造成硫化物与海水蒸发,两者在平流层混合,遮蔽阳光,产生长达数年的寒冬。其次,陨石以东北方向撞击地面,而这个方向的含硫岩层最厚。最后,陨石以60度角撞击地面,该角度会将最多的碎片抛到大气层。下图是按照时间顺序,陨石撞击造成的地幔结构改变和地表隆起。
3、苹果追踪被抢的 iPhone[6]
本周,美国多个城市发生骚乱,苹果公司不得不关闭零售店。即使如此,华盛顿特区、洛杉矶、旧金山、纽约和费城的苹果商店,还是都遭到了袭击或破坏。抢劫者偷走了店里所有可用的产品。
但是,苹果公司有自己的感应软件,当从商店非法取走苹果设备时,该设备会被禁用。有一个抢劫者在社交媒体上面,贴出了上面的照片,当他为抢来的苹果手机充电时,屏幕上显示一行字:“该设备已被禁用并正在跟踪,当地警察局将收到警报。请将该设备还回商店。”
4、崩溃安卓手机的壁纸[7]
有人发现,将上图用作某些安卓手机的壁纸,会导致系统立即崩溃重启,屏幕会不断地打开和关闭,无法再进入系统,不得不送修。目前确认受影响的手机,主要是三星和谷歌的 Pixel 手机,而且是最新的 Android 10 系统。
初步分析的原因是,加载壁纸后,手机会检查图像的“色彩空间”,这时有报错,但是没有任何捕获这个错误的代码,导致系统崩溃了。三星和谷歌都已经紧急发布了补丁。另一个相关的消息是,原定本周宣布的 Android 11 测试版,已经推迟。
5、机器学习生成的《吃豆人》[8]
今年是著名游戏《吃豆人》(PAC-MAN)诞生40周年,为了纪念这个日子,Nvidia 公司创建了一个人工智能系统,软件可以仅仅通过观看这个游戏,就自动编程重新实现它。这个软件自动实现的游戏可以被人类玩,Nvidia 表示不久将在线发布该游戏。
这样做的意义在于,软件通过观看就能了解游戏规则,很类似于人类的认知过程:程序员观看《吃豆人》的游戏视频,推断出游戏规则,然后重新构建它。这种能力可以用于将来的游戏设计,计算机通过观看现有的关卡,自动创建更多的关卡。
6、一句话消息
通用电气公司[9]出售了灯泡业务,从此不再生产灯泡。该公司是灯泡发明人爱迪生1892年创建的,起家业务就是灯泡。
《魔鬼经济学》的作者[10]、芝加哥大学经济学教授莱维特(Steven D Levitt)对2万人进行了调查,发现在做出决定后的六个月中,那些选择改变(而不是坚持现状)的人对他们的决定更加满意,并且通常会更快乐。
两位美国华裔学者[11]研究中国炒饭的物理过程,拍摄了五位厨师炒米饭。经过统计,炒一次米饭平均需要2分钟,翻炒276次,每次持续大约三分之一秒。
美国科学家[12]提出,有些人习惯早起,是出于生理原因。他们的生物钟周期是每天20小时,导致一天比别人早开始。
谷歌[13]表示,它的 API 照片进行 AI 识别时,将不再返回人像的性别,理由是“无法通过外貌来推断一个人的性别”。

文章

1、Web Animations API 简介[14](英文)
Chrome 84 增强了对 Web Animations API 的支持。这个 API 的主要作用是使用 JavaScript 控制 CSS 动画。
2、游戏摄影师,这种靠“截图”赚钱的新职业[15](中文)
随着游戏画质和细节的不断进步,里面史诗级的风景已经足以让玩家流连忘返。
在游戏圈里,还真有一个叫做游戏摄影师的职业,他们更像是游戏中的旅客,重点是拍摄游戏中的有趣画面而非玩游戏,而这种「拍摄」更准确来说是在游戏中截图。
3、如何看待 Deno 的模块加载方案?[16](英文)
Deno 通过 URL 加载 JS 模块,然后在本地缓存,并没有中央的模块仓库,很多人不习惯这个模型。Deno 团队的 Kitson Kelly 谈了自己的看法,以及推荐的 Deno 模块管理的最佳实践。
4、Gmail 的退订按钮如何工作?[17](英文)
Gmail 对于营销邮件和新闻列表,提供一个“退订”按钮(unsubscribe)。本文分析这个按钮是怎么实现的。
5、字节跳动的三道算法面试题目[18](中文)
作者去面试 AI lab 视觉岗的暑期实习,第一面就是三道算法题。其中第一题是这样的:“10个小球随机分到12个盒子里,求恰好10个盒子都为空的概率,要求用 Python 程序模拟十万次,暴力求出该概率。” 详细解法可以参考这篇英语文章[19]
6、如何构建二进制 Deb 软件包[20](英文)
Deb 格式是 Debian 和 Ubuntu 系统的软件包格式,本文是一篇非常简单易懂的教程,教你如何将二进制可执行文件,打包成一个 deb 软件包。
7、如何使用 JavaScript 访问摄像头[21](英文)
本文介绍使用 MediaStream API,在网页上捕获相机的视频流,或者捕获麦克风的音频流。
8、Bash 脚本测试框架 Bats[22](英文)
本文介绍怎么为 Bash 脚本写单元测试。

工具

1、Straight 2 spam[23]
一个很奇特的服务。有时候,我们不得不发电子邮件,但是又不希望对方看到。这个服务提供一段文本,只要你把它拷贝到邮件,你的邮件就会进入对方的垃圾邮件分类。
2、AsmBB[24]
一个汇编语言写的 Web 论坛程序,使用 SQLite 作为数据库后端。它号称是世界最快的论坛程序,可以用在硬件配置很差的服务器,本身就是一个单独的二进制程序。
3、Micro[25]
一个命令行的文本编辑器,有窗格和便签,系统资源占用少,支持 Linux 和 Windows 系统。
4、Excalidraw[26]
流程图工具 Excalidraw 可以做出上图这样的图示效果,可惜中文没有手写效果。如果一定要加,需要自己克隆代码,再安装中文字体。
5、AudioMass[27]
一个在线的音频处理工具,可以对声音的波形进行各种加工,添加特效。
6、trilium[28]
一个 Markdown 格式的笔记软件,使用目录层级整理笔记。可以下载安装桌面版,也可以自己架设在线版。
7、LightProxy[29]
一个本地的代理服务器,用于本地数据包捕获,可以实时 hosts 绑定、设置规则转发、mock 接口、修改请求和响应的内容等。(@xcodebuild[30] 投稿)
8、Wifi 登录二维码[31]
一个生成 Wifi 登录二维码的在线工具,手机扫码就可以登录 Wifi。
9、Unscreen[32]
一个在线工具,可以免费删除视频背景。
10、Thumbor[33]
免费的开源图像 CDN,可轻松压缩,调整大小和转换图像。

资源

1、大 O 表示法与算法复杂性[34]
一个在线的互动教程,通过可以运行的代码示例,解释 O(n) 表示法与算法复杂性之间的关系。
2、分析工具[35]
该网站收集各种思考工具(比如决策树和冰山模型),这些工具可以帮助你解决问题、制定决策和理解系统。
3、设计模式[36]
该网站为中文教程,使用通俗的语言,介绍各种设计模式,图文并茂。此外,还有代码重构方面的英语内容。(@jsonleex[37] 投稿)
4、Fuun.fun[38]
该网站收集了一些有趣的网页小程序,主要是 HTML5 小游戏。(@Bakumon[39] 投稿)
5、计算机系统的设计原则[40]
这个网页收集了100多条计算机系统的设计原则,分成12个大类,下面是其中三条。
尽可能将错误从运行时转移到编译时。头文件的内容,至少要用于两个源文件。复杂性成倍增长,百万行的代码库会包含许多状态,它的复杂性是人类无法掌控的。

本周故事:默奇森陨石

原文网址:澳大利亚 abc 广播网[41]
1、
默奇森小镇(Murchison)位于澳大利亚北部,距离墨尔本大约两个小时的车程。
这个故事发生在1969年9月28日,那是一个星期日的早晨,许多小镇居民正在准备去教堂做礼拜。
上午10点58分,所有人都听到了一阵奇怪的声音。他们停下手头的事情,仰望天空。看上去似乎一切正常,于是过了一会,大家就忘了这件事。
他们不知道,那是一颗46亿年前的陨石坠落到了这里。
2、
小镇居民玛丽安·贝格回忆说:“当时,我和丈夫正准备去教堂,11岁的儿子和7岁的女儿在外面的阳台上。”
“我突然听到了一阵轰隆隆的声音,就对儿子喊:不要在阳台上跳。儿子回答说:不是的,妈妈,声音是从天上来的。”
“我们冲到了外面,看到了一团蓝色的烟雾,就在天空中,还有刺鼻的烈酒的味道。”
但是,烟雾很快就散了。于是一家人继续前往教堂,当天很多人都迟到了。
3、
那天晚上,阿诺德·布里斯班去农场挤牛奶。
他发现,农场院子里有一些像黑色木炭的物质,但又不是木炭,不知道是什么。当天早上还没有这些东西,又没有其他人来过。他想到早上的巨响,判断它们可能是从天而降的。
他挖出了大部分的“木炭”,然后将这些物质倒入农场的粪坑中。
4、
第二天早上,小镇居民又开始议论昨天的巨响,以及那时天空中的亮光和烟雾。阿诺德·布里斯班想起来了,农场的那些类似木炭的奇怪物质,就取了一点剩下的样本,交给当地报纸的记者。
记者报道了这件事。
5、
墨尔本大学地质学教授约翰·洛夫林(John Lovering)从报纸上看到了这件事,猜测应该是一块陨石。但是,他没有空,因为三个月前阿波罗11号采集了月球岩石,送回了地球。他碰巧得到了其中一块,正忙于分析那块石头。
他就派了一群学生去看看,到底发生了什么事。
6、
安德鲁·格莱多(Andrew Gleadow)当时是地质专业的三年级学生。他被分配到农场,任务是从粪坑里面找回陨石。
今天,他也成了一名教授,回忆说:“我穿着靴子,将袖子卷起来,筛着积肥,找出其中像砾石一样的坚硬小块。”
他拿起一块陨石碎片,发现小硬块里面有一粒粒看起来像煤灰的物质,顿时惊叫起来:“天哪,这是碳质球粒陨石!”
7、
大多数陨石是石质(硅酸盐)或铁质(铁镍合金),碳质陨石是很少的。因为进入地球大气层的时候,大部分碳都会燃烧掉。
碳质球粒陨石是所有陨石中最稀有的、最原始的品种。默奇森陨石由于落下后被迅速发现,里面包含的有机物没有受到污染,这就更宝贵了。
洛夫林教授拿到样本以后,立刻就明白了,这些陨石比阿波罗飞船带回来的月球岩石更重要。
8、
碳质陨石因为包含碳,进入大气层时会破裂,裂成碎片,所以它与大多数陨石不同,不是一整块落下,而是散布在一块11公里长、3公里宽的区域。
默奇森陨石现在成了新闻报道的热点,世界各地的科学家和陨石采集者都来到小镇,寻找陨石碎片。
小镇居民发现这是一门不错的生意,也加入其中。每天早上太阳出来以后,母亲就把10岁和11岁的吉利克兄弟赶出去,让他们去找陨石碎片,找到以后,再把碎片卖掉。
9、
兄弟俩很熟悉小镇的地形,他们根据各种信息,在地图上画出了陨石落下的大致位置和方向。他们很快意识到,小碎片离中心点比较近,大碎片会散落比较远。
他们断断续续找了一年,找到了很多碎片,以致于在当地出了名。后来,科学家来到默奇森,就会雇佣他们一起去搜索陨石。
10、
默奇森陨石后来一共找回了100公斤,大约三分之一是吉利克兄弟找到的。
他们的母亲将很多找回的陨石碎片,捐赠给了墨尔本大学和悉尼博物馆,但出售了不少。价格没有透露,传说每克达到了3000美元。
11、
默奇森陨石已经过去了半个世纪,直到今天,它仍然具有巨大的科学意义。它的标本保存在全世界许多大学和博物馆里。
对于很多地球科学家来说,默奇森陨石是迄今为止地球上最重要的陨石,能够提供有关太阳系起源的线索。
12、
默奇森陨石有46亿年的历史,比太阳系还要古老,里面包含了各种来自46亿年前的有机化合物,例如氨基酸、水、糖和酒精等。这使得科学家可以了解太阳系形成之前的情况,以及生命的起源。
13、
科学家猜测,默奇森陨石来自一颗富含碳的小行星,可能撞到了火星外部的小行星带,然后飞向地球,经过一百万年才到达地球。
科学家说,“乍一看,它好像平淡无奇。但是,它实际上是银河系的标本,非常有价值。”
14、
今天的默奇森小镇与50年前没有很大的变化,但是阿诺德·布里斯班已经过世了。他的女儿站在当年的农场里面,有时候想到,如果她父亲当时不把陨石样本交给记者,或者索性忽略了那些奇怪的碎片,还会有人知道这块陨石吗?

言论

1、
如今,大多数网站都是由专业人士和市场营销人员作为商业产品构建的,经过优化可以吸引最大的受众,产生参与度和转化率。
但是,世界上还有一小撮鲜为人知的网页,由普通人设计,目的是与世界分享他们的兴趣和爱好。没有过分的修饰,通常也很古怪,但也往往很有趣和富有创意。
-- 《重新发现小型网站》[42]
2、
弯曲的道路强迫你看房子,而不是看路。
-- David Perell
3、
团队每次使用框架时,都会冒风险。风险在于,框架可能在你的软件之前“消失”,从而给开发人员带来沉重的负担。
--《无框架运动宣言》[43]
4、
Tencent 这个名字模仿朗讯(Lucent),而且左右对称。
-- 腾讯官方[44]解释,为什么该公司的英文名是“十美分”(Tencent)
5、
如果一个人秒回了你,只能说明他正在玩手机。
-- Twitter 网友[45]
6、
美国宪法第一修正案保障言论自由,但是只适用于政府机关(不得限制言论),不适用于私人公司。
私人公司可以审查其平台上的内容。所以,即使在美国,媒体平台删除你的言论也是合法的。
-- 《美国法院判决,Youtube 审查用户上传的内容合法》[46]

回顾

2019年的本周(第 59 期):未来交不到朋友
2018年的本周(第 7 期):垃圾星球

References

[1]
 ruanyf/weekly: 
https://github.com/ruanyf/weekly
[2]
 《谁在招人?》: 
https://github.com/ruanyf/weekly/issues/1206
[3]
 出处: 
https://www.weibo.com/2579788730/J46Hz3M1L
[4]
 不分科教育: 
https://curiousmindmagazine.com/goodbye-subjects-finland-taking-revolution-education-step/
[5]
 恐龙灭绝的最新解释: 
https://buzzorange.com/techorange/2020/05/28/asteroid-makes-dinosaurs-extinct/
[6]
 苹果追踪被抢的 iPhone: 
https://www.forbes.com/sites/zakdoffman/2020/06/01/apple-warns-looters-with-stolen-iphones-you-are-being-tracked/
[7]
 崩溃安卓手机的壁纸: 
https://www.bbc.com/news/technology-52891650
[8]
 机器学习生成的《吃豆人》: 
https://www.theverge.com/2020/5/22/21266251/nvidia-ai-gamegan-recreate-pac-man-virutal-environment
[9]
 通用电气公司: 
https://arstechnica.com/information-technology/2020/05/ge-switches-off-light-bulb-business-after-almost-130-years/
[10]
 《魔鬼经济学》的作者: 
https://www.sivv.io/article/5ecededf46cc9f76d4639b24/In-marginal-decisions,-favour-action-over-inaction
[11]
 两位美国华裔学者: 
https://arstechnica.com/science/2020/02/georgia-tech-physicists-unlock-the-secret-to-perfect-wok-tossed-fried-rice/
[12]
 美国科学家: 
https://directorsblog.nih.gov/2020/02/25/early-riser-or-night-owl-new-study-may-help-to-explain-the-difference/
[13]
 谷歌: 
https://www.businessinsider.com/google-cloud-vision-api-wont-tag-images-by-gender-2020-2
[14]
 Web Animations API 简介: 
https://web.dev/web-animations/
[15]
 游戏摄影师,这种靠“截图”赚钱的新职业: 
https://www.ifanr.com/1134181
[16]
 如何看待 Deno 的模块加载方案?: 
https://kitsonkelly.com/posts/deno-is-a-browser-for-code/
[17]
 Gmail 的退订按钮如何工作?: 
https://blog.leavemealone.app/how-does-the-gmail-unsubscribe-button-work/
[18]
 字节跳动的三道算法面试题目: 
https://www.nowcoder.com/discuss/395924
[19]
 这篇英语文章: 
https://medium.com/@data.scientist/solving-the-interesting-bytedance-interview-question-bb30b31cdf5
[20]
 如何构建二进制 Deb 软件包: 
https://www.internalpointers.com/post/build-binary-deb-package-practical-guide
[21]
 如何使用 JavaScript 访问摄像头: 
https://www.webdevdrops.com/en/how-to-access-device-cameras-with-javascript/
[22]
 Bash 脚本测试框架 Bats: 
https://www.dolthub.com/blog/2020-03-23-testing-dolt-bats/
[23]
 Straight 2 spam: 
https://straight2spam.com/
[24]
 AsmBB: 
https://board.asm32.info/asmbb-v2-9-has-been-released.328/
[25]
 Micro: 
https://github.com/zyedidia/micro
[26]
 Excalidraw: 
https://excalidraw.com/
[27]
 AudioMass: 
https://audiomass.co/
[28]
 trilium: 
https://github.com/zadam/trilium
[29]
 LightProxy: 
https://github.com/alibaba/lightproxy
[30]
 @xcodebuild: 
https://github.com/ruanyf/weekly/issues/1273
[31]
 Wifi 登录二维码: 
https://wifi.dev.bdw.to/
[32]
 Unscreen: 
https://www.unscreen.com/
[33]
 Thumbor: 
https://web.dev/use-thumbor/
[34]
 大 O 表示法与算法复杂性: 
https://algodaily.com/lessons/understanding-big-o-and-algorithmic-complexity
[35]
 分析工具: 
https://untools.co/
[36]
 设计模式: 
https://refactoringguru.cn/design-patterns
[37]
 @jsonleex: 
https://github.com/ruanyf/weekly/issues/1266
[38]
 Fuun.fun: 
https://fuun.fun/
[39]
 @Bakumon: 
https://github.com/ruanyf/weekly/issues/1268
[40]
 计算机系统的设计原则: 
https://embeddedartistry.com/blog/2018/04/26/embedded-rules-of-thumb/
[41]
 澳大利亚 abc 广播网: 
https://www.abc.net.au/news/science/2019-10-02/murchison-meteorite-50th-anniversary-1969-science-geology/11528644
[42]
 《重新发现小型网站》: 
https://neustadt.fr/essays/the-small-web/
[43]
 《无框架运动宣言》: 
http://frameworklessmovement.org/
[44]
 腾讯官方: 
https://www.zhihu.com/question/55269732/answer/145118163
[45]
 Twitter 网友: 
https://twitter.com/alex853300157/status/1238409401125371906
[46]
 《美国法院判决,Youtube 审查用户上传的内容合法》: 
https://www.swissinfo.ch/chi/afp/%E7%A7%81%E4%BA%BA%E7%BD%91%E8%B7%AF%E4%B8%8D%E5%8F%97%E8%A8%80%E8%AE%BA%E8%87%AA%E7%94%B1%E9%99%90%E5%88%B6-%E6%B3%95%E5%AE%98%E8%A3%81%E8%83%BD%E5%AE%A1%E6%9F%A5%E5%86%85%E5%AE%B9/45582646
继续阅读
阅读原文