这里记录每周值得分享的科技内容,周五发布。
本杂志开源(GitHub: ruanyf/weekly),欢迎提交 issue,投稿或推荐科技内容。
周刊讨论区的帖子《谁在招人?》,提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。
上海正在举办白玉兰冰雪节,搭建了本地难得一见的室外真冰溜冰场。(via)
我看到一个故事,很有启发,给大家讲一下。
挪威和孟加拉是两个截然不同的国家,但是它们有一个共同点:渔业都是两国的主要产业,很多人以打渔为生。
挪威渔民非常有钱,挪威是世界上最富裕的国家之一,人均 GDP 接近8万美元。
孟加拉国属于世界最贫穷的国家,人均 GDP 大约2000美元。
同样是打渔,为什么渔民的收入相差那么大?
你可能马上就会想到,他们的设备不一样,影响了收入。挪威渔民拥有大型现代化渔船,接受过各种培训,只要几个人就能捕到大量的鱼,所以收入高。孟加拉渔民只有小渔船,捕鱼能力有限,所以收入低。
上个世纪70年代,发生了一件事情。挪威向孟加拉国赠送了现代化渔船,作为援助。
孟加拉渔民现在有了同样的设备,能够提高收入吗?
答案还是不能。仅仅过了一年,这些现代化渔船就无法使用了,援助行动以惨败告终。孟加拉渔民缺乏相应的知识和技能,无法操作挪威渔船,同时也缺乏进行维修的基础设施和零配件,没有任何学校教渔民怎么修理这些船。现代化设备在孟加拉渔民手里,很多功能发挥不出来,出海遇到故障,只有眼睁睁看着整艘船坏掉。
一条现代化渔船,其实不仅仅是单纯的一条船,而是许多千丝万缕的因素联合在一起,使它能够建造出来,并得以良好地运行。
这件事的启示就是, 一个国家比另一个国家富裕,很大程度上并不取决于人民是否努力工作 (孟加拉人的努力程度,事实上可能远胜于挪威人),也不取决于设备,而是取决于许多其他因素,比如资本、知识技能、基础设施、销售渠道等等。所有这些外部因素,才是国家富裕的根本原因,人民的努力不是决定性因素。
这个道理放到人的身上,也是一样的。 人与人的收入不一样,原因不是甲比乙更努力,而是很多外部因素综合起来的结果。 甲拥有的资本、技能和环境条件超过了乙,使得甲所在的层次高于乙。一个餐厅服务员,无论怎样努力,收入恐怕都不会超过基金经理,道理就在这里。
这告诉我们,如果你想真正地提高收入,努力仅仅是一部分的因素,更重要的是,你必须设法提升自己的资本、技能和环境的层次。
就像第21期说过的,你需要的不是“水平方向的努力”,而是“垂直方向的努力”。
React 和 Vue 是国内最流行的两个前端框架,孰优孰劣的争论,就从来没有停息过。只要有人提一句:“我觉得 A 比 B 更好”,下面肯定就是一堆回帖。
- “ Vue 只适合小项目,大项目扛不起来”
- “ React 组件太复杂,代码组织乱!“
- “ Vue好上手,岗位多”
- “ 大厂基本都用 React,不用 Vue ”
其实大可不必,它们各有特点,都能解决前端开发的问题,你只要选择更适合自己风格的那种就可以了。这就像不同品牌的汽车,都能开到目的地,只是你开起来顺不顺手而已。
不过,这两个框架的对比和争论,并非全无意义。
1、面试时,React 和 Vue 各自的特点是常见的面试题。
2、如果你想做架构师或技术负责人,进行技术选型时,必须对各个框架都非常了解。
3、通过对比,可以抽象出一些本质上共通的东西,比如算法、工程化方法、规范等等,帮你构建技术壁垒,保持核心竞争力。
本周的课程资料,就是一个讲解 React 和 Vue 对比的视频课程 《Vue3.0 PK React17 核心力特训营》 (上课时间:2月1日-2月3日每晚 8:00)。它从框架原理开始讲起,再到现实业务场景,最后抽象二者的底层,层层递进,帮你深入掌握这两个框架的异同。
该课程由开课吧提供,主讲老师是前百度、360架构师、Vue 3.0 contributor 大圣老师。通过这个课程,你不仅能掌握 Vue3 和 React17 设计思路和面试技巧,也能对比框架生态,了解技术选型方法论、探究框架原理。此外,还有答疑和作业讲解,并能获得大圣老师精心总结的独家资料:
- 《Vue 和 React 框架大厂面试题通关指南.pdf》
- 《Vue3 & React17 进阶知识地图》
训练营原价399元,周刊读者只需 0.99元 !优惠价仅限200名,微信扫描下面的二维码,就可以加入。
1、超级充电弓
上海市开始在公交电站部署超级充电弓,为电车充电。充电弓酷似路灯,车辆进入停车位以后,会降下一张充电装置,搭住藏在超级电容公交车车顶的受电弓。
该充电弓是世界功率最大的汽车充电装置,可以达到 900kW,同时也拥有世界“最快”充电速度,充电40秒,续航10公里。充满需要8分钟,可跑40公里。而且,它非常节省空间,适合部署在城市马路边。
2、破解人脸识别
清华大学的 RealAI(瑞莱智慧)团队使用一张打印的彩色人脸图片,测试能否通过手机的人脸识别。他们选取了 20 款手机,覆盖不同价位的低端机与旗舰机。
最终,除了一台 iPhone11,其余安卓机型全部解锁成功,完成整个破解过程只花了 15 分钟。测试人员成功解锁手机后,任意翻阅机主的微信、信息、照片等个人隐私信息,甚至还可以通过手机银行等个人应用 APP 的线上身份认证完成开户。
iPhone 的人脸识别使用 3D 摄像头,所以可以区分平面照片和真实人脸。后来,RealAI 团队又尝试用这种方法,测试同样带有 3D 摄像头的华为 Mate 40 Pro,一样未获成功。
3、空气冷凝机
以色列公司 Watergen 推出一款空气冷凝机,可直接转换空气中的水气成为饮用水,一天产量为5000-6000公升,如果一个人一天所需要的水量为1公升的话,则满足5000人的生存需求。
它的原理是吸入空气,通过内部的热交换系统,将空气的温度降至露水点,从而获得液态水。它需要外部供电,Watergen 号称该系统的产水效率是其他系统的五倍以上,非常适合解决沙漠地区或者艰困环境的饮水问题。
4、白宫官网改版
1月20日,美国新总统拜登上任,白宫官网 whitehouse.gov 当天就改版了。
2017年,特朗普政府将白宫官网的 CMS(内容管理系统)从 Drupal 改成了 WordPress,原因是后者的维护和开发比较省钱,据说每年可以为美国纳税人节省300万美元。
这一次,拜登政府的改版沿用了 WordPress,并没有改回奥巴马时代的 Drupal,看来不打算推翻特朗普政府的这个决定。值得一提的是,改版后的官网性能表现很好,Lighthouse 得分接近满分。
业界应用最广的开源搜索工具 Elasticsearch 上周修改了许可证,新版本将不允许云服务商使用它提供服务。这主要是针对亚马逊公司,后者出售 Elasticsearch 搜索服务,开源项目的维护者拿不到任何好处,等于是为亚马逊免费打工。
亚马逊立刻回击了,宣布将提供自己的开源版本。Elasticsearch 等于是为自己找了一个竞争对手,而且对手有无限资源。这件事的启示就是,开源时要想好,如果大公司拿你的代码挣钱,也不会分给你,你怎么办。
6、一句话消息
- 加州的洛杉矶港去年下半年至今,有许多巨大的集装箱船,导致港口水道都堵住了。这是因为美国大量从亚洲进口货物,港口的46个泊位全部停满,还有几十艘集装箱船在港外下锚,等着泊位空出来。
- 谷歌宣布,今年3月15日起,Chrome 浏览器的开源版本 Chromium 不再能够调用谷歌 API,这意味着Chromium 的书签、浏览记录等将都无法同步了。
- 一种叫做 Brood X 的蝉是美国的主要蝉类,每17年繁殖一次。它上一次出现是2004年,它的卵会在地下等17年才孵化,今年又将重新出现。
- 考古学家在英国发现两枚11世纪北宋时期的中国硬币。由于当地离海边不远,并出土过中国陶瓷,因此猜测中国硬币是中世纪的陶瓷商人携带过来的。
- 马斯克宣布,一旦科学界找到最佳的二氧化碳捕捉技术,他将为该技术捐款1亿美元。
1、中国的大坝(中文)
中国有10万座水坝,是世界水坝最多的国家。本文以大量的图片,介绍不同类型水坝的知识。
2、我开发付费 Chrome 插件的经历(中文)
作者介绍了在 Chrome 商店发布付费插件的过程,总收入有几百美元。(@timqian 投稿)
3、如何用 GitHub Actions 更新 WordPress 网站(中文)
本文介绍使用 GitHub Actions 将仓库里面的 Markdown 文章,远程发布到 WordPress 网站。(@zhaoolee 投稿)
4、二因素登陆 2FA 不能防止网络钓鱼(英文)
很多人有一种误解,只要开启了二因素登陆 2FA,就可以保证个人账户的安全。作者指出,2FA 只是保证其他人不能登录你的账户,但是防止不了网络钓鱼。
5、Tab 还是空格?(英文)
本文讨论了代码缩进使用 Tab 或空格的利弊,说得很有道理,并提供了推荐的缩进方式。
6、使用 GNU Stow 管理配置文件(英文)
Linux 系统有很多配置文件,比如.bashrc
、.vimrc
等等,一个很方便的管理方法,就是把它们放到一个 Git 仓库,然后使用 Stow 这个工具产生软链接。
7、2021年 favicon 的设置(英文)
网站的 favicon 应该怎么设置?这篇文章给出了最新的建议。
8、Gmail 搜索语法(英文)
本文通过一个例子,讲解 Gmail 的搜索语法。
9、我怎样建立没有一家全职员工的公司(英文)
作者讲述自己创立 Gumroad 这家公司,年收入达到1100万美元,但是没有一个全职员工,连作者自己都不是全职投入。这可以算是创业的理想境界。
10、视频编码器的专利费(英文)
H.264 视频编码器需要交纳专利费,这篇文章介绍了这方面的情况。为了保证可以自由地对视频进行编码,Mozilla 一直在推动 AV1 这样的开源编码器。
1、Sosumi
一个 Linux 系统的 Snap 包文件,可以在 Linux 系统运行 MacOS。
Brave 浏览器宣布支持 IPFS 协议,可以直接在地址栏打开 IPFS 地址。
一个将网页存档的工具,可以将 HTML、CSS、JS、图片、媒体文件都保存下来,供日后查看。这里是教程。
4、PyG2Plot
Python 的数据可视化图表生成工具,基于蚂蚁集团开源的 G2Plot 封装。(@hustcc 投稿)
一个开源的辅助驾驶系统,可以自动车道居中和自适应巡航控制,已经支持85种车型。(@dllen 投稿)
一个在线工具,可以将 Swagger 文档(yaml 或者 json 格式)导出为PDF、Markdown、EPUB、HTML 等格式。(@docs4dev 投稿)
7、Basemark
一个可以跑分的网站,用来测试浏览器的性能。
8、LocalCDN
一个浏览器插件,将常用的前端 CDN 库集成在插件里面,避免发出网络请求,加快加载速度,以及降低隐私泄漏的可能。
9、X6
蚂蚁集团数据可视化工具 AntV 旗下的图编辑引擎,用来在网页上生成 SVG 图形。(@NewByVector 投稿)
这个库把 Vue3 源码中最核心的逻辑剥离出来,只留下核心逻辑,以供大家学习。带有详细的中文注释,以及完善的输出,帮助用户理解运行时流程。(@cuixiaorui 投稿)
这是上一期介绍的 freeCodeCamp 初学者免费教程的中文版,由志愿者翻译的。
这个仓库收集 GitHub 上面的各种开源游戏。
4、机器学习面试题
这个英文网站收集了一些机器学习面试的基本问题 。
5、Radiance
该网站收集了全世界几十个国家的艺术家创作的 VR 视频,可以戴 VR 眼镜欣赏。
该网站展出各种根据数学概念创造的艺术品,比如上图这样的编织品和雕塑品。
日本花卉艺术家 Azuma Makoto 建造的 Paludarium,是一种密封的玻璃容器,为植物创造一个自给自足的环境系统。
Paludarium 不仅可以控制内部温度和湿度,还具有喷雾和滴灌系统,给植物供水。
顶部的风扇起到通风的作用,并且还有扬声器给植物播放音乐。
这个机器就这样通过人工方式,模拟了自然界的雨、风、光、声,在密封容器里面实现了生态循环,使得人们可以不受外部环境的影响,而欣赏植物的美。
一位美国艺术家将各种玻璃艺术品,交给快递公司去运输,故意不加任何防护措施,使得快递过程中造成的玻璃破碎,也成为艺术品的一部分。
1、软件业的停滞
软件技术的进步,在1996年左右基本停滞了。
1996年之前,我们取得的软件成果:LISP,Algol,Basic,APL,Unix,C,SQL,Oracle,Smalltalk,Windows,C ++,LabView,HyperCard,Mathematica,Haskell,WWW,Python,Mosaic,Java,JavaScript,Ruby,Flash,Postgress。
1996年以后的软件成果:IntelliJ,Eclipse,ASP,Spring,Rails,Scala,AWS,Clojure,Heroku,V8,Go,Rust,React,Docker,Kubernetes,Wasm。
后面那些软件成果,都是对此前技术成果的增量改进。比如,Rails 通过良好的结构化方式将一堆现有技术粘合在一起,从而极大地提高了 Web 应用程序的生产率,但是它本身没有发明任何新东西。同样地,V8 通过扩展 Smalltalk 和 Java 中发明的技术,加速 JavaScript 执行速度。
自从1996年以来,几乎所有东西都是巧妙地重新包装和重新设计了先前的发明。
为什么1996年以后,软件技术突然停止了进展?1996年到底发生了什么?
我认为原因就是互联网开始繁荣。突然之间,程序员有史以来第一次可以迅速致富,大量聪明的有抱负的人涌入了硅谷。但是,你不能在创业公司做研究,基础技术需要很长时间酝酿,并且风险很大。合理的商业计划是利用 VC 的资金,将其投入到最优秀的程序员,让他们改进当前糟糕的技术,然后兑现获利。创业公司没有发明基础技术的时间。
如今,只有像 Google / Facebook / Amazon / Microsoft 这样的大型公司才有金钱和时间来创造新技术,但是他们似乎只对以最小的破坏性方式解决自己的问题感兴趣。
一个叫克劳斯纳(Klausner)的人,沉迷于声音。他认为,世界上有很多声音因频率高而无法听到。
有一次,他去看病。他跟医生说,他正在尝试发明一种机器,可以降低声音的频率,让那些无法听见的声音可以被听到。
后来,机器终于造好了。
他在院子里首次实验,邻居在花园里剪玫瑰,他从耳机里听到玫瑰在尖叫。
第二天,他做了一个更大的实验。他拿斧头砍一棵大山毛榉树。他听到树发出的深沉而悲惨的呻吟。
克劳斯纳赶回屋子,给医生打电话:“请过来,快来。我想让其他人听到。太难以置信了!”
医生同意过来,听听耳机里面的声音。
医生到了以后,克劳斯纳第二次砍树时,一个大树枝掉下来,把机器砸毁了。克劳斯纳问医生是否听到了呻吟声,医生说没有听到任何声音。
克劳斯纳非常难过,最后他要求医生在树的伤口上面涂一些碘酒,医生同意了。
1、
协和飞机是一架超音速客机,于1969年首飞,距今已经超过50年。1969年的人们大概以为,我们现在应该生活在太空中,或者到处都是飞行汽车,而不会想到今天最快的客机依然比协和飞机慢。
-- Lyn Alden
2、
我和其他工程师一样,都有 MacBook Pro。再过几年,所有这些机器都会被淘汰,被新的 ARM 芯片的型号取代。到那时,开发者会觉得,在ARM 机器上开发,但是在 x86 服务器上进行部署的想法,将是令人不舒服的。因此,苹果公司的“换芯”行动,会大大加速服务器的变革,从 x86 架构转向 ARM 架构。
3、
一个复杂的大型软件,即使支持某些简单的功能,也无法以直观、易于使用的方式呈现。
4、
要么是用户控制程序,要么是程序控制用户。
-- 理查德·斯托曼
5、
C 语言很保守,变化和增长非常缓慢。这其实是一项吸引人的功能,开发人员常常低估了它。
2020年的本周(第 93 期):漫游类的游戏,将会越来越多
2019年的本周(第 41 期):如何看待互联网公司裁员?
这个周刊每周五发布,同步更新在阮一峰的网络日志和微信公众号。
微信搜索“阮一峰的网络日志”或者扫描二维码,即可订阅。
(完)