查看原文
其他

科技爱好者周刊:第 99 期

阮一峰 阮一峰的网络日志 2022-11-06

这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: ruanyf/weekly[1]),欢迎提交 issue,投稿或推荐你的项目。

周刊讨论区的帖子《谁在招人?》[2],提供大量就业信息,欢迎访问或发布工作/实习岗位。

封面图:美国华盛顿州的自行车树。1950年代有一个男孩把自行车忘记在树林中,40年后这辆自行车长进了树里。(出处[3]

刊首语

这几天,教育部[4]公布了2020年研究生招生规模,今年会多招18.9万人,比去年增长20%。

这是为了落实国务院的要求,因为今年有疫情,高校毕业生的就业形势非常严峻,扩大研究生招生,可以减少就业压力。

这固然是不得已的措施,但也反映了我们国家的现实: 高等教育的目的,并不完全是培养学术人才,很大程度上充当了就业缓冲层。

一旦就业不好,高校就会扩招。由于一再的扩招,研究生的培养质量下滑得很厉害。我建议,大家考研一定要慎重, 如果不打算追求学术,轻易不要考研。 否则等到两三年后毕业,拿到一张含金量有限的硕士文凭,你会发现工作同样难找,还白白浪费了好几年的宝贵光阴。

这些年已经司空见惯了,博士研究生去参加公务员考试、去应聘中小学教师。几乎任何一个有学历要求的招聘岗位,都有博士生在应聘。学历贬值的程度可见一斑。

在我看来,读研越来越不值得,研究生文凭在贬值,而学到的那些知识完全可以在互联网上自学。一边工作一边学习,会比读研的成本小很多。工作中提高技能,了解社会,更重要的是可以有收入;下班后,再通过网络自学,补充知识,思考自己未来要走的方向。总之,中国的研究生教育不是出路,学到的东西太少,浪费的时间太多。

免费前端视频

最近,企业的前端招聘已经开始了,但是招聘岗位明显比往年少。如果你的前端基础还不够扎实,最好抓紧现在业务还没有完全恢复的这段准备期。

应对前端面试有两大要点, 一是技术栈的熟练掌握,另一个就是了解面试的相关技巧。吃透了这两点,等疫情完全结束,就有机会拿到好的 offer!

本期周刊为大家提供一批免费的视频资料,内容分别是大牛的面试技巧分享和 Vue 这个前端常用框架的讲解。以下视频资料均由 开课吧 独家提供。

视频一:《一小时带走前端大牛复盘的求职策略》 :大厂面试章法(简历、目标公司、如何描述做过的项目),面试技巧的分享,面试题的详解等。

视频二: 《Vue3 响应式原理剖析》:Vue3 响应式初体验、Vue2 & Vue3 响应式原理对比、Vue3 响应式实现、源码分析等。

视频三: 《Vue 源码剖析之整体流程》:Vue 源码调试环境搭建、入口文件剖析、Vue 初始化流程分析、Vue 源码学习整体流程总结等等。

感兴趣的读者,长按下方二维码两次,现在就能免费领取这三个视频教程。温馨提示:资料数量有限,仅提供259份。

扫二维码,成功添加小助理,即可领取面试礼包。

资讯

1、3D 打印呼吸机阀门[5]

最近,意大利布雷西亚地区(新冠病毒受灾最严重的地区之一)的一家医院的呼吸机突然坏了,由于供应链中断,找不到替换零件,眼看很多呼吸困难的病人危在旦夕。

万般无奈之下,医院找到当地 3D 打印公司,希望他们可以帮忙解决。这家公司很快就把坏掉的阀门扫描后,3D 打印了出来。呼吸机又可以正常工作了,已经支持了10个危重病人的呼吸功能。这件事情的启示是,机器的机械部件以后都应该做成 3D 打印友好的设计,或者附上 3D 扫描的源码,这样对于更换零件和日后的维护会产生巨大的方便。

最新消息[6]是,此事经过媒体报道以后,呼吸机公司威胁将要起诉医院和 3D 打印公司,理由是他们侵犯了专利权,没有授权就复制了零件。评论认为,这主要是因为成本,整套零件的市场价接近10000欧元,但是 3D 打印的成本为每个1欧元。

2、公交车紫外线消毒[7]

上海公交开始使用紫外线杀毒技术,对车辆进行全面消毒。专用的“紫外线消毒车间”配有216根石英紫外线灯管,以及多台可移动紫外灯架,对车辆进行全方位照射。

整个消毒过程完全是无人的,每辆公交车需要约10分钟。这比疫情初期公交车手动喷洒消毒剂,不仅节省时间,而且更可靠更安全。

3、威尼斯直播[8]

意大利威尼斯的一家旅馆已经没有了生意,就在Youtube直播它的窗口望出去的景象,现在就在播出,有好几个摄像头轮流切换,画面相当清晰。

平时半夜都喧闹无比的市政广场,现在几乎空无一人。直播不时插播一行字:“等到疫情结束,请预订您的行程,帮帮这个城市”。

4、隔离手环[9]

香港政府要求所有入境人士都要佩戴一种手环,用来监控是否居家隔离14天。这种手环戴上去,就拿不下来,除非把带子剪掉,但是如果擅自破坏手环,可能会被监禁6个月。

手环不含 GPS,但是可以与手机通信,再通过通讯软件分享实时位置。只要一离开规定的范围,手环就会自动报警,警察就会拨打隔离者的电话,要求他通过手机分享自己的位置。

5、氢动力火车[10]

英国制造了氢动力火车的样车,正在测试。这种火车通过分解氢气发电,储存在锂电池,一次可以行驶80公里到110公里。如何顺利的话,预计两年后投入使用。

氢动力最大的好处就是环保,不会产生有害气体和二氧化碳,唯一的产物是水。而且,氢动力火车比新建纯电力火车便宜,因为不需要改造轨道,可以直接在现有轨道上行驶,这对乡村尤其适合。

氢动力火车的最大问题是,它只能携带20公斤氢气,只够运行3个小时,因为没有便宜的方法可以压缩氢气的体积,所以火车无法携带更多的氢气。

6、生成所有 MIDI 旋律[11]

MIDI 是一种电子音乐的格式,可以用数字格式生成和记录音乐。两位美国程序员为了防止有人将 MIDI 旋律申请版权,就用软件生成了所有8个音符、12种节拍的旋律,然后以创意共享许可证发布到网上。软件可以每秒生成30万种旋律。

以后,如果有人要将自己的作品申请版权,就会发现这个旋律已经发布过了,从而无法申请成功。他们解释自己的动机时说:“版权制度有问题,急需改革。旋律只是数字而已,不应该被申请版权。”

7、一句话消息

•谷歌[12]搜索“美国民主党”,会显示民主党的标志是一只老鼠,而不是应该出现的一头驴。谷歌已经承认这是 Bug,会尽快修复,但没有透露原因。

•黄金价格[13]不断上涨,3月16日金银比价创下123.78的记录,即等重量的黄金价格是白银的123.78倍。这是人类5000年来的最高记录。

•意大利威尼斯[14]由于没有游客,运河中的水变得清澈见底。

•维基百科[15] 说,覆盖所有人类知识需要1.04亿篇文章,目前该网站共有0.277亿篇文章(含所有语种)。估计到2040年代,所有人类知识就可以全部收入了。

•马斯克[16]说,SpaceX 公司的目标是拥有1,000艘宇宙飞船,每年生产100艘,每艘使用寿命为20~30年。有了那么多船,SpaceX 每年将向火星运送多达1亿吨货物,以及10万个乘客,2050年时火星人口可以达到100万。

•科学家[17]发现,相隔几千万光年的星系会同步旋转,因此猜想宇宙存在某些巨型结构,将遥远的星系连在一起。

文章

1、SQL 中的 NULL 你真的懂了吗?[18](中文)

SQL 中的 NULL 到底是怎样一个概念呢?有什么要注意的吗?这篇文章就是要把它讲清楚。第 98 期英文版的中译。(@9527q[19] 投稿)

2、戴森印象记[20](中文)

2020 年 2 月 28 日, 著名物理学家弗里曼·戴森 (Freeman Dyson) 在美国去世, 享年 96 岁。戴森去世的次日早晨, 我收到《上海书评》编辑的微信, 约写一篇关于戴森的文章。我说我只能写一篇不全面, 且并非一味 “点赞” 的文章。

3、AWS 精萃介绍[21](英文)

AWS 是世界排名第一的云服务,本文以简单易懂的语言和图片,解释它的几个主要服务:DynamoDB、S3、EC2、ELB 等等。

4、适合自己架设的开源远程办公软件[22](英文)

很多企业进行远程办公时,使用自己架设的开源软件会更方便,本文就介绍一些主要的选择。

•聊天:Mattermost 和 Matrix•云存储:Nextcloud•项目管理:Redmine•代码托管:Gitlab

5、创业公司的23条规则[23](英文)

作者以自己创业的亲身体会,总结了23条经验,我觉得有几条写得非常好,比如一定要有经常性收入;不要提供免费版,宁愿提供试用版;尽量选择有多个厂商支持的平台或技术。

6、中国地图坐标简介[24](英文)

中国的地图坐标不同于国际通用坐标,在标准地图会产生几百米的偏移,必须采用算法换算。

7、SQLite vs MySQL vs PostgreSQL:关系数据库管理系统的比较[25](英文)

本文对标题里面三种关系型数据库进行了简要介绍,提出各自的优缺点和适用场景。

8、齿轮原理[26](英文)

一篇很好的科普文章,通过可视化图形,通俗介绍齿轮传动的原理。

9、高性能前端架构[27](英文)

本文总结了提高前端网页性能的各种措施。

10、一次浏览器前端加密的逆向工程[28](英文)

作者浏览一个网站时,发现该网站的加密通信是在前端完成的,即用公钥在前端进行加密和解密,于是进行了逆向工程,还原出明文信息。

工具

1、openVidu[29]

一个开源的视频会议软件,使用 WebRTC 技术。

2、GitHub 官方 App[30]

GitHub 的官方手机客户端,安卓和 iOS 都支持,可以发 issue、合并 PR、代码 Diff 等等。

3、bigbluebutton[31]

开源的远程教育软件,也可用作视频会议。

4、fastai-cnn-camera-app[32]

一个示例项目,如何在网页上使用神经网络,识别照片里面的物体,比如人、树、椅子等等。

5、Hand Mirror[33]

一个 MacOS 应用,可以在系统菜单栏显示一个图标,点击后直接显示摄像头画面。

6、jira_clone[34]

使用 React + Node.js 写的项目管理工具 Jira 的克隆。

7、vardbg[35]

一个 Python 脚本的调试工具,并可以生成脚本运行流程的可视化视频。

8、AmIUnique[36]

这个网站显示 JavaScript 可以收集多少用户信息,当作唯一指纹,用来追踪用户。

9、Commento[37]

一个为网页插入评论的 Web 服务,可以作为 Disqus 的替代品。

10、Mirage JS[38]

一个模拟服务器 API 返回结果的前端 JS 库。

11、几何艺术占位符图像[39]

该网站提供占位符图像(Placeholder),图像内容是算法生成的几何图形。

资源

1、socode.pd[40]

程序员的搜索工具,将各种网络资源汇总在一个搜索框里面。(@zicjin[41] 投稿)

2、CS246:大数据挖掘[42]

斯坦福大学的大数据挖掘的本科生公开课程。

3、性别中性用词[43]

这个仓库收集了各种性别中性的英语词汇,比如 businessman 说成 manager,doorman 说成 security guard,chairman 说成 chairperson。

4、Awesome Open Source[44]

该网站对 GitHub 上的开源项目进行分类,共有7000多个类别。

5、awesome-icons[45]

这个仓库收集免费的图标资源。

图片

1、核动力破冰船[46]

俄罗斯是目前世界上唯一拥有核动力破冰船的国家。

1957年,第一艘核动力破冰船列宁号下水。核动力船只的生产和维护成本高昂,但可以航行数年而无需补充燃料,这在人烟稀少的极地非常重要。

列宁号的反应堆后来发生过两次危险的故障,所以这艘破冰船已经于1989年退役,如今成为博物馆,停泊在摩尔曼斯克。下图是2019年香港游客在列宁号前拍照留念。

1977年,核动力破冰船成为第一艘到达北极极点的船只。

1977年,船员在 Arktika 核动力破冰船上的温水游泳池游泳。

1991年苏联解体后,由于缺乏资金,核动力破冰船开始收费的北极旅游。下图为一名沙特男子于1990年下船在北极祈祷。

2018年,俄罗斯破冰船共进行了五次北极旅游航行。2020年的最低价格为每人30,995美元。

文摘

1、鱼雷的历史[47]

早期的鱼雷,必须击中船只才会爆炸。但是,鱼雷击中船只的概率并不高,能不能只要接近船只,鱼雷就爆炸呢?

第一次世界大战期间,德国人开发了带有电磁雷管的鱼雷。鱼雷内部有一个罗盘针,只要接近钢制或铁制的船壳,罗盘针会移动。越靠近,移动幅度就越大,从而激活电触点,使鱼雷爆炸。

这种鱼雷的一个问题是,地球磁场会对罗盘针产生影响,所以不适合在高纬度地区使用。

另一个问题是,海军希望鱼雷可以在船下爆炸,而不是在船的旁边爆炸。那样的话,损害会更大。理想情况下,直接在船只下方引爆一两个鱼雷,就足以将船只炸成两半。

1925年,美国设计了线圈鱼雷。它不是由罗盘激活的,而是用感应线圈来产生电动势。当鱼雷通过目标磁场或在目标磁场下时,感应线圈就会改变。真空管放大了线圈内的变化,以释放撞针。这个设计在当时非常复杂,使得这种鱼雷的可靠性很差。但是一旦正常工作,威力十分巨大。

二战中,美军使用这种线圈鱼雷,只有30%的可靠性。剩下的70%不是过早就是过晚爆炸,甚至根本没有爆炸。

尽管存在种种问题,仅占美国海军人员2%的潜艇官兵,炸沉了1,178艘商船和214艘军舰。他们自身的损失是52艘潜艇,374名军官和3131名士兵。美国潜艇部队在太平洋海战的伤亡,是全部海军伤亡的40%,但是摧毁了全部日本舰艇的55%。

2、Google Stadia 的错误是选择了 Linux[48]

谷歌 Stadia 于数月前推出,将游戏和流媒体组合在一起,但是推出后并不顺利。

Stadia 最初只有12个游戏,相比之下,PS4 有2441个游戏,而 Xbox 有2361个游戏(如果包括向后兼容的游戏,则为3200个以上)。此外,Stadia 的开通费是129美元,后面需要每月支付订阅费10美元,才能玩游戏。相比之下,您可以用149美元的价格购买全新的Xbox One S。

Stadia 刚问世时,人们就将它称为游戏界的 Netflix。虽然它与人们认为的“吃到饱”服务相去甚远,但将其与 Netflix 相比较是错误的。因为 Netflix 可以在获得许可后,将任何现有的电影或电视节目直接添加到片库。Stadia 做不到这一点,因为它运行Linux,而几乎没有大型游戏为 Linux 做开发。因此,谷歌不仅需要获得游戏工作室的许可,还需要游戏开发人员将其移植到 Linux 和 Stadia 的平台上。举例来说,为了使Destiny 做好准备,Google 必须让2名工程师专职工作6个月,以确保游戏可以按时发布。即使这样,游戏也只能以 1080p 的分辨率运行,并没有提升到 4K。

如果 Stadia 使用 Windows,那么它就是游戏届的 Netflix。在获得许可协议后,Windows 上发布的每个游戏都可以玩。游戏开发人员无需付出任何努力即可将游戏移植到这个全新平台上。它不需要再让一个 Linux 工程师干上几个月,把它移植过来。

如果 Stadia 使用Windows,还有一个好处,就是可以让 Stadia 用户与 PC 用户一起玩多人游戏,这对于很多大型游戏有重大意义。

另外,如果你在 PC 或其他游戏平台上已经买过同一个游戏,进入 Stadia 仍然需要再次购买。由于用户从 Stadia 购买的游戏保留在云中,因此一旦 Stadia 关闭,用户将无法玩游戏。考虑到过去 Google 杀死了大量产品,Stadia 关闭也不是不可能。如果 Stadia 使用 Windows,那么关闭后,人们将能够轻松下载购买的游戏,然后转移到 Windows 平台继续玩。

言论

1、

1665年8月,剑桥大学由于鼠疫传播而关闭,一个叫做艾萨克·牛顿的学生不得不回到乡下的老家,躲避瘟疫。

整整18个月,他与世隔绝,努力地读书和做实验,创造性地提出了一整套引力理论。人类的科学进展由于这个单一事件,从此彻底改变。

-- 《艰难时期的横向思考》[49]

2、

微软每隔几年就推出一个新的 .NET 框架,几年后它们就会停止更新。每一次,你的新开发都在新框架上进行。一段时间后,这真的很累。

-- HN 读者[50]评论微软最新推出 WinUI 框架

3、

两天前,ZDNet 发表了新文章《认识 iPad:提高你生产力的10个应用》。这一类的科普文章,每周都会出现,这难道不是一件很奇怪的事情吗?

iPad 已经发布10年了,可是人们还必须看这种文章,说明大家还没找到办法,到底怎样才能在 iPad 上进行实际工作!

-- 《iPad 的失败》[51]

4、

我意识到,无论谷歌发布多么新的、文档完善的、功能强大的新 API,我们余生都将为安卓 4.4 编写代码。

-- HN 读者[52] 回答提问《作为手机开发者,你有没有什么遗憾?》

5、

你无法管理没有量化的事情。

-- Lorin Hochstein[53]

6、

有气象记录以来,地球平均气温最高的五年是2016年、2019年、2015年、2017年、2018年。

--《2019年是全球气温第二高的年份》[54]

7、

我原本没想发明 Node.js,而是想用 Haskell 语言完成我的项目,但是失败了。我又不够聪明,没有能力改进 GHC(Haskell 语言的运行时),只好发明新的工具。

-- Ryan Dahl[55],Node.js 的发明者

回顾

去年的本周:《周刊第 48 期》

References

[1] ruanyf/weekly: https://github.com/ruanyf/weekly
[2] 《谁在招人?》: https://github.com/ruanyf/weekly/issues/1106
[3] 出处: https://www.thevintagenews.com/2016/08/29/the-real-story-behind-a-boy-left-his-bike-chained-to-a-tree-when-he-went-away-to-war-in-1914/
[4] 教育部: http://edu.people.com.cn/n1/2020/0302/c1053-31612535.html
[5] 3D 打印呼吸机阀门: https://www.3dprintingmedia.network/covid-19-3d-printed-valve-for-reanimation-device/
[6] 最新消息: https://www.techdirt.com/articles/20200317/04381644114/volunteers-3d-print-unobtainable-11000-valve-1-to-keep-covid-19-patients-alive-original-manufacturer-threatens-to-sue.shtml
[7] 公交车紫外线消毒: http://www.chinanews.com/sh/2020/03-04/9113144.shtml
[8] 威尼斯直播: https://www.youtube.com/watch?v=ph1vpnYIxJk
[9] 隔离手环: http://www.caixin.com/2020-02-04/101511232.html
[10] 氢动力火车: https://www.bbc.com/future/article/20200227-how-hydrogen-powered-trains-can-tackle-climate-change
[11] 生成所有 MIDI 旋律: https://www.musictech.net/news/programmers-generate-every-possible-melody-in-midi-to-prevent-lawsuits/
[12] 谷歌: https://www.bleepingcomputer.com/news/security/us-democratic-party-symbol-changed-to-a-rat-in-google-search/
[13] 黄金价格: https://www.nasdaq.com/articles/the-longest-record-broken:-gold-silver-ratio-hits-highest-in-over-5000-years-2020-03-17
[14] 意大利威尼斯: https://www.boredpanda.com/fish-seen-in-clear-venice-canals-after-coronavirus-lockdown/
[15] 维基百科: https://en.wikipedia.org/wiki/User:Emijrp/All_Human_Knowledge#Human_geography
[16] 马斯克: https://www.extremetech.com/extreme/305021-elon-musk-starship-will-last-20-30-years-aiming-for-fleet-of-1000
[17] 科学家: https://www.vice.com/en_us/article/zmj7pw/theres-growing-evidence-that-the-universe-is-connected-by-giant-structures
[18] SQL 中的 NULL 你真的懂了吗?: https://blog.csdn.net/lnotime/article/details/104847946
[19] 9527q: https://github.com/ruanyf/weekly/issues/1126
[20] 戴森印象记: https://www.changhai.org/articles/miscellaneous/people/Dyson.php
[21] AWS 精萃介绍: https://hassenchaieb.com/aws-good-parts/
[22] 适合自己架设的开源远程办公软件: https://ungleich.ch/u/blog/remote-working-with-opensource-sustainability/
[23] 创业公司的23条规则: https://www.joisig.com/rules-software-startup-minimum-hassle
[24] 中国地图坐标简介: https://abstractkitchen.com/blog/a-short-guide-to-chinese-coordinate-system/
[25] SQLite vs MySQL vs PostgreSQL:关系数据库管理系统的比较: https://www.digitalocean.com/community/tutorials/sqlite-vs-mysql-vs-postgresql-a-comparison-of-relational-database-management-systems
[26] 齿轮原理: https://ciechanow.ski/gears/
[27] 高性能前端架构: https://www.debugbear.com/blog/performant-front-end-architecture
[28] 一次浏览器前端加密的逆向工程: https://blog.jonlu.ca/posts/decrypting-blind?ref=hnf10
[29] openVidu: https://openvidu.io/
[30] GitHub 官方 App: https://github.blog/2020-03-17-github-for-mobile-is-now-available/
[31] bigbluebutton: https://github.com/bigbluebutton/bigbluebutton
[32] fastai-cnn-camera-app: https://github.com/TylerNoblett/fastai-cnn-camera-app
[33] Hand Mirror: https://handmirror.app/
[34] jira_clone: https://github.com/oldboyxx/jira_clone
[35] vardbg: https://github.com/CCExtractor/vardbg
[36] AmIUnique: https://amiunique.org/
[37] Commento: https://commento.io/
[38] Mirage JS: https://miragejs.com/
[39] 几何艺术占位符图像: https://generative-placeholders.glitch.me/
[40] socode.pd: https://socode.pro/
[41] zicjin: https://github.com/ruanyf/weekly/issues/1128
[42] CS246:大数据挖掘: http://web.stanford.edu/class/cs246/
[43] 性别中性用词: https://github.com/joelparkerhenderson/gender_inclusive_language
[44] Awesome Open Source: https://awesomeopensource.com/
[45] awesome-icons: https://github.com/vkarampinis/awesome-icons
[46] 核动力破冰船: https://www.rferl.org/a/the-story-of-russian-icebreaker-ships/30363257.html
[47] 鱼雷的历史: https://www.historynet.com/us-torpedo-troubles-during-world-war-ii.htm
[48] Google Stadia 的错误是选择了 Linux: https://medium.com/@ajit.dhiwal/google-stadia-was-launched-a-few-months-ago-to-much-fanfare-8b9466ced176
[49] 《艰难时期的横向思考》: https://creativesamba.substack.com/p/lateral-thinking-during-troubled
[50] HN 读者: https://news.ycombinator.com/item?id=22597919
[51] 《iPad 的失败》: http://ignorethecode.net/blog/2020/01/29/the_failure_of_the_ipad/
[52] HN 读者: https://news.ycombinator.com/item?id=22153034
[53] Lorin Hochstein: https://lorinhochstein.wordpress.com/2020/01/26/rehabilitating-you-cant-manage-what-you-cant-measure/
[54] 《2019年是全球气温第二高的年份》: https://time.com/5765489/ocean-temperatures-warmest-ever/
[55] Ryan Dahl: http://www.stephendiehl.com/posts/decade.html


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存