这里记录每周值得分享的科技内容,周五发布。
本杂志开源(GitHub: ruanyf/weekly[1]),欢迎提交 issue,投稿或推荐你的项目。
周刊讨论区的帖子《谁在招人?》[2],提供大量就业信息,欢迎访问或发布工作/实习岗位。
封面
3月26日,位于武汉的东风日产汽车厂复工,员工午餐保持距离。(法新社)
本周观点:工作热情从何而来?
BBC 报道[3],一位新加坡心理学家发明了《工作热情测量表》,可以测量一个人对自己的工作有多大的热情。
工作热情很重要, 如果没有热情,干什么都不会出色。特朗普就说过:“没有热情,你就没有能量。没有能量,你什么都没有。”
工作热情有很多来源:经济收入、职业前景、社会荣誉……据说,《工作热情测量表》可以测量这些诱因,对你的刺激有多大。
我有一个简单的方法,根本不需要什么心理测试,就能知道你最有工作热情的事情是什么。
你只需要问自己一个问题:即使没有报酬,你也会去干的工作是什么?如果一种工作根本得不到报酬,你也愿意去做,这就是你最喜欢、最有热情的事情,千万要珍惜。
JK.罗琳写《哈利波特》第一卷时,根本不知道能否出版,她就是有写的冲动,每天去咖啡馆的角落写到天黑。理查德·斯托曼是 GCC 和 Emacs 的作者,写完以后就把代码开源了,所有人都可以免费用,尽管那时他还没地方住,只能睡在办公室里面。
他们的工作热情之高,已经不需要金钱激励了。我就是想去做,管它有没有报酬。 我们要的就是这样一种工作状态,热情不是来自外部的激励,而是来自内在的自我实现的需要,这比外部激励强大得多。很多最优秀的作品,都是这样产生的。
如果你有这样的工作,得不到一分钱,依然有强烈的冲动去做。那么恭喜你,已经找到了自己最有工作热情的事情。你根本不需要《工作热情测量表》,那张表测量出来的热情值,跟我们内心的追求比起来,都不值一提。在自己热情最高的领域,你做出优秀成果的可能性,将远大于那些需要测量表的领域。
每个人心中都有一个火种,不要听任它熄灭,要找到它,点燃它。
Webpack 免费视频
本周的课程资料是来自“开课吧”的《深入理解 Webpack》。
Webpack 这个软件库,几乎所有现在的大型前端项目都会用到,React 和 Vue 都需要它来打包模块。而且不止是前端项目,还有小程序、React Native、Electron 也用到它。
我想大部分人都已经用过 Webpack,或者你的脚手架工具内置了。但是,很少有人愿意搞懂它,只是按照文档操作,毕竟它的配置比较多,也不好懂。这样的一个后果就是,遇到打包报错就束手无策了,不知如何排查。提高性能更是无从谈起。
下面的这份免费视频会先讲述一个 Webpack 的打包流程,以及 AST (抽象语法树)的基础知识,并分析模块之间依赖图谱,最后再带大家动手自己实现一个简易的 Webpack。
以上视频资料由 开课吧独家提供。
开课吧是行业首家集齐百度、滴滴、阿里、微软等 IT 大厂资源的泛互联网人新职业教育品牌,将互联网技术领域的一线实战项目根植于教学内容之中,助力学员的能力提升,并无缝衔接大厂用人需求。
资讯
1、远程毕业典礼[4]
疫情期间,位于日本东京的创业者商学院在一家酒店,举行了远程毕业典礼。学生不到现场,而是在家操作机器人。机器人的“面孔”是平板电脑,通过摄像头,实时显示毕业生的面孔。
主持人宣布开始领取毕业证书,学生就远程操作机器人朝着主席台“走去”,从校长大前研一手里拿到毕业证书,工作人员鼓掌说:“恭喜!”。校长将文凭放在机器人手中,然后合影留念。
2、鲸鲨的确切年龄[5]
鲸鲨是地球上最大的鲨鱼,长约18m,平均重约20吨,身上有易于识别的白色斑点。澳大利亚科学家最近找到了一种方法,测量鲸鲨的确切年龄。
20世纪40年代后期开始,美国、苏联等国进行了多次原子弹测试。这些核爆炸的一个副作用,就是使得大气层中的碳-14同位素含量翻倍了。地球上的所有生物都通过空气,吸收了这种碳-14。由于存在半衰期,这种同位素会随着时间而减少,因此生物年龄越大,体内能够找到的碳-14就越少。
科学家通过分析死去的鲸鲨椎骨标本,发现这种动物的寿命非常长,可能高达100-150岁。
3、寻找 COBOL 程序员[6]
纽约州州长在电视上,公开征集 COBOL 程序员。该州的失业保险系统,就是使用 COBOL 开发的,已经超过40年的历史。最近,美国失业人数激增(超过700万人),该系统不堪重负,反应速度极慢,每个操作要等很长时间,让人担心它随时会崩溃。
COBOL 语言诞生于1970年代,当时有很多金融机构和政府部门使用这种语言,开发了很多关键系统。后来,COBOL 逐渐没落,懂得它的程序员越来越少。但是基于它的系统,由于风险和成本的关系,一直运行至今,始终没有升级。
4、人类设计的活体生命[7]
美国科学家从青蛙胚胎(上图)里面提取细胞,然后根据计算机模型得到的结果,将这些细胞组合在一起,创造出世界第一种“可编程的生物”(下图)。
这些生命形式没有性器官,也没有胃,脑或神经系统,只是一个由大约2000个活着的细胞组成的生命体。科学家将它们聚合在一起,成为活的生物。根据非洲爪蛙的名字 Xenopus laevis,它们被命名为 Xenobots,即青蛙细胞机器人。这些生命体以蛋黄为食,只能存活约一周。
5、隔离的贫富分化[8]
《纽约时报》分析了智能手机的位置数据, 发现美国收入最高的地区和贫困地区,最近都出现了人们外出活动的下降。但是,高收入地区的活动减少出现得更早,并且程度更深。也就是说,穷人更少待在家里,外出更多。
上图是活动下降的曲线图,蓝色是富裕地区,黄色是贫困地区。可以看到,蓝色比黄色早三天进入隔离,并且隔离程度更深。
6、一句话消息
•意大利[9]的 COVID-19 死亡率非常高,但是全体人口的死亡率(包括各种死因)仍然很正常,甚至低于历年的平均水平。
•美国宇航局[10]宣布,正在研究在月球背面的陨石坑,建设一个射电望远镜的可能性。由于陨石坑都非常巨大,这样的望远镜直径可能会超过5公里。
•深圳一家创业公司[11]开始使用无人车,在园区内进行送货和喷洒消毒液。该车使用激光雷达进行道路识别,如果遇到无法判断的情况,就会传回控制中心,接受远程遥控。
•Cloudflare[12]宣布。由于谷歌的 reCAPTCHA 服务开始收费,经过评估会切换到 hCAPTCHA 。令人不解的是,新的测试还是图片识别挑战,没有改成 Geetest 那种滑块挑战。我觉得,滑块明明对用户更友好。
•Facebook[13]同意支付5.5亿美元,赔偿伊利诺伊州用户。原因是 Facebook 未经该州数百万用户的许可,从他们的照片中收集面部数据。
•美国餐饮业[14]2019年的总收入是8630亿美元,相比之下,全球软件业的总收入是4670亿美元。
文章
1、我如何破解比特币钱包的密码?[15](英文)
有人多年前购买了比特币,但是忘记了钱包的密码。理论上,这些比特币无法找回。他不甘心,找到了一个密码学家,愿意支付10万美元,破解钱包的密码。文章有一点难度,但是值得一读。
2、以逗号开头的自定义命令[16](英文)
作者提出,Linux 系统的自定义命令都以逗号开头。这样查询会非常方便,先输入逗号,然后按下 Tab 键,所有自定义命令就会显示。
3、Netflix 如何变成一家流媒体公司[17](英文)
Netflix 原来是一家 DVD 碟片的租借公司,用户在网站下单后,就把 DVD 寄到用户家里(上图)。本文介绍他们是怎么变成一家视频点播的流媒体公司,非常精彩的故事。
4、如何使用 Wireguard?[18](英文)
Wireguard 最近进入了 Linux 内核,本文详细介绍它的安装使用步骤。
5、CLUI:命令行 UI[19]
命令行界面CLI对新手不友好,必须看手册才会用。图形界面GUI不适合功能多的软件,而且效率低。
有人就提出了一种将两者优点结合的界面 CLUI(命令行 UI):命令行下显示图形提示框。
6、AWS 如何添加用户[20](英文)
这篇文章教你入门亚马逊网络服务 AWS,最基本的一步,新增一个管理员用户。这里还有一篇类似的文章[21],介绍如何使用 IAM 服务新增 AWS 用户。
7、如何对 Array.forEach 使用 async 函数[22](英文)
JavaScript 语言中,如果要通过 Array.forEach 方法,对数组的每个成员进行异步操作,使用 async 函数可能不会达到你的目的。本文介绍了如何使用 Array.reduce 方法保证对每个成员进行继发操作。
8、Rome,一个新的 JavaScript 工具库[23](英文)
Babel 创始人的新作品,把 JS 的主要工具都包括在一个库里。不需要 webpack、eslint、prettier、babel ,它都提供了。
它的核心思想是,把基于AST(抽象语法树)的所有功能都统一起来,不要每个工具自己做一次AST解析。
工具
1、Messenger 桌面版[24]
脸书宣布,为了适应激增的通话量,通信软件 Messenger 推出桌面版,提供免费的无限量多人视频聊天。上面是 Windows 版的下载链接,Mac 版下载在这里[25]。
2、Slient Down[26]
一个监控服务器是否在线的服务,非付费用户可以监控5台服务器,每5分钟检查一次。如果宕机,就会通过邮件或其他途径通知用户。
3、Desktop Info[27]
一个 Windows 小工具,可以在桌面显示系统信息,内容可以定制。
4、lossless-cut[28]
一个开源项目,为视频工具库 ffmpeg 开发一个图形界面 GUI。
5、DeepL[29]
一家创业公司推出的机器翻译引擎,据称比谷歌翻译得更好。(@ketra21[30]投稿)
6、plausible[31]
一个 Google Analytics 的开源替代品,可以自己架设网站访问统计。特点是轻量级,结构简单
7、apioak[32]
一个开源的国产 API 网关,可以作为前后端之间的映射层。基于 OpenResty,性能好,功能强。(@shuaijinchao[33]投稿)
8、like-mysql[34]
一个 Node.js 库,MySQL 数据库的 ORM 映射层,使用很简便,但是功能也比较少。
9、esbuild[35]
一个用 Go 语言写的 JS 脚本打包工具,根据作者提供的数据,打包时间仅仅是 Webpack 的几十分之一。
10、plink-plonk.js[36]
作者提供一段 JS 代码,只要插在网页里面,可以让 DOM 变动发出声音。如果 DOM 有改变,你就会听到声音。
资源
1、Pluralsight[37]
Pluralsight 宣布四月份对用户免费,网站上面 7000 多门视频课都可以免费听。它家的 C# 课程很有名,最近 Python、JS、Java、Devops 课程也添加了不少。
2、3D 打印口罩[38]
该网站提供一个开源的口罩方案,本质是一个带在脸上的空气过滤器,可以 3D 打印。过滤层采用空气过滤器的 HEPA 材料。
3、哺乳动物树[39]
一个数据可视化作品,根据5,911种动物的种属,将它们画成一棵倒金字塔型的树,可以连续放大查看。
4、简单粗暴 TensorFlow 2[40]
这是一本简明的 TensorFlow 2 入门指导手册的中文版翻译,力图让具备一定机器学习及 Python 基础的开发者们快速上手 TensorFlow 2。(@ketra21[41]投稿)
5、大圣盘[42]
一个百度网盘资源搜索引擎,由网络爬虫自动抓取。(@ketra21[43]投稿)
图片
1、世界最陡峭的街道[44]
2019年以前,新西兰但尼丁市的鲍德温街,是世界最陡的住宅区街道。它长350米,坡度为35度。
2019年,英国威尔士有一条新的街道超过了它,坡度达到37.5度。但尼丁市长称,会考虑将鲍德温街标牌文字,从世界上最陡峭的街道改为南半球最陡峭的街道。
2、什么是重力波?[45]
爱因斯坦在1916年提出“重力波”,在一百年后终于被侦测到。
重力波的简单想像方式是,你有一张拉平的床单,床单上画着标准的方型格线。接着想像你放了一个重物在床单上,例如保龄球。保龄球的质量造成床单凹陷。
当物体在床单上移动(想像一颗弹珠从一侧滚到另一侧),如果物体太靠近保龄球就会偏移。想像拿着保龄球在床单上上下移动,如果这样做的话,不难看见床单上往外传播的涟漪,这就是重力波。重力波的涟漪造成时间和空间扭曲。
文摘
1、我们不是一家人[46]
Netflix 公司的 CEO 海斯汀(Reed Hastings)2009年曾经发表过一份公开信,对于Netflix 强悍的工作文化有很多惊世骇俗的语句。其中最有名的一句话就是“我们不是一家人”(We Are Not Family)。
根据 Glassdoor 统计,Netflix 资深工程师薪资平均比 Google 高60%。如果上Teamblind 搜寻一下,你可以看到 Netflix 有人年薪高达40万美元,甚至有50万的。年薪40万在美国,是跟总统一样的薪水。
天下没有白高的薪水。Netflix 只要成功的人,而且要年复一年永远不停成功的人。Netflix雇人的价值观是:一个A咖比两个B咖便宜,所以他们只要A咖中的A咖。
高报酬的背后就是高压。这家公司培养出一种非常特殊的雇佣兵文化,他们不要忠诚,只要能够作战的英雄。
海斯汀开宗明义地说,家人有无限的爱与包容,家人必须一再容忍错误与失败。Netflix 不会把你当家人。这里的团队只有一个任务,那就是把每个人都推往不可能的极限。这里没有包容,做不到就会被取代。
• 我们不提供寿司、葡萄酒。你是来作战,不是来开趴的。
• 我们不看工作多努力或工时多长,我们只看战果。
• 我们只要A咖,给的也是A咖的回报。
• 如果你是B咖,即使是A咖的努力,我们还是会请你离开。
• 我们不要忠诚,只要成功。
• 如果你只想找一份安稳的工作,那请你现在就离开。
• 我们要的是自发、自律的战将。我们不教你怎么作战,也没时间教你如何生存。
• 公司没有流程和法则。我们抛弃所有的繁文缛节。繁文缛节只适合管理笨蛋用。
• 我们不追踪工时,只追踪进度。
• 出差、餐饮、及公务报销都不需要收据。要报多少自行决定。
• 我们给你全部的自由,但你也必须背负全部的责任。
• 我们付你无与伦比的报酬,不管盈亏都一样。报酬是看战果,不是看年资。
• 如果你打算留下来,那只是为了成就和金钱,不需要其他任何理由。
• 我们只告诉你目标,不会告诉你如何达成。
• 我们只要超级英雄。
2、美国的石油储备[47]
自1977年以来,美国能源部在路易斯安那州和德克萨斯州沿海地区,收购了62个巨大的盐洞,用于储存原油。
这些盐洞是在地下的盐层中钻井,然后注入淡水来溶解盐而形成的。矿业公司将溶解的盐抽回地面,此过程称为溶液开采,可产生尺寸非常精确的洞穴。平均每个洞穴可以放置1000万桶石油。
这些地下洞穴用来储存石油,实际上是非常安全的。一方面,由于它们位于600米~1公里深的地下,那里极高的压力可防止形成裂缝,所以不会出现泄漏。此外,每个洞穴顶部和底部之间的自然温差会促使原油循环流动,从而保持其品质。
如果要从一个洞穴中回收原油,只需泵水到它的底部。由于油会漂浮在水上,因此原油就会上升到地表。而且,由于这些洞穴靠近墨西哥湾,有现存的石油运输管道,也方便装入船中运走。
目前,整个美国石油储备为7.27亿桶,按照2070万桶的能源需求,可以满足35天。如果储存增长达到10亿桶,将延长至48天。
言论与数字
1、
我会购买华为作为下一部手机,以避免使用谷歌的服务。
-- HN 读者[48]
2、
对我来说,英语是比 C 或 Java 更难写的语言。
-- 《解释器开发》的写作感受[49]
3、
《牛津英语词典》从“A”编到“ant”花了10年,剩下的部分又花了60年才编完。
-- 《牛津英语词典如何诞生》[50]
4、
病毒的全球大流行,证明了国家之间的相互依存关系,希望这件事不会造成这种关系的终结。
-- 《冠状病毒将留给我们什么》[51]
5、
我通过删除 WordPress 的 Mailchimp 插件中 20 KB 的 JavaScript 依赖关系,每月估计减少了59,000 公斤的二氧化碳排放量。
-- 《互联网的二氧化碳排放量》[52]
6、
我辍学当程序员的第一年,收入就比父亲职业生涯最高峰时只少了4,000美元。我的父母养育七个孩子的年收入,比我职业生涯初期的收入少,想到这一点我就很不舒服。
这对我来说是重要的时刻,我意识到金钱提供了许多人可能从未经历过的机会:国际旅行、假期、以及我们可能不需要但肯定想要的其他东西。
-- 《足够金钱的好处》[53]
去年的本周:《周刊第 51 期》
References
[1]ruanyf/weekly:https://github.com/ruanyf/weekly
[2]《谁在招人?》:https://github.com/ruanyf/weekly/issues/1148
[3]报道:https://www.bbc.com/worklife/article/20200306-the-surprising-truth-about-finding-your-passion-at-work
[4]远程毕业典礼:https://www.sohu.com/a/385137145_161795
[5]鲸鲨的确切年龄:https://www.bbc.com/news/science-environment-52155008
[6]寻找 COBOL 程序员:https://www.northjersey.com/story/news/new-jersey/2020/04/04/coronavirus-nj-40-year-old-system-adds-delay-unemployment-checks/2944985001/
[7]人类设计的活体生命:https://www.nytimes.com/2020/04/03/science/xenobots-robots-frogs-xenopus.html
[8]隔离的贫富分化:https://www.nytimes.com/interactive/2020/04/03/us/coronavirus-stay-home-rich-poor.html
[9]意大利:https://swprs.org/a-swiss-doctor-on-covid-19/
[10]美国宇航局:https://twitter.com/DMOberhaus/status/1247607588319100936
[11]深圳一家创业公司:https://spectrum.ieee.org/automaton/transportation/self-driving/robot-vehicles-make-contactless-deliveries-amid-coronavirus-quarantine
[12]Cloudflare:https://blog.cloudflare.com/moving-from-recaptcha-to-hcaptcha/
[13]Facebook:https://www.nytimes.com/2020/01/29/technology/facebook-privacy-lawsuit-earnings.html
[14]美国餐饮业:https://news.ycombinator.com/item?id=22152680
[15]我如何破解比特币钱包的密码?:https://reperiendi.wordpress.com/2020/04/03/how-i-recovered-over-300k-of-bitcoin/
[16]以逗号开头的自定义命令:https://rhodesmill.org/brandon/2009/commands-with-comma/
[17]Netflix 如何变成一家流媒体公司:https://www.fastcompany.com/3004709/inside-netflixs-project-griffin-forgotten-history-roku-under-reed-hastings
[18]如何使用 Wireguard?:https://miguelmota.com/blog/getting-started-with-wireguard/
[19]CLUI:命令行 UI:https://blog.repl.it/clui
[20]AWS 如何添加用户:https://ncona.com/2020/03/introduction-to-aws-cli/
[21]类似的文章:https://devops.novalagung.com/en/aws-create-individual-iam-user.html
[22]如何对 Array.forEach 使用 async 函数:https://advancedweb.hu/how-to-use-async-functions-with-array-foreach-in-javascript/
[23]Rome,一个新的 JavaScript 工具库:https://jasonformat.com/rome-javascript-toolchain/
[24]Messenger 桌面版:https://www.microsoft.com/en-us/p/messenger/9wzdncrf0083#activetab=pivot:overviewtab
[25]这里:https://apps.apple.com/us/app/messenger/id1480068668
[26]Slient Down:https://silentdown.com/
[27]Desktop Info:https://www.glenn.delahoy.com/desktopinfo/
[28]lossless-cut:https://github.com/mifi/lossless-cut
[29]DeepL:https://www.deepl.com/translator
[30]ketra21:https://github.com/ruanyf/weekly/issues/1169
[31]plausible:https://github.com/plausible-insights/plausible
[32]apioak:https://github.com/apioak/apioak/blob/master/README_CN.md
[33]shuaijinchao:https://github.com/ruanyf/weekly/issues/1173
[34]like-mysql:https://github.com/LuKks/like-mysql
[35]esbuild:https://github.com/evanw/esbuild/
[36]plink-plonk.js:https://gist.github.com/tomhicks/6cb5e827723c4eaef638bf9f7686d2d8
[37]Pluralsight:https://www.pluralsight.com/
[38]3D 打印口罩:https://www.makermask.com/
[39]哺乳动物树:http://vertlife.org/data/mammals/
[40]简单粗暴 TensorFlow 2:https://tf.wiki/
[41]ketra21:https://github.com/ruanyf/weekly/issues/1164
[42]大圣盘:https://www.dashengpan.com/
[43]ketra21:https://github.com/ruanyf/weekly/issues/1174
[44]世界最陡峭的街道:https://en.wikipedia.org/wiki/Baldwin_Street
[45]什么是重力波?:https://www.facebook.com/natgeomedia/posts/1571121353051484
[46]我们不是一家人:https://tw.appledaily.com/property/20200223/JWWUCXVVLE5XNSUJE7A7LHBHMM/
[47]美国的石油储备:https://science.howstuffworks.com/environmental/energy/strategic-petroleum-reserve1.htm
[48]HN 读者:https://news.ycombinator.com/item?id=22778316
[49]《解释器开发》的写作感受:http://journal.stuffwithstuff.com/2020/04/05/crafting-crafting-interpreters/
[50]《牛津英语词典如何诞生》:https://www.abc.net.au/news/2020-04-09/history-of-the-oxford-english-dictionary/12010628
[51]《冠状病毒将留给我们什么》:https://medium.com/@farainechikwiranechz/what-the-coronavirus-will-leave-on-us-8ea4d540005f
[52]《互联网的二氧化碳排放量》:https://dannyvankooten.com/website-carbon-emissions/
[53]《足够金钱的好处》:https://dragonquest64.blogspot.com/2020/02/having-fu-career.html