Skip to content

Tags: Ghost-47/weekly

Tags

issue-182

Toggle issue-182's commit message
这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/2032),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202111/bg2021110101.jpg)

2021世界建筑摄影大赛入围作品:重庆来福士广场。([via](https://edition.cnn.com/style/article/architectural-photography-awards-2021-shortlist/))

很多 App 都有“新人优惠”、“首单优惠”,提供很诱人的条件,吸引新用户。

最近,有一个[案件](https://finance.sina.com.cn/chanjing/cyxw/2021-07-16/doc-ikqcfnca7224835.shtml)跟“新人优惠”有关,很值得谈一下。

![](https://cdn.beekka.com/blogimg/asset/202111/bg2021110501.jpg)

事情是这样的。2019年底,上海杨浦区某商场写字楼搞活动,只要是商场 App 的新用户,都可以获得500积分,抵扣一小时的商场停车费(价值人民币10元)。

![](https://cdn.beekka.com/blogimg/asset/202111/bg2021110302.jpg)

结果,写字楼里面120多个白领使用接码平台,反复注册新用户,申领积分抵扣停车费,让商场损失37万多元,最多一辆车抵扣的停车费超过万元。所谓“接码平台”,就是提供各种手机号,代接验证码,每条收取一定的费用。

商场报警以后,警方找到了那120多位白领,不仅要他们补交停车费,还将其中金额较大的20多人以诈骗罪起诉,目前已有两人获刑。

所以,大家知道了吧,滥用“新人优惠”可能会触犯法律,构成诈骗罪。

但是,我对这个案件有些不一样的看法。我觉得,白领贪图小便宜固然不对,但是商场应该负大部分责任,它的损失很大程度上是自己造成的。

商场设计这个活动时,就应该预料到,有人会用多个手机号,多次注册新用户领取优惠。但是,它没有设计任何预防措施,其实只要规定一个车牌号只能享受一次优惠,就能完全避免损失。等到事情真的发生了,它也没有第一时间终止活动,而是听任损失不断扩大。

所以,商场自己的疏忽和消极应对,我觉得才是这件事的主要原因。只要设计活动方案时,稍微周全一点,就能避免这个漏洞,不会去考验人性了。法官如果判决,商场必须自己承担大部分损失,也是完全说得通的,而且还能警示其他 App。

值得一提的是,警方在追缴停车费的过程中,还将开发运营“接码平台”的四个犯罪嫌疑人[抓获](https://news.sina.com.cn/c/2021-07-16/doc-ikqciyzk5864403.shtml)。

> “某大学软件学院在读研究生史某某,开发运营了一款专为用户提供虚拟手机号码及验证码服务的软件,在明知用户利用该软件骗取商家优惠福利后,仍积极提供支持,并从中非法牟利十万余元。
>
> 近日,上海市杨浦区人民法院以犯帮助信息网络犯罪活动罪,判处被告人史某某有期徒刑六个月,罚金人民币一万元。”

这件事告诉我们,程序员也是有风险的。开发接收短信的自动化工具,本身不违法,但是用户如果用于非法用途,就可能会被法律追责。所以,开发时一定要问清楚,用户用来干嘛。

P6 是阿里集团内部的“资深工程师”级别,也是对外招聘的主要级别。

拥有几年工作经验、能够参与重大项目、但没有担任过主管的社招工程师,一般都会给 P6。特别优秀的校招毕业生,也会给 P6,以后再根据工作表现,进行晋升。

![](https://cdn.beekka.com/blogimg/asset/202111/bg2021110405.jpg)

软件工程师现在短缺,只要达到 P6 的标准,不管是阿里还是其他公司,通常都会录取。普通的程序员准备应聘和面试时,都是以 P6 为目标。

P6 的招聘,最看重的是动手能力,但也会考察算法知识,看看应聘者是否有扎实的基础和潜力。一些性能要求高的项目,对算法知识的考察就会更多一些。

![](https://cdn.beekka.com/blogimg/asset/202111/bg2021110406.jpg)

本周介绍的课程,就是针对前端工程师的算法直播课 **《P6 工程师必会的算法原理》**。

它用两个晚上的讲课,帮助找工作的同学补充算法知识,重点讲解 Vue 和 React 这两个框架背后的算法(比如 DOM Diff),并会针对性地介绍如何准备大厂面试。

![](https://cdn.beekka.com/blogimg/asset/202111/bg2021110407.jpg)

直播的上课时间是11月9日(下周二)和10日(下周三)的晚上8点。课程主办方是国内 IT 培训的独角兽企业“开课吧”,在课程之外,还会配备助教答疑,以及用于交流的学习讨论群,并提供幸运学员的简历修改。

![](https://cdn.beekka.com/blogimg/asset/202111/bg2021110408.jpg)

微信扫描上方的二维码,或点击[这个链接](https://wx.kaikeba.com/xiaoke/market/landing-page/v2/1E59S4B4E9vbH1TrNnx?kol_ad_code=YZ6VFCQbMxN0fDdUJAh),了解课程详情并报名,仅需象征性支付 **0.99元** 报名费。听课的同学还会获赠前端的学习资料。

1、[巨型水稻](https://news.mydrivers.com/1/779/779562.htm)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082911.jpg)

新品种巨型水稻在重庆种植成功。这种水稻平均高度1.8米,最高超过2米,比普通水稻高出近一倍。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082912.jpg)

巨型稻由于体型大,能承载的穗粒也多,产量要多于普通水稻。但是,它最大的优势在于吃水很深,田里可以蓄60公分到80公分的水。这个深度就可以搞稻鱼共生的项目:养鱼,养虾,养蟹。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082913.jpg)

这样既提高农民的收入,又有利于形成生物循环:水稻为动物提供养料和微生物,而动物的排泄物又反过来供养水稻,最终实现化肥、农药、抗生素“零使用”。

2、[风力发电墙](https://www.dezeen.com/2021/08/26/wind-catching-systems-floating-offshore-farm/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090108.jpg)

平常看到的风力发电机,都是巨大的叶片在空中旋转。一家挪威公司另辟蹊径,发明了风力发电墙,采用一个网格状的钢架,上面安装了100多个小型风力涡轮发电机。

这种墙高达300多米,跟埃菲尔铁塔差不多。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090109.jpg)

该公司称,这样可以最大程度地利用风能。一面墙的发电量,相当于五个现有的最大的风力发电机,同时发电价格还可以减半。该公司计划未来三年内建成第一面这样的墙。

3、[“近零能耗”样板楼](http://www.bj.xinhuanet.com/2021-08/11/c_1127749972.htm)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081104.jpg)

国内首个“近零能耗”样板楼在北京通州区亮相。该楼基本不用外部能源,完全自身供能,支持空调和暖气,一年四季保持室温20摄氏度左右。

楼里分别安装了地源热泵、空气源热泵,光伏发电板等能源装置。热泵从地下“捕捉”地热能,从空气中“吸收”空气能,光伏发电板则通过太阳能发电。然后,地下一共埋了5个储能罐,将这些能量储存起来,为整栋楼供电、冬季供热、夏季降温。

4、[防中风头带](https://www.zeitmedical.com/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081307.jpg)

中风就是脑血管突然破裂,是一种非常危险的突发疾病。一旦发病,轻者脑神经损伤,重者大脑功能丧失,甚至丧命。更可怕的是,中风很难提前发现,发病后必须立刻救治,一分钟也拖不得。

一家美国公司发明了防中风头带,会监控脑电波,一旦发现脑电波出现类似中风的迹象,会立刻向配对的手机发送警报,然后手机自动拨打急救电话,报告坐标。

除了防中风,它也可以用于脑电波的24小时监控。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081308.jpg)

5、[土壤发电](https://sifted.eu/articles/bioo-batteries-electricity-soil/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090507.jpg)

一家西班牙公司宣布,开发出了“土壤发电”技术。土壤里面的微生物分解有机物,会释放出电子,从而产生能量。只要把阳极和阴极插在土壤里面,就可以获取电流。

这种电流非常微弱,该公司说,一平方米的肥沃土壤每年可以产生200wh的电能(0.2度电)。这点电能没有其他用途,只能为农田里面的传感器供电,测量土壤湿度、pH 值和气温等,可以解决这些装置的供电问题,降低成本。它还可以为公园绿地里面的 LED 小灯泡供电。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090508.jpg)

6、[蓝牙追踪](https://www.theregister.com/2021/09/04/bluetooth_headphones_tracking_oslo/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090601.jpg)

每个蓝牙设备都有一个硬件地址,连接时可以获取。很早就有人提出,可以使用这个地址,追踪用户。为了避免被追踪,每次蓝牙连接时,这个地址都应该随机化,但是很少有厂商这么做。

一个挪威大学生将这作为自己的业余项目,看看现实中能不能做到追踪用户。他在挪威首都奥斯陆骑了12天自行车,共计300公里,收集一路上的蓝牙设备信号。

![](https://cdn.beekka.com/blogimg/asset/202111/bg2021110502.jpg)

他一共发现了9,149个独特的蓝牙设备,其中129个蓝牙耳机被探测到了多次。他将每个设备的发现地点画上地图,其中一个耳机还真的确认了所有者。所以,通过蓝牙追踪用户是可能的,门卫、停车场这样的地方,如果部署了蓝牙追踪,完全可以了解用户的动态。

1、[张忠谋演讲:经营人的学习与成长](https://zhidx.com/p/301575.html)(中文)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021103001.jpg)

台积电创始人张忠谋的最新演讲,介绍他怎么创立和经营管理台积电。

2、[解读国家科学技术大奖](https://zhuanlan.zhihu.com/p/429247683)(中文)

通过国家科学技术大奖,可以知道我国的重大科技突破点在哪里,看出政府的导向。

3、[ADS-B 信号不能对境外提供](https://www.guancha.cn/ZhangZhongZuo/2021_11_03_613334.shtml)(中文)

![](https://cdn.beekka.com/blogimg/asset/202111/bg2021110402.jpg)

ADS-B 是飞机发出的广播信号,明码对外发送自己的位置、高度、速度、航向等信息。连续接收信号,就可以描绘出飞机的航行轨迹,并实时获取其飞行状态。

4、[如何找到数组里面的唯一数字](https://yonatankra.com/how-to-find-a-unique-number-in-a-list-of-pairs/)(英文)

本文介绍一道简单的算法题:数组的所有成员都成对出现,只有一个成员除外(比如`[1,3,17,3,1]`),如何快速找到这个成员。

5、[CSS 属性 accent-color](https://davidwalsh.name/css-accent-color)(英文)

本文介绍一个新的 CSS 属性`accent-color`,可以设置表单的选择框控件(checkbox 或 radio)选中时的颜色。

6、[NGINX 如何将环境变量注入网页](https://www.innoq.com/de/blog/nginx-ssi-env/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021093006.jpg)

NGINX 可以向网页写入内容,本文演示应该怎么做。

7、[为什么数字藏品在技术上不可靠](https://threadreaderapp.com/thread/1445506673108406286.html)(英文)

数字藏品(NFT)是一种基于区块链的数字资产证明机制,目前非常热门。本文讨论了一些技术细节,认为它在技术上有缺陷,作为资产可能并不合适。

8、[如何从谷歌搜索结果删除你的网页](https://btao.org/2021/10/03/removing-from-google/)(英文)

本文介绍一个简单的方法,只要加入一行 HTML 代码,就可以从谷歌搜索结果里面,删除你的网页。

9、[Google、Twitter 和 Spotify 如何处理内部文档](https://blog.doctave.com/2021/09/07/how-google-twitter-and-spotify-build-culture-of-documentation.html)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090812.jpg)

软件公司的内部文档,往往是一个痛点,要么根本没有文档,要么就是杂乱不堪,分散在代码、Word 文件、Confluence 等各处。软件公司越大,这个问题越严重,本文介绍三家大型互联网公司如何处理内部文档。

1、[Waydroid](https://waydro.id/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092301.jpg)

一个 Linux 系统的安卓容器,可以让安卓应用在 Linux 桌面电脑的容器里面运行。

2、[fleek](https://fleek.co/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092302.jpg)

一个帮助用户将网站托管在 IPFS 网络的服务,提供免费账户。

3、[Agora Flat](https://flat.whiteboard.agora.io/)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102904.jpg)

一个前后端都开源的在线教室,企业可以用来作为自己的内部培训工具,或者对外的远程教学工具。([@Leooeloel](ruanyf#2019) 投稿)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102905.jpg)

4、[Motion One](https://motion.dev/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092303.jpg)

一个 JS 动画库,底层使用 Web Animations API,上层则是自己设计的简单易懂的语法,可以很轻松让网页产生动画效果。

5、[Semi Design](https://semi.design/zh-CN)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021103006.jpg)

抖音前端团队推出的设计系统,支撑字节内部近千平台产品。目前提供50多个组件、国际化14种语言、支持 TypeScript、SSR 等特性。([@shijiatongxue](ruanyf#2022) 投稿)

6、[smooth-signature](https://github.com/linjc/smooth-signature)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021103005.jpg)

带笔锋的手写签名 JS 库,支持 PC /移动端使用,另有[小程序版](https://github.com/linjc/mini-smooth-signature)。([@linjc](https://github.com/ruanyf/weekly/issues/2020) 投稿)

7、[Sway](https://swaywm.org/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092304.jpg)

Linux 系统的平铺式窗口管理器,完全兼容 i3。区别是,i3 底层的显示协议是 X11,而 Sway 是 Wayland。

8、[微图](https://devtool.tech/tiny-image)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021103007.jpg)

一个批量压缩图片的网页工具,纯浏览器端压缩,不经过服务器,速度较快。([@shfshanyue](ruanyf#2021) 投稿)

9、[Tool.Graphics](https://tool.graphics/geometric)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092405.jpg)

这个网站可以生成各种几何图形填充的随机图片,并且能够可以调节参数。

10、[Read Aloud](https://github.com/ken107/read-aloud)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092413.jpg)

开源的浏览器朗读插件,可以朗读整个网页或选定文本,支持40多种语言,包括中文。

1、[日本传统色系](https://zh.wikipedia.org/wiki/%E6%97%A5%E6%9C%AC%E4%BC%A0%E7%BB%9F%E8%89%B2%E7%B3%BB)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092110.jpg)

维基百科资料,列出了日本古典文学里经常出现的颜色,常用于和服或其他日本传统艺术和手工艺品。

2、[安全的互联网产品](https://foundation.mozilla.org/en/privacynotincluded/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092214.jpg)

Mozil 基金会在官网上列出了,经过该组织审核,确认为安全的、可以保护用户隐私的硬件和软件名单。

3、[Modern Unix](https://github.com/ibraheemdev/modern-unix)

该仓库收集传统 Unix 命令行工具的现代替代品,比如 lds 替代 ls、ripgrep 替代 grep。([@ameizi](ruanyf#2017) 投稿)

4、[awesome-console-services](https://github.com/chubin/awesome-console-services)

该仓库收集各种供命令行使用的外部服务,比如`curl ip-api.com`可以查看当前 IP 地址对应的地理位置。([@ameizi](ruanyf#2018) 投稿)

5、[awesome-metaverse](https://github.com/shadowcz007/awesome-metaverse)

该仓库收集元宇宙相关资源。([@shadowcz007](ruanyf#2023) 投稿)

1、[废弃的摩托罗拉总部](https://www.abandonedspaces.com/industry/motorola.html)

1976年,摩托罗拉公司将总部搬到了芝加哥郊区。

手机就是在这里发明的,它使得摩托罗拉成为无线通信巨头。但是,这里也见证了,这家公司逐渐走下坡路,最终分崩离析。

2007年至2009年,连续遭受重大亏损后,摩托罗拉决定拆分为两个独立的公司,随后决定将总部从郊区搬到芝加哥市中心。

原来的总部被废弃后,2017年决定拆除,改建为多功能综合体。下面是拆除前的一些照片,墙上还留有没有撕掉的标语和宣传画,记录了这家公司的兴衰。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081417.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081418.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081419.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081420.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081421.jpg)

2、[埃舍尔未完成的画](https://www.universiteitleiden.nl/en/news/2020/04/how-mathematician-hendrik-lenstra-completed-an-unfinished-artwork-by-escher)

荷兰画家埃舍尔(1898年-1972年)以创作视觉错误绘画而闻名。

在他晚年,有一幅作品描绘了一个观众正在画廊里观看画作,画廊的窗户与城市的街景融合在一起。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081504.jpg)

不知道什么原因,这副画的中心部分没有画,而是留出一个空白,埃舍尔写上了自己的签名。

2000年,一个美国数学教授在飞机上翻看杂志,偶然看到了这副画。他突然意识到,这是一个螺旋扩张,可以用数学公式表达。

他就写了一个程序,让软件自动生成这幅画中间缺少的部分。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081503.jpg)

1、[斜率比截距重要](https://matt-rickard.com/hire-slope-not-intercept/)

忘掉 y 轴的截距吧,长远来看,斜率是唯一重要的事情。

如果 x 轴表示时间,y 轴表示你要实现的目标,那么实现目标的过程可以画成一条直线。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081907.jpg)

这条直线可以用两个变量描述:y 轴截距(直线与 y 轴的交点)和斜率(y 随时间变化的速度)。

如果我们把 y 轴截距看成是你的起点,那么斜率就是你为了实现目标,而适应、学习和付出努力的前进速度。

**即使一条线的起点远低于另一条线,只要它的斜率更大,终究会超越前一条线。**

你可能听过这样的建议:做一个终身学习者,每天学一点,不断进步。很少有人能够遵循这条建议,因为在开始后的很长时间内,根本看不到有什么效果。时间周期越短,直线看起来越平坦,当你远远落后时,这是非常令人沮丧的。

但是,只要坚持下去,保持向上的斜率,长期以后,你将远远地超越原来的人生道路。

记住,短期总是比我们想象的要长,各种打击足以让你灰心丧气,但是 **长期总是比我们想象的要短。**

同一个道理,在招聘时,有潜力但经验不足的候选人,长期来看,比经验丰富但潜力不足的候选人,对公司更有帮助。

总之,当事情没有达到你的目标时,不要放弃,每一个伟大的事业都始于一个小小的念头。学习一项新技能,每天进步一点点,短时间内,一切看起来都是老样子,但是随着时间的推移,改进会持续累积起来,进步会越来越明显。

1、

我很讨厌每个网站都使用 Discord 作为讨论区。

这样很难搜索以前的内容,更糟的是,不太容易在 Discord 切换身份。我不愿意将在 Discord 使用的游戏爱好者身份,与咨询软件问题的用户身份混在一起。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=28550566)

2、

有些开源软件项目欢迎协作,并鼓励外部贡献,例如 Linux 内核。

还有一些开源项目几乎与世隔绝,无法容忍外人插手,GIMP、GTK、Gnome 的维护者就属于后一类。除非你是内部集团的一部分,否则你的代码不会得到任何合并。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=28579444)

3、

现在的社会不是为了人的发展,而是人为了外部世界而发展,反过来了。

-- [骆华忠](https://cn.nytimes.com/china/20210714/lying-flat-in-china/),摘自《纽约时报》对他的专访

4、

用户研究中,有一个众所周知的事实。如果你询问用户是否需要新功能,他们通常会大叫“是的”。毕竟谁会不想要更多的功能呢?

但是,等到发布以后,你才意识到用户可能不使用这个功能。

-- [《当用户从不使用他们要求的功能时》](https://web.eecs.utk.edu/~azh/blog/featurestheywanted.html)

5、

理财的核心原则,就是两句话:“增加收入,减少开支”。

但是,这两句话相互矛盾,需要不同的技能。增加收入通常需要花钱,提高获利潜力。减少开支意味着对于投资新事物持有保守态度,这种心态会阻止你赚更多的钱。

-- [《我的十条金钱规则》](https://jonpauluritis.com/articles/my-top-10-money-rules/)

2020年(第 131 期):[你的头脑是二值逻辑,还是三值逻辑?](https://www.ruanyifeng.com/blog/2020/10/weekly-issue-131.html)

2019年(第 79 期):[我们的生活越来越依赖机器](https://www.ruanyifeng.com/blog/2019/10/weekly-issue-79.html)

2018年(第 28 期):[软件开发是真正的知识吗?](https://www.ruanyifeng.com/blog/2018/10/weekly-issue-28.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)

issue-181

Toggle issue-181's commit message
这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/1980),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102402.jpg)

日本东京有一家专门生产电梯按钮的公司,该公司把生产过的1000多种电梯按钮,做成了一面展示墙,按上去每个都会亮。孩子们和大人都很喜欢。([via](https://www.odditycentral.com/travel/pressing-1000-buttons-is-the-perfect-way-to-complete-an-elevator-button-factory-tour.html))

支付宝和微信支付,垄断了中国的移动支付,两家合计的市场份额超过90%。

虽然它们用起来非常方便,可以说完美解决了手机付款,但是,作为整个国家移动支付的解决方案,我总觉得,现在的状况是有问题的。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102803.jpg)

**支付宝和微信支付的最大问题,就是把用户锁在它们的体系里面。** 支付体系本应该是开放的,只要有手机就能支付,但是现在你首先必须是支付宝和微信的会员,然后才能支付。

理想情况下,在银行开户后就应该可以付款,但是现在多了一个步骤,就是必须将银行账户与支付宝和微信绑定。没有这一步,用户实际上无法手机支付。

此外,至少还有其他三个缺点。

(1)二维码不通用,只能用自家的应用打开,导致商户必须张贴多个二维码。

(2)不能互相转账,支付宝不能转给微信,反之亦然。同时,也不能转给他人的银行账户,只能先提款到自己的开户行。

(3)余额提现要收手续费,虽然这可能不是支付宝和微信的问题。

那么,有没有更好的移动支付方案呢?答案是有的,有一个国家已经做到了。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102906.jpg)

前不久,我读到彭博社的[一篇报道](https://www.bloomberg.com/news/articles/2021-10-06/pix-mobile-payment-how-brazil-s-central-bank-launched-platform),惊奇地发现,巴西有了一个更好的移动支付系统,胜过支付宝和微信支付。

2020年11月,巴西政府为了解决手机支付问题,推出了 Pix 系统。

它的设计很简单。首先,你到银行开户时,选定一个或多个个人标识,可以是手机号码、电子邮件、银行卡号、用户名等等,只要能够唯一识别你即可。然后,你下载政府开发的 App,输入你的个人标识,就会得到一个二维码,用来收款和付款。Pix 系统会自动把支付请求转到你的开户行或第三方支付机构,由它们来实际处理。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102805.jpg)

短短11个月内,Pix 取得了疯狂的成功,用户达到1.1亿人(巴西全国人口2.1亿)。今年九月份,这个系统的支付金额大约为890亿美元,相当于每个用户支付了800美元,最高一天发生了超过4000万笔交易。

我觉得,这个系统有很多优点,特别适合中国的需要。

它最大的优点就是开放。(1)任何支付机构都可以加入这个系统,而不是被一两家大机构把持。(2)体系内所有支付机构可以互相转款,不存在市场割裂。(3)二维码是全国统一的,任何客户端都可以读取,任何人都可以开发客户端。

最后,对于用户来说,它的转账是免费的,不存在手续费。政府向接入这个系统的支付机构收取年费,弥补运作费用。

我觉得,它比支付宝和微信支付都优越。我们国家真的应该学习,政府出面建设一个全国统一的移动支付体系。这会大大方便资金流动,带动经济发展和人民生活水平的提高,实在是一件好处无穷的事情。

过去十年,软件开发的最大变化是什么?

答案大概就是 Docker 容器的出现。以前的软件都部署在物理机或虚拟机,现在部署在一个个容器,可以快速扩缩容。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092101.jpg)

你可能听说过 K8s,它是谷歌公司的开源软件 Kubernetes(K 和 s 之间有8个字母),作用就是调度和管理容器。

Docker 的标志非常像一艘集装箱船,K8s 则像是一个控制轮船的舵盘,这就是两者的关系。想象一下,成百上千个 Docker 容器分布在不同的公有云、私有云以及边缘节点,整合成一个云原生应用,在同一个平台进行统一调度和运维,这就是 K8s 的作用。

K8s 的最大问题就是太复杂,云生态技术栈和工具集十分庞大,它的开发、管理和运维都是专门工种。个人和中小企业如果缺少这方面的专家,是不容易搞定的。

为了解决这个问题,业界有很多基于 K8s 的发行版。它们把 K8s 作为内核,在外层封装一个易用的交互界面,集成了很多周边工具,大大降低了上手门槛,就好像 Ubuntu 和 Linux 内核的关系。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102302.webp)

本周向大家介绍一个开源的国产 K8s 管理平台:[KubeSphere](https://github.com/kubesphere/kubesphere)。

它的最大特点就是易用和高度产品化,有一个体验非常优秀的控制台,让不熟悉容器的用户以非常低的成本上手,快速使用各种高级功能。整个操作过程都是向导式图形化的 UI。

下面是一段 2 分钟的演示视频,大家可以感受一下 KubeSphere 容器平台丰富的功能,以及通过 KubeSphere 操作 K8s 的简单便捷。

<iframe frameborder="0"
src="https://v.qq.com/txp/iframe/player.html?vid=h3303juxyex"
allowFullScreen="true" width="600" height="400"></iframe>

在定位上,KubeSphere 针对企业级应用设计,注重安全性和稳定性,提供秒级监控与告警通知,内置日志、审计、事件检索,还提供计量计费,可实现 K8s 基础设施的可度量运营。它还提供多集群和多云管理,帮助企业实现业务高可用,做到自动化运维。

它也充分考虑了国情,兼容各种既有的企业 IT 管理流程,可平滑整合到现有 IT 体系,让企业不用改原来的代码,就能把应用直接部署到容器平台。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102304.webp)

对于软件开发者和运维人员,KubeSphere 内置了 Java、Nodejs 等常用语言模板,集成了常见的开源项目,提供了 DevOps、微服务灰度发布、链路追踪、应用生命周期管理、边缘节点管理等功能,实现了代码提交、应用发布、应用运维的一站式管理。你只需提交代码,后面的流程 KubeSphere 都会自动帮你搞定。

目前,KubeSphere 的主仓库在 [GitHub](https://github.com/kubesphere/kubesphere) 已经有 7000 多个 Star,社区有超过 250 位贡献者,全球下载超过 70w 次,近一半以上的用户来自海外,国内用户有新浪、微众银行、中通、中国银行等著名企业。这里有一篇来自问答社区 SegmentFault 的[用户使用经验分享](https://mp.weixin.qq.com/s/NiatJMfRBvNrcvd2f0TwMg),大家可以参考。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102303.webp)

如果你们公司想尝试 K8s,或者你个人想学习 K8s,建议可以从 KubeSphere 入手。它可以快速[从零搭建 K8s 集群](https://github.com/kubesphere/kubekey#quick-start),也可以只用两条命令,就部署到现有的 K8s 之上。官方有[线上 Demo](https://demo.kubesphere.io/login)(账号:demo1 / Demo123),以及友好的[中文文档](https://kubesphere.com.cn/docs/)、[云原生视频教程](https://www.bilibili.com/video/BV15g411F7pj) 和[开发者社区](https://kubesphere.com.cn/forum/)。

1、[最小的飞行器](https://www.sciencealert.com/the-smallest-flying-device-ever-made-by-humans-is-like-a-grain-of-sand)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092406.jpg)

美国西北大学的科学家研发出了世界最小的飞行器,跟一粒沙子的大小差不多(下图)。它自身不能飞,全靠风力带动。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092407.jpg)

它基本上就是一个超小型电路片,包含了传感器、电源、无线天线,以及数据存储器。对它轻轻一吹,就会四处飘扬,可以用来监测环境,比如空气有没有污染物的泄露。

2、[手机小键盘](https://ianthehenry.com/posts/peggi/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092410.jpg)

国外的一个硬件爱好者制作了八个键的小键盘,贴在手机背面,作为输入设备。

它的每个键都可以自定义,不同按键组合还可以映射26个字母和10个数字。由于可以不看键盘,只按照肌肉记忆按键,所以用起来非常方便。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092411.jpg)

缺点是,它只适合横屏时使用,不适应竖屏时使用。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092412.jpg)

3、[亚洲最大蛋鸡场](https://finance.sina.com.cn/jjxw/2021-09-23/doc-iktzscyx5863357.shtml)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092419.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092420.jpg)

今年9月份,亚洲规模最大的蛋鸡场在上海崇明岛投产,产出了头窝鸡蛋。这个蛋鸡场可以养殖300万只母鸡,每年产出8亿枚鸡蛋,平均每天200万枚鸡蛋。

母鸡会先在青年鸡场饲养105天后,然后再转到蛋鸡场,工作72周,然后再退休。蛋鸡场会每月轮换一批母鸡。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092421.jpg)

4、[机器看门狗](https://www.cnet.com/roadshow/news/boston-dynamics-spot-robotic-watchdog-hyundai/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092417.jpg)

韩国现代汽车向波士顿动力公司,采购了一些机器狗,在工厂里面巡逻。这种机器狗带有热像仪和 3D 激光雷达,白天可以识别异常发烫的设备,及时报警,防止发生火灾。

到了晚上,它就变成厂区里面游荡的看门狗,用于发现哪扇门没有锁好、哪间屋子没有关灯。但是,它不会去追逐入侵者,程序没有做这方面的设定。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092418.jpg)

相比人类,机器人(或机器狗)在门房、巡夜这些方面,有着巨大的优势,功能更强、成本更低。如果发现异常,它只要能及时报警就可以了。不难想象,再过几年,你遇到的安保人员可能都是机器人。

5、[最古老的手印](http://www.uua.cn/show-7-12334-1.html)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092422.jpg)

考古学家确认,在拉萨市郊区的邱桑村发现的人类手印,可能是迄今最古老的人类岩石活动的遗迹,距今16.9万年至22.6万年之间。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092423.jpg)

当地有很多地热温泉,手印就保留在一块碳酸岩之中。考古学家推测,大约20万年前,泉口附近有很多软泥形式的碳酸钙,两个孩子在嬉戏。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092424.jpg)

他们觉得留下自己的印记非常有趣,先按下一个脚印,然后再把手印压在上面。以后,泉水改道或季节性干涸,软泥迅速脱水并固结成岩,一直保存到了今天。

6、[居家办公的监控摄像头](https://9to5mac.com/2021/08/09/apple-call-center-workers-surveillance/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081101.jpg)

一家跨国的客服外包公司的员工,向新闻媒体投诉,公司允许居家办公的条件是,必须安装由公司提供的监控摄像头,在办公时间监控他的一举一动和所有语音对话。如果不同意安装,公司就不许在家办公。为了生计,他只能同意。

这种做法以后可能会成为常态,公司使用强制监控,保证员工在家也能专心投入工作。

1、[Windows 11 运行安卓应用是什么体验?](https://sspai.com/post/69446)(中文)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102203.jpg)

Windows 11 可以运行安卓应用,本文给出了详细的操作步骤,作者也总结了自己的使用体验。

2、[杭州西站的设计](https://mp.weixin.qq.com/s/jSeAG_YoTEJshhTQZLHf1Q)(中文)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102401.jpg)

杭州西站是为2022年亚运会新建的高铁站,包含了很多创新。建筑师把高铁站台放到了楼上,楼下是正常的城市交通,避免了火车站和铁轨将城市一分为二的囧境。

3、[中芯国际的超级芯片工厂(GigaFab)](https://www.anandtech.com/show/16931/china-smic-build-gigafab)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092111.jpg)

中芯国际最近宣布,计划在上海临港建造中国第一家超级芯片工厂(GigaFab,月产超过10万片晶圆的工厂)。本文是对这件事的分析。

4、[vscode.dev](https://code.visualstudio.com/blogs/2021/10/20/vscode-dev) 发布(英文)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102909.jpg)

VS Code 正式发布官方的浏览器版,从此可以在浏览器里面使用这个编辑器。它跟另一个网站`github.dev`很接近,唯一的区别是还支持其他的代码托管服务。([@StevenNin](ruanyf#2012) 投稿)

5、[怎么为网站申请 ISSN 号码?](https://shkspr.mobi/blog/2021/09/how-to-add-issn-metadata-to-a-web-page/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092006.jpg)

作者介绍怎么为自己的个人网站,申请了一个 ISSN(国际标准期刊号),便于被学术期刊引用。

6、[你的网站是否有 Security.txt 文件?](https://krebsonsecurity.com/2021/09/does-your-organization-have-a-security-txt-file/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092213.jpg)

越来越多的大公司开始在服务器放置“Security.txt”文件,这是一项新提议的标准,该文件用来描述网站的安全政策和漏洞联系方式。

7、[不要只构建一套通用 API](https://max.engineer/server-informed-ui)(英文)

作者提出,后端应该提供两套 API,一套是外部使用的通用 API,服务特定的数据,另一套是自家使用的应用 API,服务特定的页面。

8、[我如何组装 Linux 游戏电脑](https://boilingsteam.com/how-i-built-my-new-linux-gaming-desktop-in-2021-with-amd-cpugpu-and-gnu-guix/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092408.jpg)

作者介绍自己如何选择各种组件,组装了一台专用于游戏的 Linux 桌面电脑。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092409.jpg)

9、[网页的发呆检测 API](https://web.dev/idle-detection/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092414.jpg)

Chrome 浏览器现在原生提供`IdleDetector`对象,在它上面部署了发呆检测 API,可以用脚本获知用户是否正在发呆(即没有任何操作)。

1、[EBS Design](https://github.com/ebs-integrator/ebs-design)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092112.jpg)

一个 React 组件库,设计很有现代感,目前还在积极开发中。

2、[bunny.net](https://bunny.net/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091812.jpg)

一个收费的 CDN 服务,看上去不错,可以当作 Cloudflare 的后备。

3、[context-note](https://github.com/betterRunner/context-note)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102406.jpg)

一个 Chrome 浏览器插件,可以对网页做笔记,下次打开该网页,笔记就会显示,并提供富文本编辑器和笔记标签。([@betterRunner](ruanyf#2013) 投稿)

4、[APIAuto](https://github.com/TommyLemon/APIAuto)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102404.jpg)

腾讯公司内部的开源项目,一个强大的 HTTP 接口测试工具,可以机器学习零代码对接口测试。([@TommyLemon](ruanyf#2010) 投稿)

4、[3D 管道屏保](https://1j01.github.io/pipes/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092004.jpg)

这个开源项目将 Windows 的 3D 管道屏保,搬到了网页上。

5、[Composable](https://www.composable.art/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092107.jpg)

一个网页版的矢量图作图工具。

6、[lists.sr.ht](https://lists.sr.ht/)

一个免费的邮件列表服务,可以用来架设自己的邮件列表。

7、[Kill the Newsletter!](https://github.com/leafac/kill-the-newsletter)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091814.jpg)

一个开源服务,可以将新闻邮件,转为 RSS feed 输出。用户可以自己架设服务,也可以试用作者架设的 [demo](https://kill-the-newsletter.com/)。

8、[一行代码的旋律生成](http://www.olegkikin.com/audio/audio.html)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091803.jpg)

一个有点神奇的演示,只需要一行 C 代码,就能生成一段音乐旋律。这里是[介绍文章](https://countercomplex.blogspot.com/2011/10/algorithmic-symphonies-from-one-line-of.html)。

9、[AirGuard](https://github.com/seemoo-lab/AirGuard)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091917.jpg)

一个安卓 App,用来检查是否有 AirTag 在追踪你。

10、[Black](https://black.vercel.app/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092215.jpg)

一个 Python 代码格式化的库,可以自动对 Python 代码进行格式美化。

1、[10 个响应式网页的开发测试工具](https://www.webfx.com/blog/web-design/responsive-design-testing-tools/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080508.jpg)

本文介绍10个小工具,用来测试响应式网页,在不同大小屏幕的显示效果。

2、[树莓派家用服务器搭建指南](https://github.com/zhaoolee/pi)

树莓派系列教程。作者买了一台低配云服务器获得固定 ip 地址,通过 frp 内网穿透,把家里的树莓派 4B 变成了一个真正的云服务器,可以在公网访问。([@zhaoolee](ruanyf#2008) 投稿)

3、[英特尔处理器博物馆](https://www.mynikko.com/CPU/)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102403.jpg)

一个爱好者的个人中文网站,图文并茂地介绍了自己收藏的从 3101 到 Pentium M 的多种英特尔处理器芯片资料。([@TransparentLC](ruanyf#2009) 投稿)

4、[Git 飞行规则](https://github.com/k88hudson/git-flight-rules/blob/master/README_zh-CN.md)

一个 Git FAQ 的中文翻译,收集各种 Git 操作出现问题后的应对措施。([@xcuYao](ruanyf#2015) 投稿)

5、[去中心化图书馆](https://libgen.fun/dweb.html)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092005.jpg)

Libgen 电子书图书馆项目宣布,该项目已经完全做到了去中心化,搬到了 IPFS 上面,网页文件、数据库、甚至域名都不是集中托管的。它给出了去中心化图书馆的几个域名。

1、

[英国](https://www.railadvent.co.uk/2021/06/groundbreaking-new-bridge-design-could-transform-rail-crossings-across-the-uk.html)正在尝试一种新型的人行天桥,架设在铁路上方。这种桥的材料是轻质纤维聚合物,重量很轻,形状是精心计算过的,最大化节省材料,可以快速、低成本架设。

![](https://cdn.beekka.com/blogimg/asset/202106/bg2021062904.jpg)

![](https://cdn.beekka.com/blogimg/asset/202106/bg2021062905.jpg)

2、[Dissection Font](http://erikdemaine.org/fonts/dissect/)

计算机科学大师高纳德(Donald Knuth)曾经参与发明一种“解剖字体”(Dissection Font)。所有的字符都可以切成碎片,拼成一个 6 x 6 的正方形。

![](https://cdn.beekka.com/blogimg/asset/202106/bg2021062808.jpg)

![](https://cdn.beekka.com/blogimg/asset/202106/bg2021062809.jpg)

3、[海平面上升100米](https://ahstat.github.io/Topography/)

现在的世界地图是这样的。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100318.jpg)

如果海平面上升100米,世界地图会变成下面这样。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100319.jpg)

1、[直流电的回归](https://www.lowtechmagazine.com/2016/04/slow-electricity-the-return-of-low-voltage-dc-power.html)

**(1)交流电为什么获胜?**

19世纪末,人类开始使用电力。当时有两派,一派主张直流电,另一派主张交流电。

最后,交流电获胜,主要原因是交流电长途传输的效率更高,直流电做不到长途传输。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102801.jpg)

当时,交流电已经可以做到高电压,但是直流电的电压一直做不上去。这导致大功率传输时,直流电就会产生很大的电流(因为 电压 * 电流 = 功率)。另一方面,电流通过导体产生的热量,与电流的平方成正比。这意味着,直流电的长距离传输会因为电流较大,而产生很大的热量损耗。交流电由于电压可以做得很高,就没有这个问题。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102908.jpg)

所以,高电压是长距离电力传输的关键,这就是交流电获胜的根本原因。直流电直到1960年代才有办法做到高电压,但是已经太晚了。目前,直流电的应用都局限在低压短距离的使用,传输距离往往在几米之内,最长不超过1公里。

**(2)两个新趋势**

但是,最近出现的两个趋势,导致人们重新对直流电发生了兴趣。

第一个趋势是太阳能发电的兴起,使得发电变成了分布式,而不是集中式。哪里需要能源,哪里就放置太阳能板,这种场景下不需要长距离电力传输。此外,太阳能发电产生的是直流电,电池释放的也是直流电。

第二个趋势是越来越多的电器内部使用直流电,比如所有电子设备(包括计算机和手机)、固态照明 (LED)、平板电视、微波炉等等。专家预计,未来20年内,多达50%的家庭负载消耗的是直流电。

**(3)电流转换的损失**

如果家庭使用的是太阳能发电,就要进行两次电流转换。

首先,光伏板的直流电通过逆变器转换为交流电,传输进入家庭。然后,交流电再次通过逆变器转换为直流电,才能被电脑、LED 和微波炉等直流设备使用。每一次电流转换,都会发生能量损失,最严重情况下,会损失掉20%~30%。

如果带有光伏板的建筑直接采用直流供电,就可以避免这种电流转换损失。

**(4)直流供电的好处**

首先,一旦直流供电,就没有了电流转换的能量损耗,所需的光伏板变少了,存储能量的电池系统也可以变小。

其次,逆变器是一种昂贵的设备,而且寿命短于光伏板。不使用逆变器,可以节省不少钱。

再次,目前的很多直流电气设备,内部带有交流电到直流电的转换,去掉这个部分,可以使这些设备更简单、更便宜、更可靠、能耗更低。

最后,直流电的电压低。很多直流电器不超过24伏,没有电击或火灾危险,使得电工可以使用相对简单的接线,无需接地,也无需担心触电。这进一步节省了成本。

**(5)直流供电的缺点**

低压直流电的最大问题是无法长距离传输。

前面说过,能量损失等于电流的平方乘以电阻。一根普通的铜线,在10米的距离内以12V的电压传输,100瓦的功率对应的电流是8.33A,会产生3%的能量损失,这可以接受。但是,电线长度为 50 米时,能量损失变为16%,长度为 100 米时,能量损失增加到了32%。这足以抵消直流电的效率优势。

由于线路损耗很高,大功率电器也很难使用直流电。如果在12V直流电网上运行 1,000 瓦的微波炉,在电线长度仅为1米的情况下,能量损失高达16%,在电缆长度为3米的情况下,能量损失会增加到47%。

所以,低压直流电网不适用于洗衣机、洗碗机、吸尘器、电饭锅、电烤箱或热水锅炉等大功率电力设备。另外,有些电器(比如冰箱)本身的功率比微波炉小,但是它每天 24 小时运行,长时间下来也会导致巨大的线路损耗。

同样的,线路损耗也限制了多台低功率设备使用同一根供电线缆。如果一根12V的电缆长度为 12 米,并且我们希望将线路损耗保持在10%以下,那么所有电器的总功率将限制在大约150瓦。这意味着,这根线路只能同时使用两台笔记本电脑(每台 20 瓦的功率)、一台直流电冰箱(45 瓦)、五个8瓦的 LED 灯(总共 40 瓦),还留下25瓦可以支持其它较小的设备。

**(6)解决方案**

有几种方法可以避免低压直流电的线路损耗。

第一种方法是尽量减少配电电缆长度。比如,厨房、客厅、卧室这些用电最多的地方,尽量搬到屋顶光伏板的下方,减少电缆长度。

第二种方法是每一个或两个房间,设置一个独立的太阳能发电系统。

第三种方法是选择更高的电压:24V 或 48V 而不是 12V。但是,目前市场上的大多数低压直流电器都在12V下运行,而且更高的电压(高于24V)消除了直流系统的安全优势。美国有很多数据中心、办公室、住宅建筑使用的直流电系统升压到了 380V,这就需要跟 110V 或 220V 交流电一样严格的安全措施了。

第四种方法是使用两套供电系统,同时供应交流电和直流电。低功率设备使用直流电网,比如 LED 灯(< 10 瓦)、笔记本电脑(< 20 瓦)、电视(30-90 瓦)和冰箱(<50 瓦),大功率设备使用单独的交流电网。但是这样做,直流电带来的节能和成本降低效益,就微乎其微了,很容易被抵消。

1、

当我 80 岁时,我不会后悔尝试过的事情,比如我尝试了互联网创业,就算失败了,我也不后悔。我后悔的是那些我想尝试却没做的事情,它们每天困扰着我,如果我当时尝试了,我的人生会怎样。

-- [《让遗憾最小化》](http://www.samvitjain.com/blog/regret/)

2、

我在大学里得到的最好建议是:“找到最好的老师,上他们所有的课,不管是什么课。”

这个建议也适用于互联网。

-- David Perell

3、

“英雄项目”指的是80%以上的贡献来自20%的开发人员的项目。通过对 1000 多个开源 GitHub 项目的分析,发现大多数开源项目都是英雄项目。

--[《为什么软件项目需要英雄》](https://neverworkintheory.org/2021/09/10/why-software-projects-need-heroes.html)

4、

很多人认为,照抄国外的成功软件,不能算是创新。我认为这是一个非常荒谬的论点,将一个商业模型复制到另一个市场,真的没那么容易。

执行就是创新。能够成功执行,调整模型适应当地需求,就是创新。

-- [《如何发现下一个独角兽》](https://restofworld.org/2021/how-500-startups-finds-unicorns/)

5、

通用芯片(比如英特尔的产品)不再适合市场需求,越来越多的公司将会开发自己的芯片,并外包给台积电和三星进行生产。苹果公司的 M1 芯片、YouTube 的视频转码芯片、亚马逊的 Graviton 芯片和谷歌的 Pixel 6 芯片,都是自己研发的。

我们已经到了现成的芯片无法解决各家公司的问题的阶段,定制自己的芯片比购买低价的通用芯片更重要。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=28526969)

2020年(第 130 期):[低龄化的互联网](https://www.ruanyifeng.com/blog/2020/10/weekly-issue-130.html)

2019年(第 78 期):[下一个风口是什么行业?](https://www.ruanyifeng.com/blog/2019/10/weekly-issue-78.html)

2018年(第 27 期):[乔布斯的“热情假设”对不对?](https://www.ruanyifeng.com/blog/2018/10/weekly-issue-27.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)

issue-180

Toggle issue-180's commit message
这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/1980),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101801.jpg)

香港摄影师[李海涛](https://www.arthing.org/archives/2018/01/post206226.html)拍摄的广州岑村玄武山公园。([via](https://new.qq.com/omn/20210329/20210329A01NAN00.html))

很多人不喜欢一线城市“北上广深”,觉得生活压力大,房价奇高,空间局促嘈杂,想要离开。

但是离开以后,去哪里呢?哪个城市能够提供令人满意的生活方式,以及良好的社会经济状况?

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102001.jpg)

我最近读到时事评论家宁南山的[一篇文章](https://zhuanlan.zhihu.com/p/415990961),觉得很有启发,跟大家分享一下。

他说,考虑未来的居住城市时,应该对中国的三个宏观趋势有所认知。

首先,**中国各地的基础设施,都是差不多的。** 我们是统一的国家,各省的高铁、高速公路、电力网、无线通信、宽带网等等,基本都是一样的,同样的标准、同样的材料、同样的施工、同样的管理,不会有某个省的基础设施特别好、另一个省特别差这种情况。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100606.jpg)

其次,各省的发展速度最终会逐渐趋同。沿海省份的增速会降下来,内地省份会赶上来,不会有某个省一直高速发展,另一个省一直低速发展这种情况。长远来看,各省的社会经济和发展状况,最终都会达到一个基本的现代化水平,不会有某个省显著落后于全国平均水平。

再次, **各省的真正差异来自于产业。** 比如,广东的电子业、上海的金融业、北京的政治中心、西部的能源产业等等,都是有地域性的,这个很难改变。产业的兴盛决定了收入的差异,这才是地域差异未来的主要来源。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100607.jpg)

基于上面三点看法,可以预测,如果中国人均 GDP 继续增长,到了2035年比现在增长一倍,那么中国各地的生活条件都会达到一个相当不错的水平。

目前,全国的人均 GDP 大概是1万美元,一线城市是2万多美元。到了2035年,如果全国人均 GDP 能够达到2万美元,一线城市达到五万美元,这就意味着,一线城市普通人的生活水平相当于现在发达国家大城市的水平,而各省的主要城市能够达到目前北京上海的水平。

当然,实现这个目标的难度是很大的。只有每年增长速度不低于4.7%,连续15年,那么 GDP 可以翻一倍。但是,中国的人口已经停止增长了,人力成本也不低了,以后再想高速增长,必须依靠知识创新,而中国民众的科技知识水平并不乐观。

假使我们能够实现这个目标,**那么到了2035年,不管生活在哪个省,都能享受现代化的、有质量、比较舒适的生活。**

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100608.jpg)

居住城市的选择,那时就成了一个生活方式的选择。就像宁南山文章里说的:

> - 如果希望赚取高收入,愿意忍受大城市的高竞争、高压力、狭小嘈杂,那么选择一线大城市;
> - 如果希望竞争小一些、生活轻松一点,可以选择沿海省份和中西部的中心城市;
> - 如果希望享受宁静悠闲的生活,可以选择丽江、大理这样的小城市;
> - 如果希望享受北美澳洲式地广人稀的生活,可以选择东北地区和西北地区。

一个人可以自主决定居住在哪个城市,以什么方式生活,并且不必放弃现代化的生活条件。我觉得,这才是理想的生活,是值得憧憬的奋斗目标。

对于程序员来说,年轻时在大城市打拼,有了积累之后,移居到其它地方,追求自己想要的生活,以后大概会成为一种潮流吧。

很多同学通过自学或者培训班,学会了前端开发,能够独立写页面了,有些还求职成功了。接下来,就面临着进阶难题:**怎么才能在短期内,让代码水平更上一层楼?**

我觉得,最简单可行的进阶方法,就是阅读其他项目的源码。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102102.jpg)

阅读源码有很多好处。有一些是明摆着的,比如,看了别人的源码才恍然大悟,原来可以这样解决问题。再比如,很多软件的高级用法,文档往往写得让人摸不着头脑,只有看源码才能搞懂。

另外一些好处,则是摆在暗处的。比如,通过学习别人的代码,可以培养自己“造轮子”的能力。再比如,阅读热门项目的源码,也许有机会提交 PR,一旦被合并,就成了项目的 contributor(贡献者)。这些将来都会成为你的个人资历。

阅读源码对求职也有实际的帮助。大厂的面试除了应用类的问题,往往也会问一些代码原理,考察你对程序的理解和个人思考。这时读过源码就会有很大的优势,至少有话可说,能够讲一些自己的想法,而不是简单地复述文档。

但是说实话,很多源码太复杂、太抽象,写得很绕,有多层调用,找不到入口在哪里。自己理解起来很困难,旁边又没有人答疑解惑,很容易放弃。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102104.jpg)

本周正好有一个源码讲解的课程 **《前端练功房-源码大练兵》训练营**,就是为了解决这些进阶痛点而设计的,介绍给大家。

它通过连续三天的直播,由三位老师分别解读 Mini-Vue、React 和 Webpack 的源码,每个晚上讲解一个主题。除了源码,还会覆盖算法、工程化等重要技术点。

> - 第一天 - Vue 3:核心原理以及 vdom
> - 第二天 - React:最小堆算法与任务调度
> - 第三天 - 前端工程化核心知识,以及手写一个 Webpack 的简单实现

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102105.jpg)

上课时间是10月26日到28日(下周二到周四),每天晚上的八点。该课程由开课吧制作,他们是国内最大的技术培训机构之一,课程制作和操作方面比较正规,可以放心。

课程推广期间,周刊读者有优惠,仅需 **0.99 元** 的福利价即可报名。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102103.jpg)

微信扫描上方二维码,或者点击[这里](https://wx.kaikeba.com/xiaoke/market/landing-page/v2/21GdBgUib26ebdnj6ID?kol_ad_code=mLiSwqgmCFRnDqSzoiN),了解课程详情。报名后,别忘了添加助教老师的微信。三天听课期间,每天还可以获赠其他的前端学习资料。

1、[采血机器人](https://china.huanqiu.com/article/44o1EsgCOHk)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091802.jpg)

验血是医院的常规检查,一般都是由护士进行采血。上海中山医院最近开始使用全自动的采血机器人,由机器采血。

该机器可自动完成装载采血管、采血针、绑扎压脉带、识别静脉血管、喷消毒液、精准穿刺、采血量控制、血液标本混匀等一系列动作。而且,它还可以辨识血管,很少发生扎不准的情况。

2、[6G 的传输距离](https://techxplore.com/news/2021-08-lg-6g-transmission-meters.html)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082202.jpg)

LG 公司宣布,他们创下了无线通信 6G 标准的传输距离纪录:100米。研究人员利用放大器和天线增益,将信号从一座高楼的顶部发送到另一座高楼,两者相距100米,此前的纪录只有15米。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082203.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082204.jpg)

目前的 5G 通信,城区的传输距离只有几百米。6G 的频率比 5G 更高,传输距离更短,一旦 6G 开始商用,城区的基站密度恐怕难以想象。

3、[多少美国人相信进化论](https://news.umich.edu/study-evolution-now-accepted-by-majority-of-americans/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082103.jpg)

密歇根大学的一项调查显示,目前相信进化论的美国人终于超过了一半。2019年,54%的美国成年人相信,人类是从动物进化而来的,比1985年的40%有大幅成长。这个比例在34个西方国家里面,几乎是最低的,只高于土耳其的27%。

大家都说美国是一个自由派的国家,但美国也是一个非常保守的国家,宗教观念有很大的市场。

4、[苹果的 Memoji 战略](https://www.aboveavalon.com/notes/2021/8/23/apples-big-bet-on-memoji)

Memoji(me + emoji)是苹果公司基于表情符号开发的一种头像生成技术,用来生成用户的 3D 卡通头像,诞生于2018年。种种迹象都表明,苹果有意大量使用该技术,用于虚拟空间的场景。

2021年6月的 WWDC 大会的邀请函,使用的就是 Memoji。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082408.jpg)

大会当天,库克走进会场,场下坐的都是听众的 Memoji 头像。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082406.jpg)

库克致欢迎辞的时候,背景也是 Memoji。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082407.jpg)

此外,苹果的管理层介绍,头像也都换成了 Memoji。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082409.jpg)

下一步,苹果很可能会推出一个虚拟空间产品,将用户导入数字世界,到时候用户在那里的分身就是 Memoji。

5、[凉爽的路面](https://news.mit.edu/2021/countering-climate-change-cool-pavements-0822)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082410.jpg)

城市的道路是一个巨大的热源,吸收太阳热量然后辐射出来,对周围环境进行加热,使得城市变得更热。麻省理工学院的研究人员因此提出了“凉爽路面”的概念,这种路面会大量反射太阳光,吸收更少的热量。

“凉爽路面”的主要措施有两点,一是使用混凝土代替沥青,后者太容易吸热;二是浅色的路面有更好的反射率,所以混凝土之中应该多加入白色的骨料。

6、[超宽显示器的问题](https://www.learnergo.com/lifestyle-ergo/2020/7/5/ultra-wide-monitors-a-pain-in-the-neck)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080709.jpg)

现在的显示器越来越宽,甚至有宽度超过一米的带鱼屏,即使是普通的22-24英寸显示器,程序员也往往会把两个并排使用。专家认为,这样会增加头颈损伤和疼痛的概率。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080710.jpg)

使用超宽显示器时,长期扭头看着左侧的屏幕,对颈椎非常不利。专家建议,32寸的显示器可能是最佳选择,如果必须使用超宽屏显示器,则最好增加屏幕与眼睛之间的距离,并且将活动窗口放置于屏幕的中间,避免长时间向一侧扭头。

1、[地铁地图电路板](https://chaijiaxun.com/pcb-metro-map-build-log/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092002.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092003.jpg)

一个新加坡网友讲述,自己怎么把新加坡地铁线路图做成一块电路板,还设法让每个节点发光亮起来。

2、[我如何使用 NFT 在三天内赚了5万美元](https://paulstamatiou.com/how-i-made-50k-in-3-days-with-nfts/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091918.jpg)

作者谈了自己对 NFT 的理解,以及怎么入门,然后他用软件生成了一组数字画(上图),以 NFT 的形式卖了5万美元。对这个主题感兴趣的同学,推荐阅读。

3、[勒索软件是什么样子](https://www.bleepingcomputer.com/news/security/free-revil-ransomware-master-decrypter-released-for-past-victims/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091804.jpg)

这篇文章提供了勒索软件 REvil 中毒的样子,以及拿到解密器以后,解开中毒文件的演示,可以用来了解这种软件如何勒索钱财。

4、[GitHub Star 不会支付你的账单](https://kitze.io/posts/github-stars-wont-pay-your-rent)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091609.jpg)

作者是开源项目 Sizzy 的创始人,讲述了如何将一个开源项目,变成商业软件,用来支持软件开发的故事。

5、[通过水流理解电的基本知识](https://www.freeingenergy.com/understanding-the-basics-of-electricity-by-thinking-of-it-as-water/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091702.jpg)

课本经常把电流比喻成水流,来讲解电的基本知识。这篇文章也是采用这种方法解释电,写得很有新意。

6、[被谷歌解雇是一种怎样的体验](https://www.businessinsider.com/google-fired-burnout-depression-grigory-yakushev-2021-9)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091703.jpg)

作者讲述了自己五年前被谷歌解雇的往事,解雇理由是无法承担开发工作,整个过程有详细描述,可以一窥大厂怎么解雇人。作者说,他很庆幸自己被解雇,因为他后来去了医院,被诊断为忧郁症,幸亏得到了及时治疗,现在状况不错,也找到了新工作。

7、[如何压缩设计素材](https://www.zachleat.com/web/vector-raster-split/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091704.jpg)

作者从 Figma 导出设计素材,试了不同的格式,从最初的 10MB 变成了最后的 78KB。

8、[Objective-C 简史](https://medium.com/chmcore/a-short-history-of-objective-c-aff9d2bde8dd)(英文)

本文介绍 Objective-C 怎么从一种科学家的语言,变成了苹果公司的官方开发语言。

1、[super-image](https://huggingface.co/spaces/eugenesiow/super-image)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091606.jpg)

一个网页程序,可以将图片放大而不模糊,也能让模糊的照片变得更清晰一些。

2、[html2json](https://github.com/Jxck/html2json)

一个 JS 库,可以将 HTML 代码与 JSON 代码互相转换。

3、[My Room in 3D](https://my-room-in-3d.vercel.app/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091207.jpg)

使用 Three.js 制作的网页 3D 家居模型,非常炫酷。

4、[Video2WebP](https://video2webp.mattj.io/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091405.jpg)

一个网页服务,可以将短视频转成 WebP 动画图片,用来替代 GIF 动画。

5、[Home Assistant](https://www.home-assistant.io/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091608.jpg)

一个开源的家庭智能家电的管理面板,可以架设在个人服务器或树莓派,目前支持1000多种智能家电,包括苹果、小米等品牌。

6、[absurd-sql](https://github.com/jlongster/absurd-sql)

一个很酷的 JS 库,将浏览器的 indexedDB 作为网页数据储存的后端,在它之上加了一层 SQLite。也就是说,用户会跟一个全功能的 SQLite 实现互动,但是数据存储在 indexedDB 里面。

7、[Sailfish OS](https://sailfishos.org/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082801.jpg)

一个手机操作系统,源头是诺基亚的 MeeGo 系统,目前已经发展到了第四代。它基于 Linux,但可以安装安卓的 App,看上去很精美,缺点是目前只支持 Sony 的几款手机。

8、[jsvu](https://github.com/GoogleChromeLabs/jsvu)

jsvu 是一个 JS 引擎的调用器,用来调用各种 JS 引擎(比如 V8、QuickJS、Chakra 等等),或者同一个引擎的各种版本。它的主要用途是测试代码在不同引擎下的表现。

9、[7.css](https://github.com/khang-nd/7.css)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083001.jpg)

一个 CSS 框架,用来复现 Windows 7 的 UI。

10、[vagrant-kubernetes-cluster](https://github.com/ameizi/vagrant-kubernetes-cluster)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101602.jpg)

一键安装 Kubernetes 集群的脚本,符合国情,包含 MetricsServer 、Kuboard 、Kubernetes Dashboard 等组件。([@ameizi](https://github.com/ameizi/vagrant-kubernetes-cluster) 投稿)

1、[稀土开发者大会](https://conf.juejin.cn/xdc2021?utm_source=s22gzh018)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021102002.jpg)

一个技术活动消息。国内知名的“稀土掘金技术社区”,下周主办“稀土开发者大会”,现在可以免费报名,收看所有演讲的直播。时间是下周三和周四(10月27日和28日)两天。

他们这次请了很多大厂的技术主管,演讲内容基本涵盖了当前的技术热点:大前端、低代码、音视频、数据库、微服务、云原生、人工智能……链接是直播安排。我听掘金的同学说,他们准备了很多丰厚奖品,报名后有很大的机会中奖。

2、[Javascript 游戏基础教程](https://codeincomplete.com/articles/javascript-game-foundations/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091607.jpg)

这个英文教程一共10节课,教你使用 JavaScript 开发一个网页游戏。

3、[“一证通查”电话卡服务](https://getsimnum.caict.ac.cn/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091503.jpg)

工信部推出的官方服务,查看个人名下登记了多少张电话卡。

4、[Java 周刊](https://www.baeldung.com/category/weekly-review/)

国外开发者编写的 Java 周刊,提供各种关于 Java 技术进展的链接。([@Xuguozong](ruanyf#2000) 投稿)

5、[Open Meteo](https://open-meteo.com/en/docs)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091403.jpg)

免费的天气 API 服务,可以获取全球任意地点的天气数据,以 JSON 格式返回。

1、[世界最厚的书](https://twitter.com/JudgeDrokk/status/1424038060501700610)

一本名叫《ZX Spectrum 游戏全书》的书,可能是世界上最厚的书。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080901.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080902.jpg)

ZX Spectrum 是1980年代的一种9位家用电脑,这本书收录了该平台上面的所有游戏。

2、[挂在绳子上睡觉](https://mikedashhistory.com/2021/05/19/the-twopenny-hangover/)

有一种传说,19世纪的英国,有一种专门给穷人准备的廉价宿舍。这种宿舍没有床,只拉了几根绳子,穷人把整个身子挂在绳子上睡觉。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080911.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080912.jpg)

后来的一些小说和电影,纷纷使用了这种说法,补充了细节,还原了画面。但是,由于始终找不到可靠的证据,历史学家倾向于认为,这种宿舍只是当年那些作家的夸大和虚构。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080913.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080914.jpg)

1、[Pixar 故事公式](https://startuppitch.substack.com/p/nail-your-startup-pitch-use-pixars)

公司创始人的主要工作是什么?

他的主要工作很可能是讲故事。向员工讲故事,向投资人讲故事,向媒体讲故事,向用户讲故事。这样可以团结团队、获得投资和报道,完成用户营销。

每个人都喜欢听到一个好故事,你的故事越吸引人,就越容易成功。

可是,大多数人都不具备讲故事的能力,所以我们应该向那些善于讲故事的人学习。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081506.jpg)

Pixar 是全世界著名的动画公司,制作了很多脍炙人口的动画电影。

它具有非凡的讲故事能力,每部电影都让人们津津乐道。它的编剧透露,这些故事都是按照一个公式展开的。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081505.jpg)

每个故事都依次分成六个部分。

(1)很久以前:描述一下世界以前的样子。

(2)每天的生活:大家怎么过日子。

(3)直到有一天:一个突发事件引发了巨变。

(4)由于这件事:主人公遭受到了磨难。

(5)由于这件事:主人公下定决心,展开新的冒险,找到出路。

(6)最终:问题解决了,主人公过上了美好生活。

大家可以回想一下,Pixar 的每部电影是不是符合这个公式。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081507.jpg)

下面,就让我们按照这个公式,讲好自己公司的故事。

(1)很久以前:世界有一个难题。

(2)每天的生活:现有的各种解决方法都很糟糕,用户很痛苦。

(3)直到有一天:我们想出了新的方法。

(4)由于这件事:我们的方法比以前的方法都好。

(5)由于这件事:我们将会吸引大量的客户。

(6)最终:我们将会赢得了市场,取得成功。

有了自己的故事以后,你还必须不停迭代,补充新内容,争取每一讲都比上一次效果更好。

1、

跨平台 UI 技术(比如 Electron)的优势,不是界面和体验的统一,而是能让不同平台版本的开发进展和功能保持一致。

App 越大,不同平台之间保持版本一致,并在指定时间同时发布,就会越来越难。

-- [《跨平台技术的吸引力》](https://allenpike.com/2021/gravity-of-cross-platform-apps),1Password 团队最近宣布,新版本的 Mac 客户端将不再是原生 App,而是改用 Electron 开发。

2、

我出生时,美国即将迎来建国200周年纪念日(1976年)。对我来说,美国的建国完全像是发生在古代的事情。

现在,我已经要将近50岁了,200周年只是我年龄的4倍而已,我甚至不觉得自己老了。就在这样一点时间里面,我们从最基本的电动机发展到了今天所有的惊人技术,从长期来看,人类的技术进步速度实在太惊人。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=28420701),评论2021年是法拉第发明电动机200周年

3、

苹果公司今年会推出 iOS 15,支持的最老机型是 iPhone 6s 和 iPhone 6s Plus。这使得苹果公司成为全世界唯一一家提供七年系统更新的手机厂商。这很了不起,安卓手机厂商只有寥寥几家,能做到三年的操作系统升级和四年的安全更新。

-- [《德国希望立法要求手机厂商提供七年系统更新》](https://www.xda-developers.com/germany-smartphone-makers-7-years-software-updates/)

4、

每秒是不相等的。早上精力充沛的一个小时工作,相当于晚上疲倦时三个小时的工作。

-- David Perell

5、

月球对人类的意义,远远超出大多数人的想象。因为有了月球,夜空照亮了,地球的倾斜度得到缓和,才有了一个更稳定、更宜居的气候。月球也导致潮汐产生,这有助于将热量从赤道穿过海洋转移到两极。

--[《科学家计划在月球上新建望远镜》](https://www.salon.com/2021/09/05/scientists-say-a-telescope-on-the-moon-could-advance-physics-and-theyre-hoping-to-build-one/)

2020年(第 129 期):[创业的凸函数和凹函数](https://www.ruanyifeng.com/blog/2020/10/weekly-issue-129.html)

2019年(第 77 期):[韩剧《阿尔布拉罕宫的回忆》](https://www.ruanyifeng.com/blog/2019/10/weekly-issue-77.html)

2018年(第 26 期):[DHH 的新书《工作何必疯狂》](https://www.ruanyifeng.com/blog/2018/10/weekly-issue-26.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)

issue-179

Toggle issue-179's commit message
这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/1980),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090604.jpg)

济宁市美术馆2019年建成,由日本建筑师设计。上图中,上方的不规则白色屋顶,就是美术馆的展厅。下方是一个公园,左侧是一个回廊步道,右侧是咖啡馆。([via](https://mp.weixin.qq.com/s/YW5TQ444NFhOLFBR3VkLfg))

前两天,我看到一条[新闻](https://www.nrw-forum.de/en/exhibitions/ar-biennale),德国杜塞尔多夫开张了一家 AR 公园(增强现实公园)。

表面上,这就是一家普通的公园,草地、绿树、小溪流……

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092506.jpg)

但是,当你打开手机 App,使用摄像头,就会看到所有场景上面,都叠加了一个虚拟层。

天空漂浮着奇怪的生物。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092507.jpg)

道路上有充气路障。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092803.jpg)

长椅上坐着一个不存在的人。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092508.jpg)

游客可以探索这些虚拟对象,也可以根据提示,完成指定任务,解锁关卡。

新闻说,这个公园一共部署了35个 AR 应用,其中13个是免费作品,其余22个必须付费4.99欧元才能激活,相当于公园门票了。

我觉得,这个主意太好了,值得借鉴。

**城市公园改建为 AR 游戏场,这才是 AR 技术的正确打开方式。** 公园还是那个公园,什么都没变,但是加入了电子游戏的成分。这里最关键的一点是,**AR 就是应该在室外玩。**

仔细想一下,你会发现,绝大多数电子游戏只适合在室内玩,但是 AR 可以在室外玩,而且室外比室内好玩得多。

这是因为 AR 是部分虚拟、部分现实,虚拟层需要叠加在现实层之上,如果现实空间太小、太单调,就不可能设计出好玩的 AR 应用。目前,国内影响最大的 AR 应用,就是支付宝“集五福”的室内找“福”字,这个游戏非常乏味,原因就在这里,室内很难想出好玩的玩法。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092509.jpg)

相反的,室外可以叠加寻宝、解谜、打卡等多种手段,还能跟虚拟对象互动,可玩性大大增强。国外的 AR 游戏《Pokemon Go》就出现过万人街头寻宝的热潮。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092510.jpg)

游戏公司真的应该多开发针对室外空间的 AR 游戏。如果政府同意把公园改造为 AR 游戏场,就解决了游戏场地的问题。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092511.jpg)

最后提一下,最近很热门的“元宇宙”,指的是一个与真实世界平行的虚拟世界。但是,目前的元宇宙实现都是基于 VR,也就是全部虚拟的宇宙。我在想,有没有可能出现基于 AR 的元宇宙呢?

在 AR 元宇宙之中,世界本身依然是真实世界,但是玩家的各种活动发生在虚拟层里面。举例来说,如果要举办一个晚会,地址在人民路,那么 VR 元宇宙需要构建一条虚拟的人民路,而 AR 元宇宙则是在真实的人民路上构建一个虚拟会场,不仅开发难度低,而且真实感更强。

我们常说的“互联网开发”,其实包括前端和后端两个部分。前端是客户端开发,后端是服务器开发。

Java 语言是后端开发的老大,企业级的互联网后台大部分都是用 Java 写的。但是,这几年 Go 语言上升很快,目前市场占有率可能仅次于 Java,比如视频网站 B 站的后台就完全是用 Go 写的。

Go 语言有几个显著的优点。首先从一开始,它就是为互联网并发环境设计的,特别适合互联网应用,其次它是跨平台的,同样的代码可以运行在不同的操作系统,再次它背后有谷歌这样的大公司支持。语法上,它比 Java 和 C++ 都要简洁,新人一周左右就能入门上手,而性能丝毫不落下风。

目前招聘市场上,Go 语言的行情非常好,招聘的公司远多于应聘的程序员。根据一份2021年的[调查](https://www.hackerearth.com/recruit/resources/insights/developer-survey-2021/),Go 语言位列最想学习的编程语言的前三名。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101401.jpg)

如果你有打算服务器开发,想为前端程序做一个后台,Go 语言肯定是值得学习的。

本周介绍的课程,就是一门来自极客时间的学习资料 **《Go 基础冲刺班》**。它通过四节课 + 三个实战项目,帮助大家入门 Go 语言,讲解基础语法,理清学习难点。

这份学习资料适合下面三种同学:

> - 已经有其他语言基础、但还没上手过 Go
> - 想从其他技术栈转到 Go 技术栈的
> - 已经在做 Go 研发,想要巩固基础

四节课的学习内容如下。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101505.jpg)

每节课都提供配套源码和 PPT。想学习 Go 语言的同学可以尝试一下,不花一分钱就得到一份基础教程。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101403.jpg)

微信扫描上方二维码,添加班主任,即可免费获得课程链接和配套源码。

1、[《鱿鱼游戏》的官司](https://www.reuters.com/business/media-telecom/skorea-broadband-firm-sues-netflix-after-traffic-surge-squid-game-2021-10-01/)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100210.jpg)

韩国电视剧《鱿鱼游戏》最近成了 Netflix 平台观看次数最多的电视剧,但是却为 Netflix 带来了官司。

韩国的网络服务商 SK Broadband 起诉 Netflix,理由是太多观众通过网络收看电视剧,要求后者支付网络流量增加和维护工作的费用。证据之一是 Netflix 在美国为了提高流媒体速度,向宽带提供商康卡斯特公司支付网络维护费用,已经超过七年。

这种指控其实有点奇怪,因为内容提供商不会产生流量,而是观众产生流量,但是观众已经向网络运营商付费了。另一方面,如果 SK Broadband 设立网内的缓存服务器,那么所有的观看流量都是网内流量,几乎没有成本。

2、[加油机器人](https://news.mydrivers.com/1/782/782460.htm)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091105.jpg)

国内首款加油机器人,在南宁投入试运行。只要把小轿车停在加油机前,手机下单以后,加油机器人就会伸出“手臂”,打开油箱盖,插入加油枪。整个过程仅需3分钟,司机不需要下车。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091107.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091106.jpg)

这台机器能够自动判断车型、定位油箱盖位置、自动打开和关闭油箱内外盖,实现了“开关盖+插拔枪”动作的智能化。

3、[疫苗贴片](https://www.eurekalert.org/news-releases/929458)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092501.jpg)

美国科学家发明了一种 3D 打印的疫苗贴片,只要贴在皮肤上,就会溶解到皮肤中,达到疫苗注射的效果。

这种疫苗贴片表面有许多微针头,可以刺破皮肤的表皮细胞,进行给药。相比传统的疫苗注射,这种方式的优点是无痛、侵入性更小,并且可以自我给药,不需要护士。([@jijiah](ruanyf#1984) 投稿)

4、[ABBA 虚拟演唱会](https://www.bbc.com/news/entertainment-arts-58423452)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090709.jpg)

瑞典著名乐队 ABBA 最近录制了新专辑,距离上一张专辑已经过去了40年。1982年乐队解散时,四个成员还是年轻人,现在都已经成了老人。

专辑的两首新歌定于今年11月5日首发,同时还会在网上举行一次虚拟演唱会。四名成员以 3D 人物的形式在舞台上演唱20多首歌。虽然他们的演唱会化身是计算机生成的,但是舞台上的动作确实是本人的。他们为了这次演唱会,穿上了感应服装,进行动作捕捉。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090710.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090711.jpg)

5、[木制大钟](https://www.ablogtowatch.com/suzuki-kango-plock-wooden-automaton-time-writing-clock/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090705.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090708.jpg)

一个日本大学生,为了自己的毕业设计,制作了一个木制大钟,一共有400个零件,全部手工制作,令人叹为观止,简直是一件艺术品。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090706.jpg)

它的最神奇之处,莫过于显示时间的表盘是一块白板,每当时间发生变化,机器会自动抹去原来的时间,用笔写上新的时间。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090707.jpg)

请看下面的[视频](https://v.qq.com/x/page/n3273zj877v.html)。

<iframe frameborder="0" src="https://v.qq.com/txp/iframe/player.html?vid=n3273zj877v" allowFullScreen="true" width="400" height="600"></iframe>

6、[城市太阳能装置](https://www.pierre-brault.com/installationssolaires)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081909.jpg)

一个法国艺术家发明了一种新的太阳能装置,可以装在城市楼房外侧。它将两块太阳能交叉在一起,从而不管太阳在哪个角度,都能获得光照。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081910.jpg)

而且,每块太阳能板还可以做成不同的形状,将照射在墙上的阴影,变成各种文字和图案。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081911.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081912.jpg)

1、[两个电动车主的长假出游遭遇](https://finance.sina.com.cn/tech/2021-10-08/doc-iktzqtyu0207060.shtml)(中文)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101506.jpg)

十一假期,很多人开电动车出游,都遭遇到了充电困境。本文讲述了两位车主的亲身经历。

2、[钍燃料反应堆试验](https://mp.weixin.qq.com/s/lk4MvXHZcFWtvxb_gjvd-w)(中文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091502.jpg)

核反应堆目前都使用铀燃料,《自然》杂志报道中国正在甘肃省试验钍燃料反应堆。钍比铀有一些显著的优点,比如核废料更少、不需要大量的水,但是成本比较高,技术还不成熟。本文介绍了钍反应堆的背景知识。

3、[NASA 的交互式图像小说](https://www.ifanr.com/1445255)(中文)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100303.jpg)

美国宇航局 NASA 在官网发布了一部交互式小说,用户可以下载 PDF 文件阅读。它的最大特点就是里面有很多二维码,手机扫描后可以看到背景材料、插图和视频。但是与其这样做,为什么不直接做成网页发布呢?

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100304.jpg)

4、[我在通用电气工作的一件往事](https://justyy.com/archives/45872)(中文)

作者2018年底加入了美国通用电气在英国剑桥的软件部门,发现公司内部使用的是一种自己发明的语言,但是这种语言没有 while 语句。([@DoctorLai](ruanyf#1992) 投稿)

5、[如何用复选框实现图片、动画和游戏](https://www.bryanbraun.com/2021/09/21/i-keep-making-things-out-of-checkboxes/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101501.jpg)

在视觉上,复选框的选中状态不同于未选中状态。作者突发奇想,利用这一点将图片、动画、游戏转成复选框。([@abel533](ruanyf#1995) 投稿)

6、[中位数为什么比平均值有用](https://blog.timescale.com/blog/how-percentile-approximation-works-and-why-its-more-useful-than-averages/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091501.jpg)

这篇文章的前半部分使用图形,通俗地解释了为什么中位数(medium)比平均值(average)更好地反映了总体状况。

文章后半部分讲解了数据库如何查询中位数,不感兴趣的同学可以只看前半部分。

7、[Envoy 开源五年的回顾](https://mattklein123.dev/2021/09/14/5-years-envoy-oss/)(英文)

这是一篇长文,作者是开源项目 Envoy 的创始人,讲述了这个项目是如何诞生和发展的,抒发了很多个人感想,值得一读。网上有[中文翻译](https://cloudnative.to/blog/envoy-oss-5-year/)。

8、[JavaScript 如何遍历树结构](https://stackfull.dev/tree-data-structure-in-javascript)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090704.jpg)

本文介绍了树结构在 JavaScript 语言里面如何遍历,写得浅显易懂,解释了广度优先、深度优先等多种方法的实现。

9、[GitHub Markdown 现在支持脚注](https://github.blog/changelog/2021-09-30-footnotes-now-supported-in-markdown-fields/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021093005.jpg)

这篇是 GitHub 的官方博客,宣布该网站的 Markdown 语法现在支持脚注了,可以看看脚注怎么写。([@jwenjian](ruanyf#1982) 投稿)

1、[htmlq](https://github.com/mgdm/htmlq)

一个命令行工具,可以从 HTML 代码里面提取内容,类似于 jq 从 JSON 里面提取内容。

2、[Notion Avatar Maker](https://notion-avatar.vercel.app/zh)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100504.jpg)

一个网页工具,可以在线制作 Notion 风格的个人头像。([@Mayandev](ruanyf#1988) 投稿)

3、[DeepFaceLive](https://github.com/iperov/DeepFaceLive)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090814.jpg)

一个桌面软件,进行深度学习训练后,可以在视频直播和视频会议里面实时换脸。

4、[FSNotes](https://fsnot.es/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082304.jpg)

苹果设备的笔记软件,支持 Touchbar 和 iCloud 同步,还可以 Git 版本控制和备份。

5、[Windows 11 in React](https://github.com/blueedgetechno/windows11)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082402.jpg)

该项目将 Windows 11 的桌面移植到网页上,使用 React 开发。

6、[PoW! Captcha](https://git.sequentialread.com/forest/pow-captcha)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091104.jpg)

一个开源的网页机器人识别服务(Captcha),通过工作量来识别。服务器会发送一个计算难题,要求客户端进行计算,使得入侵脚本的计算成本很高。

7、[youtube-dl-gui](https://github.com/jely2002/youtube-dl-gui)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091108.jpg)

youtube-dl 的图形界面封装,支持多个视频网站的视频下载。

8、[Ozzillate](https://www.ozzillate.com/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091109.jpg)

一个很有意思的声波传送工具,将上传的文件转成声波,其它电脑从麦克风“听到”以后,再将声波转回文件。

9、[BeMyEars](https://www.engineerdraft.com/bemyears/)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101406.jpg)

MacOS 应用,可以对系统播放的声音(比如浏览器、视频播放器、音乐播放器)进行语音识别,然后实时生成字幕。([@yujinqiu](ruanyf#1993) 投稿)

10、[message-box](https://github.com/kingcc/message-box)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101503.jpg)

一个 Web Component 的消息框组件。([@kingcc](ruanyf#1998) 投稿)

1、[云媒体速览](https://laosheng.top/fly/)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100404.jpg)

该网站收集了中国333个地级市的报纸电子版和电视直播网址。([@DiamonWoo](ruanyf#1981) 投稿)

2、[公司作息时间表](https://github.com/WorkerLivesMatter/WorkingTime)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101502.jpg)

一个民间众包项目,用户通过腾讯文档的表格,提交自己所在部门的上下班作息时间,可以用来了解不同公司的加班情况。([@erdong](ruanyf#1997) 投稿)

3、[中等代数](https://saylordotorg.github.io/text_intermediate-algebra/index.html)

一本英文的数学教材,讲解中学代数,包括线性方程、指数函数、二项式定理等等,免费阅读。

4、[教娃编程视频300天](https://zhihua-lai.com/teaching/ch/)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101405.jpg)

一个工程师给娃讲了很多数学和计算机知识的短视频,详见[说明文章](https://justyy.com/archives/45834)。([@DoctorLai](https://github.com/ruanyf/weekly/issues/1989) 投稿)

5、[路径算法的动图演示](https://github.com/zhm-real/PathPlanning)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100502.jpg)

这个仓库提供常见路径算法的动画演示,一共有20多个算法演示。([@DoctorLai](ruanyf#1986) 投稿)

1、[高濑川](https://wrathofgnon.substack.com/p/sustainable-infrastructure)

1608 年,一个名叫角仓了以(Suminokura Ryōi)的日本商人,得到了一份合同,为京都的一座寺庙提供建筑材料。

这件事的最大困难,就是无法把巨大数量的建材运到市中心。于是,他出钱请人挖了一条运河,从港口通到市中心。他用当地采石场的石头铺设岸堤和河底,由于他的船吃水大约15厘米,河的深度就翻一倍,定为30厘米。

1614年,这条长9.7公里、宽7米的运河挖好了,称为“高濑川”。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080601.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080602.jpg)

这条运河一直沿用到1920年,基本上不需要维护,可靠地发挥着航运功能。1920年以后,停止了航运,变成了纯粹的观光河流,直到今天还保留着400年前建造时的样貌。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080603.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080604.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080605.jpg)

2、[《解析数论导论》的封面](https://twitter.com/susam/status/1423959528081530881)

1976年出版的美国高等数学教材《解析数论导论》,封面是一张很奇怪的图片。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080707.jpg)

很多人以为,这张图片只是一张普通的对称图片,但其实是有含义的。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080708.jpg)

它画了一个坐标轴,x 轴和 y 轴都是0到17,每个点的坐标`(x, y)`就是一个数值对。只要数值对的最大公约数不等于1 (`gcd(x, y) ≠ 1`),该点就会画上一个方块,否则为空。

举例来说,原点`(0, 0)`的最大公约数为`0`,所以有一个方块;而它旁边的两个点`(0, 1)`和`(1, 0)`,可以认为最大公约数为`1`,所以为空。

对角线上除了`(1, 1)`,其它点的最大公约数都不等于1,所以这些点都有一个方块。

1、[谷歌如何收购 Android](https://arstechnica.com/information-technology/2021/08/excerpt-the-history-of-android-as-written-by-a-longtime-android-developer/)

Android 是谷歌公司的操作系统,但并不是谷歌从头开发的,而是从一家小公司收购而来的。

最近,美国出版了一本新书,作者采访了几十位当事人,介绍 Android 的诞生内幕。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081407.jpg)

Android 团队最早的创业想法,是为照相机开发一个操作系统。但是,后来意识到手机会取代相机,成为主流的拍摄设备,就转而为手机开发操作系统。

2005年初,Android 团队陷入困境,急需现金,开始寻找外部投资。

工程师就为当时的按键手机写了一个演示程序,包括一个主屏幕和几个应用程序,不过大部分都不能运行。毫不奇怪,这个演示程序与今天的 Android 相去甚远。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081408.jpg)

有了演示程序,他们又准备了一个 PPT,解释他们的愿景,然后就开始向潜在投资者推销自己,试图获得投资。

这个 PPT 保存到了今天,一共15页。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081409.jpg)

他们首先解释了为什么手机市场即将发生巨变。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081410.jpg)

2004年,全球个人电脑出货量为1.78亿台,手机出货量为6.75亿部,几乎是 PC 数量的四倍。这意味着,手机市场已经远远超过 PC 市场,并且还在高速发展。

但是,2004年手机的处理器和内存只相当于 1998 年 PC 的性能(200MHz 的 CPU 和 32MB 的内存),因此手机需要一个真正的、功能强大的操作系统。

而且,手机的硬件成本正在下降,但是软件成本没有下降,手机制造商迫切需要一个廉价的操作系统,从而降低软件成本。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081411.jpg)

手机制造商并不是软件开发专家,没有能力也没有兴趣,持续改进软件,因此需要外部的软件公司为他们提供操作系统。

Android 将是一个免费的手机操作系统,以开源的形式提供给手机制造商。手机公司能够自由使用这个操作系统,不必依赖软件公司,也无需自己来开发。

2005年的市场上,手机操作系统寥寥无几。

- 微软的系统要得到许可后,才能移植。
- 塞班(Symbian)系统主要由诺基亚使用,其它手机公司虽然可以用,但是无法与诺基亚竞争。
- 黑莓的系统不能用于其他手机。

对于那些想要制造一款功能强大的智能手机的制造商来说,根本没有操作系统可用,要么自己从头开发,要么支付高额许可费,使用那些专有的操作系统。然后,就会面对一个更大的问题:根本没有应用程序生态,谁来为这些操作系统开发应用程序呢?

塞班系统允许外部应用程序,但是通用性很差,为一种型号手机写的程序,无法运行在另一个型号上,即使两部手机出自同一个制造商,它们的应用程序也不是通用的。

Android 希望提供世界第一个完整的开源的手机操作系统。它建立在 Linux 之上,为应用程序开发者提供单一的编程模型,同一个应用程序可以运行在使用该系统的所有设备上,从而简化开发。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081412.jpg)

接着就是最困难、也是最重要的问题,Android 如何赚钱呢。如果这个开源手机操作系统,不能让发明者赚到钱,怎么吸引外部投资呢,又如何保证能够持续开发呢?

Android 团队设想,通过为手机制造商提供云服务、以及应用程序的基础设施(比如认证和加密)来盈利。后来的事实证明,谷歌果然是通过谷歌服务框架和 Play 应用商店来盈利。

创始团队与很多风投进行了接触,其中就包括了谷歌。谷歌邀请他们到总部来会谈,两位谷歌创始人拉里和佩奇都参加了。那次会议非常随意,但是谷歌显然对 Android 很感兴趣。会议结束时,谷歌说:“我们想帮助你们。”

接着,Android 团队去了亚洲,访问了三星和 HTC,了解手机制造商的态度。三星说,如果美国的无线运营商能够接受 Android,他们就愿意推出基于 Android 的手机。HTC 则说,希望独家合作,这个系统只授权给他们使用。团队不愿答应这个要求,但是后来推出的世界第一部 Android 手机,就是 HTC G1。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021101303.jpg)

从亚洲回来以后,谷歌又找 Android 团队开会。这次会议来了更多的人。团队原以为,谷歌想了解项目开发进展,但是演讲进行到一半,谷歌打断了他们,直接说:“我们想收购你们。”

谷歌表示,如果 Android 愿意被收购,而不是接受风险投资,情况会好得多。这样可以不必理会风险投资家的要求,也不必向客户和运营商收取专门服务的费用,一心一意将操作系统免费提供给手机制造商即可。而且,手机内部还可以绑定谷歌的搜索服务,谷歌会从搜索获得收入,这些收入可以与手机制造商分享,从而手机制造商会从 Android 获利,因而有动力使用这个系统。

2005年7月,Android 正式加入谷歌。

几周后,团队再次在谷歌内部,向高管进行了宣讲。当讲到如何将 Android 货币化时,拉里打断了演讲者:“不用考虑这个,我只希望你们造出最好的手机,其余的事情以后再说。”谷歌收购这个团队的原因很简单,就是希望通过它可以让谷歌进入移动设备市场。

1、

飞行汽车结合了两种完全不同的工程体系:它必须既能飞行,又能适应地面运输的狭窄空间限制。

同时满足飞行和地面运输的各种安全和效率要求并非易事,这就是为什么至今没有公司能造出飞行汽车,最多就是造出点对点的飞行汽车,这种车辆通常没有车轮,更像小飞机。

--[《技术成功的规则》](https://spectrum.ieee.org/the-rodney-brooks-rules-for-predicting-a-technologys-commercial-success)

2、

程序员没有必要局限在一种语言或工具。工具每天都在变化,只要新工具适合你的用例,就可以选择它。你的标准应该是,选择最能够快速有效地解决问题的任何语言或工具。

-- [《下一个项目要用哪些工具》](https://betterengineeringclub.substack.com/p/what-tools-to-use-for-your-next-web)

3、

一个可运行的复杂系统,总是从一个简单系统演变而来的。似乎可以因此推断:从头开始设计一个复杂系统,永远不会奏效,必须从一个简单系统开始设计。

-- [《加尔定律》](https://www.ivanmontilla.com/blog/galls-law-and-how-i-ignored-it)

4、

大师并不是一开始就是大师。你把他们早期第一阶段的作品找出来看看,就会了解他们取得了多大的进步。

-- David Perell

5、

不要对技术钻牛角尖,要对如何获取客户钻牛角尖。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=28838861)

2020年(第 128 期):[这个社会是否正在变成"赛博朋克"?](https://www.ruanyifeng.com/blog/2020/10/weekly-issue-128.html)

2019年(第 76 期):[任何爱好都能变成职业,只要你会拍视频](https://www.ruanyifeng.com/blog/2019/10/weekly-issue-76.html)

2018年(第 25 期):[安卓手机十周年的感想](https://www.ruanyifeng.com/blog/2018/10/weekly-issue-25.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)

issue-178

Toggle issue-178's commit message
这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/1980),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100601.jpg)

10月5日,俄罗斯宇宙飞船将一名女演员(左一)和一名导演(右一)送入了国际空间站。他们将在那里停留12天,拍摄一部电影。电影讲述一个宇航员突发疾病,生命垂危,地面控制中心决定紧急派遣一名医生去治疗。([via](https://edition.cnn.com/2021/10/04/entertainment/russian-film-crew-space-launch-scn/index.html))

最近,全国供电紧张,很多省的工业用电不够了。

我在想,会不会因为这件事,家庭太阳能发电就要流行了。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021093015.jpg)

理由是这样的,这一次的供电紧张,主要原因是煤价涨了,从2021年初到现在翻了一倍。大家看下图,最后一个月(刚刚过去的9月份)的价格简直是飞涨。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100509.jpg)

但是,电价没涨,火力发电厂因此陷入亏损,每发一度电都会亏钱。偏偏又遇上用电量猛增,今年前八个月,全国用电量增加了[13.8%](https://news.bjx.com.cn/html/20210916/1177098.shtml),相比之下,这个数字去年是3.1%,前年是4.5%。用电量增长太快,电厂又无力多发电,所以电就不够了。

有的同学可能会说,火电不行,不是还有风电和光电吗?问题是它们只是一个零头,不到全部发电量的10%,根本替代不了火电,火电是绝对的大头,占到70%以上。

而且,风电和光电不稳定,英国的北海今年突然[风停了](http://www.fortunechina.com/shangye/c/2021-09/23/content_397903.htm),风电急剧减少,英国的能源就紧张到[90%的加油站](https://cn.reuters.com/article/britain-petrol-shortage-0927-mon-idCNKBS2GN11T)没有汽油了。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100510.jpg)

总之,要解决供电紧张,还是离不开煤炭,最简单的方法就是让煤价下跌。但是这一次,煤价很可能不会下跌。“碳达峰、碳中和”是国家战略,这种背景下,政府不会大量投资去增产煤炭,煤炭供应不足可能会持续下去。

另一方面,以后用电量肯定持续增长。别的不说,全国每年新增那么多电动车,都需要用电啊,单单一台特斯拉 Model 3 的功率(220kw)大约是家用空调的100倍。马斯克[最近说](https://www.barrons.com/articles/tesla-elon-musk-electric-vehicle-production-51633202912),美国的电力生产需要增长一倍,才能满足电动车时代的需要。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100511.jpg)

我认为,如果煤价短期内不下跌,为了避免火电厂亏损,电价很可能会上调。

这样的话,岂不是家庭太阳能发电的大好时机。一方面可以保证家庭供电不中断,不担心电网限电;另一方面可以减轻电价调整带来的支出上升。

太阳能发电设备的价格,这几年一直在下跌。一套 3000W 的光伏系统,也就不到3万元人民币。假定冬天工作4个小时,每天就是12度电,夏天工作8个小时,每天24度电,对于小家庭应该够用。根据各地的电价,不难算出大概七八年可以回本。

即使不架设全屋系统,只在窗外放一块光伏板,至少也能满足电脑和手机的用电,等于家里多了一个不间断电源。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021093014.jpg)

以前是电力公司集中式发电,但是随着太阳能发电的价格下跌,今后的趋势大概是家家户户的分布式发电,每家的屋顶都有光伏板,这也许就是解决中国的能源问题,达到碳中和的有效方法。

前端开发的学习路径,一般分成三阶段。

> - 第一阶段,学习 JavaScript 和 CSS 的基础语法,包括浏览器的 API。
> - 第二阶段,学习框架和周边工具,现在一般都学 Vue.js 或 React 框架。
> - 第三阶段,实际开发,积累经验。

很多同学卡在第二阶段,因为第一阶段啃语法书,可以熬过去,但到了第二阶段需要自己写代码,问题就全出来了。一方面,前期的语法基础不牢固,实际应用时,API 不会用,别人的代码也看不懂;另一方面,虽然跟着文档学了一遍框架,但不理解为什么这样做,遇到问题时,不知道怎么把框架套上去。

总之,第二阶段的框架和工具学习,非常磨人。但只有过了这个阶段,前端开发才算真正入门,后面才能去解决实际的开发任务。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092802.jpg)

本周的学习资料就是现在最热门的前端框架 **Vue.js 3.0 的一个辅导视频**,帮助你实现 Vue 的进阶,顺利通过第二阶段。

Vue 3.0 发布已经一年多了,国内的推广速度非常快。它的 Composition API 和 React 的钩子,是业内当前的两大热点技术。面试时往往会问到相关问题,比如 Vue 技术栈和它的核心设计。

这次的辅导视频,内容包括三个部分:(1)Vue 原理和源码剖析,(2)认识 Composition API,(3)实现一个“飞机大战”游戏。

![](https://cdn.beekka.com/blogimg/asset/202012/bg2020123014.jpg)

![](https://cdn.beekka.com/blogimg/asset/202012/bg2020123016.jpg)

整个视频总计450分钟,重点是第三部分,主讲老师在讲解框架之后,带大家从头写一个飞机大战游戏,通过实战练习,快速上手 Vue 3.0。同时也让你有一个成果,可以写在简历中,为面试加分。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092801.jpg)

微信扫描上方二维码,了解课程详情,0 元领取这份资料。保证没有任何套路,先到先得。

1、[贝多芬第十交响乐](https://www.smithsonianmag.com/innovation/how-artificial-intelligence-completed-beethovens-unfinished-10th-symphony-180978753/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021093001.jpg)

伟大的德国音乐家贝多芬,一生中写过九部交响乐。1827年,他去世时,正在着手准备第十交响乐,只留下了一些草稿(下图),包含大约250个小节。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021093002.jpg)

2019年,为了纪念贝多芬诞生250周年,奥地利音乐研究所的所长找到了一个人工智能专家,询问能否使用 AI 技术生成第十交响乐。

那位专家就先写了一个 AI 模型,使用贝多芬所有的作品进行训练,熟悉他的风格以后,再根据现存的手稿,生成整部作品,长度接近一个小时。

AI 版第十交响乐的完整录音将于2021年10月9日发布,同一天还会在德国波恩举行全球首演。下面就是 AI 生成的第十交响乐片段。

<audio controls="" name="media">
<source src="https://res.wx.qq.com/voice/getvoice?mediaid=MzI4NjAxNjY4N181MDI3NDM5OTM=" type="audio/mp3">
</audio>

2、[VR 编程环境](https://blog.immersed.team/working-from-orbit-39bf95a6d385)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092807.jpg)

一个国外程序员发文,声称他都在 VR 环境编程,每周超过40小时,整个过程都戴着 VR 头盔。下面是他的编程环境示意图

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092808.jpg)

他的实际编程还是在笔记本里面,使用实体键盘和鼠标,但是程序窗口会通过视频流,投射到 VR 头盔。这意味着,任何可以在笔记本完成的工作,都可以在 VR 环境里面做。

在 VR 环境,他将5个命令行窗口并排,感觉就像坐在 IMAX 影厅编程。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092809.jpg)

VR 环境的一个好处是,可以任意变换虚拟工作地点,一会在蓝天白云的山顶,一会又在海滩上工作。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092810.jpg)

3、[人工合成淀粉](https://mp.weixin.qq.com/s/m9jgc0ktMjeqAUU5wzmhoA)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092704.jpg)

中国科学家全球首次实现“二氧化碳生成淀粉”的全过程。淀粉是粮食的主要成分,目前都是通过植物的光合作用产生。一旦能够实验室生成,就为人类的粮食生产创造了另一条途径。

科学家首先利用太阳能电解水,获得氢气;然后,利用氢气将二氧化碳还原为甲醇。接着,从62种生物酶里面选出10种,将甲醇转化为淀粉。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092705.jpg)

据称,1立方米大小的生物反应器年产淀粉相当于5亩玉米地的淀粉产量。这种技术虽然可以节省大量土地和淡水,但是目前的成本太高,并不具备商业价值。([@pipi32167](ruanyf#1971) 投稿)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092706.jpg)

4、[胖熊周](https://www.smithsonianmag.com/smart-news/get-to-known-the-bodacious-bulky-bears-of-fat-bear-week-2021-180978778/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021093009.jpg)

每年秋天,大批的棕熊都会来到美国阿拉斯加州的布鲁克斯河吃红鲑鱼,为即将到来的冬眠积累脂肪。

最早的时候,当地的国家公园架设了摄像头,直播棕熊的动态。很多人一边看直播的时候,一边会在网上讨论,哪一头熊最大最胖。

国家公园看到了这些讨论,从2014年开始,就跟一家网站合作,在每年的9月底10月初举办“胖熊周”,每天让网友投票,把来吃鱼的棕熊进行两两 PK,直至评选出最后的“胖熊冠军”。去年收到了将近60万张选票。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021093010.jpg)

今年的胖熊周是9月29日到10月5日,经过投票,747号熊获得了今年的冠军。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021093011.jpg)

5、[Mac 应用商店的吸引力越来越小](https://9to5mac.com/2021/08/31/research-shows-developers-are-becoming-less-interested-in-the-mac-app-store/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090105.jpg)

苹果公司有两个应用商店:iOS 商店和 Mac 商店。区别是 iOS 设备只能从官方商店安装 app,而 Mac 设备可以从第三方下载安装 app,不一定要通过应用商店。

统计数据显示,今年开始,开发者对于 Mac 商店的兴趣显著下降,越来越倾向于让用户直接从自己的网站下载安装。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090106.jpg)

以往 Mac 应用商店每月上架新 App 大约400款左右,但是今年6月份,这个数字首次降至不到300款,预计8月份将只有大约200款上架。

1、[鸟类撞上玻璃幕墙怎么办?](https://mp.weixin.qq.com/s/aN8yRHuohvqbgnZd3NGVoA)(中文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091302.jpg)

玻璃幕墙建筑越来越多,撞上玻璃的鸟类也越来越多,导致大量鸟类死亡。本文是这个问题的调查报告。

2、[Facebook 下线的原因](https://riskledger.com/blog/facebook-outage)(英文)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100501.jpg)

本周,Facebook 下线了七个小时,原因是它的 BGP 路由被撤销了,可能是内部人员更新 BGP 时出错了。本文是一篇简单的解释,什么是 BGP,为什么它会导致 Facebook 下线。

3、[Service Worker 简介](https://developers.google.com/web/fundamentals/primers/service-workers)(中文)

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100706.jpg)

谷歌官方的 Service Worker 教程,介绍什么是 PWA 应用,以及怎么开发,写得非常好,很容易懂。官方提供中文版翻译。

4、[一个人能领导多少人?](https://www.patkua.com/blog/how-many-people-can-someone-lead/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091301.jpg)

人的精力是有限的,如果想做到有效领导,那么直线下属最好不超过5-7人。

5、[异步函数如何使用缓存?](https://stackfull.dev/memoizing-async-functions-in-javascript)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090703.jpg)

需要密集计算的函数,可以部署缓存(memoizing),用来提高性能。本文介绍了函数缓存的概念和实现。

6、[Chrome 背景窗口的大小](https://shkspr.mobi/blog/2021/09/whats-the-window-size-of-a-background-tab/)(英文)

Chrome 浏览器有一个 Bug,如果一个窗口在后台打开,这个窗口的大小(window.outerHeight)会是 0,但是内部视口(window.innerHeight)的大小却不是 0,这会导致一些奇怪的问题。

7、[C23 的进展](https://thephd.dev/c-the-improvements-june-september-virtual-c-meeting)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090605.jpg)

C 语言的最新版本是 C17,这是2017年通过的标准。下一版本将在2023年发布,称为 C23。本文介绍 C23 会引入的一些新语法,关心 C 语言的朋友可以看看。

8、[SourceMappingURL 的恶意使用](https://weizman.github.io/?javascript-anti-debugging-some-next-level-shit-part-1)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090606.jpg)

浏览器加载网页时,如果指定了 Sourece Map 文件网址,就会加载这个文件。但是,这个网址居然可以用脚本动态修改,因此恶意脚本可以用它发送用户信息。不过,这个技巧的生效条件,是用户必须打开开发者工具。

1、[listmonk](https://github.com/knadh/listmonk)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090302.jpg)

一个开源的邮件列表管理器,提供美观好用的管理界面,只要配上邮件发送服务(比如 AWS SES 或者开源的 [Haraka](http://haraka.github.io/))就可以使用。

2、[sqlite-tui](https://github.com/mathaou/sqlite-tui)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090404.jpg)

命令行的 SQLite 数据库查看器。

3、[OpenDesktop](https://www.opendesktop.org/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090303.jpg)

该网站是一个开源的云服务套件,向用户提供各种免费的云服务,比如网盘、Office、聊天、地图、项目管理、社交等等。

4、[Mithril.js](https://mithril.js.org/index.html)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090406.jpg)

一个非常易用的轻量级前端框架,只做了 DOM 的包装层,没有加任何其他接口,体积小,加载快,并且支持组件和前端路由。开发小型页面,明显优于 React。

但是不知道什么原因,多年来它一直不流行,因为名字难记?……

5、[Pollen](https://www.pollen.style/)

一个 CSS 变量库,提供一组常用的 CSS 变量(比如颜色、长度、字体大小等等)。开发者可以将这个库作为初始变量,以后通过调整变量来改变样式,比如从亮模式变成暗模式。

6、[NETworkManager](https://github.com/BornToBeRoot/NETworkManager)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090502.jpg)

Windows 原生的网络管理器非常难用,这是一个第三方的网络管理器,在图形界面中,提供各种方便的网络管理、调试功能。

7、[x11docker](https://github.com/mviereck/x11docker)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090503.jpg)

一个封装了显示模块的容器,可以用来通过 Docker 容器运行图形界面应用。

8、[Arc](https://arc.io/cdn)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090602.jpg)

一个众包 CDN,宣称用户使用它们的服务可以赚钱。它跟以前的迅雷 CDN 是一样的,访问者打开安装了它的脚本的网站以后,就会分享一部分带宽,用来给其它用户作为 CDN 加速。

虽然不确定这样做是否合适,但从技术上看,是很有趣的实践。

9、[git-cliff](https://github.com/orhun/git-cliff)

一个根据提交信息,生成 Changelog 文件的命令行工具。

1、[深入计算机系统](https://diveintosystems.org/book/index.html)(Dive into Systems)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090101.jpg)

免费阅读的英文教材,介绍计算机系统的底层知识,内容包含 C 语言和汇编语言的教程。

2、[JS 库的免费公共 CDN](https://www.webfx.com/blog/web-design/free-public-cdns/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090112.jpg)

网上有一些 JS 库的公共 CDN,可以从它们加载库脚本。本文列出了主要的名单。

3、[Programming-Idioms](https://programming-idioms.org/about#about-block-all-idioms)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092707.jpg)

该网站列出主要语言的常用操作(比如创建数组、连接数组等),目前已经有250多种操作。可以指定任意两种语言进行[对比](https://programming-idioms.org/cheatsheet/JS/Java),方便快速入门。([@jerrylususu](https://github.com/ruanyf/weekly/issues/1972) 投稿)

4、[OpenMoji](https://openmoji.org/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090405.jpg)

一套开源的 Emoji 图标,目前已经有将近4000个图标,还在持续增加中。

5、[Mathlets](https://mathlets.org/mathlets/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090402.jpg)

这个网站提供网页小程序,帮助学习各种数学概念,比如正弦曲线、复数运算、傅里叶变换等等。

1、 **大公司起家的地方**

下图是苹果、谷歌、亚马逊等大公司,各自创业起家的地方。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080407.jpg)

2、[奇特的转向灯](https://jalopnik.com/congratulations-mini-you-made-the-stupidest-turn-sign-1847727385)

一家英国汽车公司推出了不一样的转向灯。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092701.jpg)

这种灯在右转时,显示向右的箭头;左转时,显示向左的箭头。为了显目,还会闪烁。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092702.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092703.jpg)

有些人觉得这个设计很好,另一些人觉得很愚蠢,你觉得呢?

3、[地铁隧道的建设过程](https://spectrum.ieee.org/londons-crossrail-is-a-21-billion-test-of-virtual-modeling)

下面是一组伦敦地铁隧道的建设照片,展示了隧道是怎么建设的。

第一步,先用盾构机打洞。盾构机的直径7米,每天可以前进38米。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021073102.jpg)

第二步,洞壁涂上混凝土。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021073103.jpg)

第三步,铺设各种线路,同时保证良好的空气流通。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021073104.jpg)

第四步,铺设路面和墙面,具备开通条件。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021073105.jpg)

1、[乔布斯逝世十周年](https://www.wired.com/story/remembering-steve-jobs-10-years-after-his-death/)

乔布斯去世于2011年10月5日,今年是十周年。

著名 IT 作家史蒂文·利维发表了一篇回忆短文。

![](https://cdn.beekka.com/blogimg/asset/202110/bg2021100605.jpg)

2011年时,作为一家科技媒体,妥善的做法是提前准备好史蒂夫·乔布斯的讣告,我们都知道他没有多少时间了。

将近有一年,苹果公司坚持说,它的创始人兼首席执行官能够成功康复,但是乔布斯本人的状况却是每况愈下。他的身体坚持不了多久了,他也认识到这一点。

那一年的早些时候,我和另一名记者要求对他专访。地点就在无限环路1号(One Infinite Loop)的苹果公司总部大楼四楼的一间办公室。专访没有指定议题,但是我们三人都知道这是为了告别。

那一天是工作日中午,整个苹果总部有数千人在上班,但是我们90分钟的谈话过程中,没有被一个电话或访客打断。就好像对于苹果公司来说,他已经是一个鬼魂了。

专访结束后,我还是没办法提前准备他的讣告。内心里,我不想承认他会很快逝世。

所以,2011年10月5日的下午,快要天黑的时候,接到乔布斯逝世的电话,我惊呆了。

那时,我手里什么文章也没有。于是,接下来的四个小时里,我开始写文章回顾乔布斯的一生,我使用的就是他创造的 Mac 电脑。我尽自己所能,讲述他的生平和遗产。

在讣告的最后一段,我写道:“乔布斯的全部遗产,在很长一段时间内都不会消失。”直到今天,我想我们还在整理他留下的遗产。不会再有像他这样特质的领导者和创新者,我们仍然生活在他的世界里。

1、

开发人员是创建软件最宝贵的资源,但他们的时间往往被管理层低估和滥用。

管理者的作用应该是让开发人员能够工作,而不是拿走开发人员的时间。

-- [medium.com](https://thehosk.medium.com/developers-are-the-most-valuable-resource-when-creating-software-but-their-time-is-undervalued-and-85aab08d7af7)

2、

一周的上班时间是40小时,但是我分配到了一个需要60小时的开发任务,我能怎么办呢?

-- [medium.com](https://thehosk.medium.com/developers-are-the-most-valuable-resource-when-creating-software-but-their-time-is-undervalued-and-85aab08d7af7)

3、

唯一比量子力学更难的是解释量子力学。

--[《理解量子革命》书评](https://theamericanscholar.org/physics-for-the-feeble-minded/)

4、

达尔文散步时,喜欢边走边思考问题。散步开始时,他会在起点放五块小石头,每走一圈就踢掉一块石头,这样就能在不打断思路的情况下,达到预定的圈数。

--[《思想家与步行之间的关系》](https://lithub.com/on-the-link-between-great-thinking-and-obsessive-walking/)

5、

游戏分成两种。一种是有限游戏,另一种是无限游戏。有限游戏的目的是获胜,某方获胜就结束了,无限游戏的目的是继续游戏,你玩这个游戏是为了可以继续玩下去。

-- [《无限创业》](https://www.indiehackers.com/post/infinite-entrepreneurship-da92f36f21)

2020年(第 127 期):[未来人人开发软件,几乎没人编码](https://www.ruanyifeng.com/blog/2020/09/weekly-issue-127.html)

2019年(第 75 期):[电子取代机械,对就业有何影响?](https://www.ruanyifeng.com/blog/2019/09/weekly-issue-75.html)

2018年(第 24 期):[新人进入软件行业的建议](https://www.ruanyifeng.com/blog/2018/09/weekly-issue-24.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)

issue-177

Toggle issue-177's commit message
这里记录每周值得分享的科技内容,周五发布。(**[通知] 下周五是十一假期,周刊会提前一天,9月30日周四发布。**)

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/1913),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091801.jpg)

23岁的宁夏青年董书畅,今年6月份在西藏阿里地区,拍到了一张完美的日环食照片。最近获得了英国格林威治天文台评选的2021年天文摄影冠军照片。([via](https://www.thepaper.cn/newsDetail_forward_14545006))

大家的平板电脑,都用来干嘛?

根据我的观察,第一位的用途都是看视频,其次是玩游戏。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092305.jpg)

如果有人说,平板电脑是生产力工具,那属于胡说。无论是学习和工作,它远远不如笔记本电脑好用和强大。

我曾经幻想,外出时使用平板电脑开发。结果发现根本不可行,要什么缺什么,开发体验极差,最多只能紧急时登录服务器,或者偶尔改一下仓库代码。

但是,我最近发现有一个用途,平板电脑大大强于笔记本,几乎可以说,是为这种用途量身定制的工具。

那就是普通人的视频处理。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092307.jpg)

专业级别的视频处理,平板电脑肯定是不行的。但是,普通人偶尔剪剪视频,它真的是利器,尤其是 iPad pro。

我使用 GoPro 拍摄旅游视频,每次要导入桌面设备处理,非常麻烦。要是身边没有笔记本电脑,就只能等到旅行结束再说。手机倒是可以剪视频,但是对于 2K 或 4K 分辨率,处理起来很慢。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092308.jpg)

今年上半年,苹果公司发布了新的 M1 架构的 iPad Pro。我眼前一亮,这个硬件配置跟 Mac mini 是一样的,而我们已经知道,后者的视频处理能力很强。

而且,iPad Pro 采用 Type-C 接口,可以直接连移动硬盘,导出文件。它的大屏也适合视频预览。总之,种种特点都表明这个设备特别适合视频处理。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092309.jpg)

入手以后,经过几个月的试用,它的表现跟我预想的基本一样,现场拍完就能剪,立刻就能分享给亲友,或者发上网。如果你也需要旅途处理视频,我推荐这个方案。

平板电脑诞生已经超过10年了,至今没有清晰的产品定位,不能不说是一件尴尬的事。我建议,厂商们可以把它的主要用途,定位在视频处理工具,真的很合适,没准能敲开更大的市场。

顺便提一下,iPad Pro 有一个地方,让我觉得很遗憾。虽然它跟 MacBook 笔记本是一样的硬件,但是无法安装 MacOS 应用,只能安装 iOS 应用。如果苹果公司愿意升级操作系统,它就是货真价实的笔记本平板了,百分之百的生产力设备。

正在学习前端的同学,有没有听说过 **“前端工程化”** 这个词?

它是这几年的热门领域,大厂招聘往往都有这方面的要求。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092314.jpg)

那么,“前端工程化”到底是什么呢?

我们知道,大学里面有《软件工程》这门课,**如果把“软件工程”的做法用于前端项目,就是前端工程化。** 比如,优化开发流程、提高项目可维护性、自动化测试、自动化构建、项目发布管理等等。

前端工程化可以大大提升项目的可维护性,降低维护成本,提供协作便利。这对于大型项目尤其重要,所以大厂才会如此看重前端工程化。

大部分的新人程序员,由于没有参与过大型项目,对于前端工程化的概念和实践都非常陌生。这对于正规化开发和应聘大厂,很不利。如果懂一点前端工程,面试可以加分不少,起薪也会比单纯的开发岗位更高一些。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021070804.jpg)

本周的课程资料就是一个 **《前端工程化实战》资料包**,适合那些学会 React 或 Vue 框架后想更进一步提升的同学。

讲课老师通过视频,带大家动手构建一个前端组件库。以这个项目作为例子,重点讲解前端工程化的四个主要方面:测试、静态检查、代码打包发布、工作流程自动化。

同时,还会介绍目前最受关注的工程工具(Docker、GitHub Actions 和 Vite)。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021070803.jpg)

对上面的内容感兴趣,希望掌握“前端工程化”知识的同学,可以听听看这门课程。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092315.jpg)

微信扫描上方二维码,就可以 **0元** 领取这份《前端工程化实战》资料包。

报名后,记得添加助教老师微信领取。数量不多,先到先得。

1、[电动车的超快充电](https://www.sohu.com/a/480117263_383324)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082603.jpg)

广汽的新能源汽车品牌 Aion,最近展示了超快充电技术,充电时间与加油时间差不多。

该公司的 3C 快充可以使车辆在16分钟内从0%充电至80%;另一种 6C 快充的速度更快,从0%充到80%只需要8分钟。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082604.jpg)

根据现场演示,它的充电功率达到 481kW,电压为 855.6V,电流为 562.8A。这种功率只要4分钟时间,就能充入35.1度电。但是问题在于,这样大的电压和电流,对于充电站的要求很高,需要专门建设,能否推广还有待观察。如果一个城市只有几个这样的充电站,并没有实际意义。

2、[智能眼镜的隐私问题](https://www.reuters.com/technology/ireland-raises-privacy-question-over-facebook-smart-glasses-2021-09-17/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091914.jpg)

上周,Facebook 与太阳眼镜制造商雷朋合作,推出了一副智能眼镜,允许佩戴者听音乐、接听电话,还可以拍摄照片和短视频。很多人担心这种眼镜可以用于偷拍。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091915.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091916.jpg)

爱尔兰的主管部门已经做出决定,如果这种眼镜要在该国出售,摄像头工作时,LED 指示灯必须常亮,让周围的人知道他们正在被拍摄或拍照。这可以防止偷拍,很多西方国家都有规定,任何有摄像头的公共场合,都应该有显目的提示,告知顾客会被录影。

3、[世界最大的海上风力发电机](https://newatlas.com/energy/worlds-biggest-wind-turbine-mingyang/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082606.jpg)

一家中国公司发布了,世界最大的海上风力发电机。

它的尺寸有点骇人,达到了242米高,配有三个长达118 米的叶片,叶片旋转后的覆盖面积比六个足球场还要大。每小时最多可以发电16000度。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082607.jpg)

由于风力发电机的发电效率与叶片尺寸成正比,所以厂家总是尝试制造越来越大的风力发电机,降低每度电的成本。

这种发电机预计2022年建造原型机,2023年试运行,如果一切顺利,2024 年上半年开始商业生产。

4、[三星电视的远程屏蔽](https://news.samsung.com/za/samsung-supports-retailers-affected-by-looting-with-innovative-television-block-function)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082505.jpg)

三星公司的一批电视机,最近在南非仓库被窃。但是,这批电视安装了远程封锁功能,开箱后需要连接互联网激活。三星公司在收到激活请求后,根据电视的序号,远程禁用了电视的所有功能。

三星公司表示,该技术已经预装在所有三星电视之中。如果用户的电视被错误封锁,可以与官方联系解除限制。

这里的问题是,如果电视机可以被远程控制,那就可以用来监视用户,用户不会有任何察觉。所以,购买联网才能使用的电视机,是存在风险的。

5、[四足鲸鱼化石](https://www.bbc.com/news/science-environment-47822228)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082901.jpg)

秘鲁发现了距今4300万年前的鲸鱼化石,奇特的是这种鲸鱼长有四条腿,还有蹄子和蹼足。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090401.jpg)

科学家认为,这证明了,鲸鱼原来在陆上生活,能够同时游泳和行走,后来回到海里,四条腿才逐渐消失。

生命起源于海洋,后来一部分动物从海里上岸,来到陆地生活,但是其中一些动物后来又离开陆地,回到海洋,鲸鱼大概就属于这种情况。

6、[看书缩短刑期](https://prison-off.com/brazil-prisoners-reading-books-to-shorten-their-sentences/?lang=en)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082902.jpg)

巴西政府宣布,该国监狱里面的囚犯,每读一本书可以缩短刑期四天。书籍必须是文学、哲学、科学或经典著作,每年最多可减少48天的刑期,即读12本书。

每读完一本书,犯人必须撰写一篇读后感,该文章必须“正确使用语法,没有更正,保持页边距和清晰的笔迹”。监狱委员会根据读后感,来判断是否可以减刑。

巴西的监狱人满为患,相当一部分犯人是文盲。这个计划应该有助于推动犯人的学习和改造。

7、[巴黎“无车日”](https://www.businessinsider.com/pedestrians-take-to-streets-of-paris-for-day-without-cars-2021-9)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092401.jpg)

上个星期天(9月19日)是巴黎的“无车日”。自从2015年,该市规定每年这一天从上午11点到下午6点,城区全境禁止机动车,只保留公共汽车和紧急目的用车,违者将罚款135欧元(约1000元人民币)。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092402.jpg)

当天,香榭丽舍大街挤满了行人,平时那里都是挤满了车。人们发现城市变得安静,交通堵塞消失了,空气也干净了。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092403.jpg)

欧洲城市的中心城区,由于沿袭了历史上的布局,通常都非常狭小,不适合大量汽车通行,一直有禁止机动车的呼声。加上近年来防止气候变暖的考虑,“无车日”在欧洲城市变得越来越流行。

1、[杨振宁百岁生日讲话](https://china.huanqiu.com/article/44socFzJIS8)(中文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092319.jpg)

9月22日,清华大学为杨振宁先生百岁诞辰举办座谈会。会上,杨先生发表了一个讲话。百岁老人回顾人生,思路依然如此清晰。

2、[前端资源的完整性校验](https://github.com/dreamapplehappy/blog/tree/master/2021/09/20)(中文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092317.jpg)

网页的`<link>`和`<script>`标签有一个 integrity 属性,指定所加载内容的哈希值,防止被篡改。本文介绍这个属性的用法。([@dreamapplehappy](ruanyf#1964) 投稿)

3、[最好的顶级域名](https://slc.is/#The%20Best%20TLD%20is%20Not%20.com)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083113.jpg)

世界主要的顶级域名都被美国控制(比如 .com 和 .net),国别顶级域名则被各个主权国家控制(比如 .cn)。本文讨论有没有一个相对自由、可靠的顶级域名。

4、[使用 C 语言编写 Shell](https://brennan.io/2015/01/16/write-a-shell-in-c/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083109.jpg)

这篇教程讲解如何使用 C 语言,自己实现一个简单的 Shell。其实很容易,只要几十行代码就够了。

5、[如何定制 nano 编辑器](https://ariadne.space/2021/08/13/gnu-nano-is-my-editor-of-choice/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081406.jpg)

nano 是 Linux 系统自带的文本编辑器,功能简单,用起来比 vim 和 emacs 都容易。虽然它的界面很简陋,但是只要稍加配置,就能看上去像 vim 一样。

6、[如何使用 GitHub Actions 自动化开发流程](https://posthog.com/blog/automating-a-software-company-with-github-actions)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082003.jpg)

作者介绍他们公司如何使用 GitHub Actions,将各种开发步骤自动化,举了很多例子,演示了测试、代码格式化、构建、部署的配置文件应该怎么写。

7、[Cloudflare Images 发布](https://blog.cloudflare.com/announcing-cloudflare-images/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091811.jpg)

CDN 服务商 Cloudflare 发布了 Cloudflare Images 服务,这是官方的介绍文章。该服务可以托管图片的存储,提供优化、剪切和 CDN,价格相当优惠。

8、[CSS 的绝对长度单位都不准确](https://www.smashingmagazine.com/2021/07/css-absolute-units/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081309.jpg)

CSS 有几个长度单位属于绝对长度,比如像素`px`、厘米`cm`、英寸`in`、点`pt`。但是,这些单位都不是准确长度,比如`1cm`在屏幕上并不等于1厘米(上图)。

9、[Steam 平台游戏引擎调查](https://www.gamedeveloper.com/business/game-engines-on-steam-the-definitive-breakdown)(英文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090301.jpg)

本文调查了 Steam 平台上面的游戏使用什么游戏引擎,可以了解目前游戏开发工具的状况。

1、[DataStation](https://github.com/multiprocessio/datastation)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083102.jpg)

一个桌面软件,将数据库 SQL 查询、脚本编程、数据可视化结合在一起。用户可以在一个窗口里面,完成数据的查询、处理和呈现。

2、[Speakeroo](https://speakeroo.app/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083101.jpg)

这个服务将文章转成语音。用户通过浏览器插件或手机 App,把文章提交到服务器,服务器返回一个 RSS 链接,就可以在播客播放器收听该文章。

朗读质量相当高,接近真人朗读。目前支持英文、日文、韩文等,可能以后会支持中文。该服务收费,但每月有免费额度。

3、[可视化代码执行](https://pythontutor.com/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091701.jpg)

这个网站会将代码的执行流程,转成可视化图形,展示代码一步步是怎么执行的。目前支持 Python、Java、C、C++、JavaScript 和 Ruby 代码。([@WinterChenS](ruanyf#1955) 投稿)

4、[TabHub](https://tabhub.io/README_zh.html)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021092318.jpg)

一个浏览器插件,可以定制打开新的标签页时,所要显示的内容,比如图片、RSS、或者其他网页。([@gingerhot](ruanyf#1966) 投稿)

5、[Duplicate Searcher](http://malich.ru/duplicate_searcher)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083112.jpg)

Windows 软件,用来找出重复的文件,然后用硬链接取代它们,可以节省大量硬盘空间。

6、[webcam-filters](https://github.com/jashandeep-sohi/webcam-filters)

Linux 软件,为摄像头的直播视频添加各种实时的图像过滤器(目前只有背景模糊这一个过滤器),适合用于视频会议。

7、[MDcat](https://github.com/calganaygun/MDcat)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090107.jpg)

GitHub 有一个官方接口,将 Markdown 源码转为 HTML 代码。这个项目是一个简单的演示,使用 Python 代码去调用这个接口,完成 Markdown 的代码转换。

8、[favicon pang](https://favicon-pong.glitch.me/)

这个网页的 favicon 图标是一个乒乓球游戏,通过拖动网页滚动条来玩游戏。

9、[FilesRemote](https://github.com/allanrbo/filesremote)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081906.jpg)

一个 SSH 图形界面的文件管理器,通过 SSH 登录远程服务器,然后像管理本地文件一样,管理远程文件。

1、[Cyber](https://oncyber.io)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091411.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091412.jpg)

该网站允许用户创造虚拟画廊,展示自己创作的或拥有的数字艺术品(需要 NFT)。体验非常出色,值得参观,比如[这个画廊](https://oncyber.io/twinflames)和[这个画廊](https://oncyber.io/thevoid)。

2、[Apps for GNOME](https://apps.gnome.org/zh-CN/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082802.jpg)

Gnome 是 Linux 的桌面系统,这个网站是官方的 App 站,介绍自带的各种 App,制作得非常清新漂亮。

3、[手机上如何 Python 编程](https://blog.icodes.tech/2021/08/25/learn-python-programming-on-mobile-phone.html)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083003.jpg)

一个详细的指南,指导如何在手机上搭建一个 Python 开发环境。

4、[数据库连接字符串大全](https://www.connectionstrings.com/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083103.jpg)

软件连接数据库,必须提供一个数据库连接字符串。这个网站收集各种数据源的连接字符串。

5、[10 个 Python 聚类算法](https://machinelearningmastery.com/clustering-algorithms-with-python/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083107.jpg)

聚类算法是常用的数据分析技术,这个教程介绍如何在 Python 语言中,使用10种流行的数据聚类算法。

1、[风向袋](https://datagenetics.com/blog/july22021/index.html)

你可能见过风向袋。它是一种锥形的管状纺织品,一头大,另一头小,用来确定风强和风向。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021072705.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021072707.jpg)

由于风向袋的尾部直径比头部小,受风时会自然在风的方向上膨胀起来,因此可以用来了解风从哪里吹来。

风越大,风向管就会飘扬得越水平。它分成五段,三段红色,两段白色。根据水平方向的段数,可以大概判断风的强度。一段代表三节风。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021072706.jpg)

如果风向袋呈现完全的水平状,那么风力至少是15节,用级数表示,就是五级风。

2、[没有打扫的地板](https://helenmilesmosaics.org/mosaics-miscellaneous/unswept-floor-mosaic/)

古罗马人经常制作各种玻璃和宝石的镶嵌画,称为马赛克画(mosaic),很多都保留到了今天。

罗马梵蒂冈博物馆有一幅著名的马赛克画《没有打扫的地板》,描绘了宴会之后地板一片狼藉,没有打扫的情景。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021072502.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021072503.jpg)

一个英国艺术家模仿这种风格,在花园里面创作了一个名为《没有打扫的落叶》的马赛克画。下面是原始作品,以及真正落叶掉在上面的情景。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021072504.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021072505.jpg)

1、[浏览器标准被大公司左右](https://threadreaderapp.com/thread/1421078387376918529.html)

最近这些年,浏览器开发商(比如谷歌和苹果)从 W3C 手中夺取了网络标准的控制权。

网络标准正越来越多由大公司来决定,而不是由标准化组织 W3C 来决定。

大公司为了自己的业务,让浏览器的功能不断膨胀,目标是让 Web 网站做到原生应用可以做的一切,这是一个巨大的错误。

大公司明白,添加到 Web 的功能越多,浏览器之间的竞争就会越少!

谁能跟上谷歌推出新标准的脚步?Mozilla 不能,苹果不能,甚至微软也认输了,放弃自己开发浏览器引擎,直接采用了 Chromium 作为自家 Edge 浏览器的内核。

想象一下,现在有一家小公司试图从头开始编写一个 Web 浏览器。简直不可能!网络如此复杂,他别无选择,只能采用少数现有的浏览器引擎之一:Chromium、WebKit、Gecko。

这就是现在的状况,浏览器市场的竞争正在越来越少。“每个人都必须采用 Chromium”,这正是谷歌的计划。

谁主导了浏览器引擎,谁就控制了互联网。即使 Web 标准是开放的,理论上允许任何人实现浏览器引擎。但是 Web 标准那么多、那么复杂,实际上没有人可以实现能与 Chromium 抗衡的浏览器引擎,那么这种开放也没有意义了。

现在的 Web 标准被大公司控制,已经沦为 Chromium、WebKit、Gecko 和它们各自怪癖的集合。以后怎么可能还会有新引擎?

如果没有新的人可以编写浏览器引擎,网络就不会是开放的。开放只是一种错觉。

1、

失败很少是一种永久状态。失败后,继续前进就可以了。失败只是旅程中的一站,不要让它成为你的目的地。

-- [《首届 Delta Force 训练班》](https://historyofyesterday.com/the-first-delta-force-trainee-class-fc46a131fea2)

2、

现在最成功的软件公司,都是一种模式:自力更生创立、业务产生现金流、获得风险投资、开始疯狂增长。

-- [《独角兽的崛起》](https://www.nothingventured.com/the-rise-of-the-one-person-unicorn/)

3、

SerenityOS 操作系统的目标用户,是这样一种程序员:他们最早在 Windows NT 系统接触到服务器,开始成长,但是最终在 Linux 和 BSD 系统上达到成熟。

-- [SerenityOS](https://arstechnica.com/gadgets/2021/08/not-a-linux-distro-review-serenityos-is-a-unix-y-love-letter-to-the-90s/) 是一个 Linux 发行版,但是具有 Windows NT 的 UI。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081903.jpg)

4、

我认为,“去中心化”的网络要比“中心化”的网络更难建设,因为“去中心化”往往没有“中心化”所带来的商业激励,所以没有人真正推动它。

-- [《为什么没有大公司推动 P2P 文件分享》](https://blog.cfelde.com/2021/08/sharing-files-without-terms-and-conditions/)

5、

一家印度电力公司的高管告诉我,印度面临的最大问题将是缺电,电力需求以历史上从未有过的速度增长。

因为印度的夏天太热了,而且变得越来越热,印度的中产阶级也越来越多。印度家庭有钱以后,第一件要买的东西不是汽车、电脑或平板电视,而是一台空调。

-- [《如何提早发现宏观趋势》](https://www.fastcompany.com/90667124/how-to-spot-tomorrows-macrotrends-before-they-change-everything)

2020年(第 126 期):[内卷化是什么?](https://www.ruanyifeng.com/blog/2020/09/weekly-issue-126.html)

2019年(第 74 期):[信息的商业模式为什么不是收费](https://www.ruanyifeng.com/blog/2019/09/weekly-issue-74.html)

2018年(第 23 期):[统计学上的人生最大决定因素](https://www.ruanyifeng.com/blog/2018/09/weekly-issue-23.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)

issue-176

Toggle issue-176's commit message
这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/1913),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091605.jpg)

2021 世界机器人大会在北京举行,一家公司展出了“爱因斯坦”人形机器人,使用中文向学生“授课”。([via](https://photo.cctv.com/2021/09/11/PHOA6GQ0lb0RFhGynbF5j6U0210911.shtml))

开源软件通常带有许可证。大家一直很想知道,如果国内用户不遵守许可证,可以去法院告他吗?

上周有一条[新闻](https://www.oschina.net/news/159435),深圳市中级人民法院一审判决,被告违反了 GPL 许可证,赔偿侵权费50万元。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091509.jpg)

很多程序员很兴奋,认为这代表 GPL 许可证得到中国法院的认可。

我仔细读了[判决书](https://wenshu.court.gov.cn/website/wenshu/181107ANFZ0BXSK4/index.html?docId=05f553bd178d4354bb48ad5100c1314f),觉得跟大家想的不一样,这个案件很复杂,得不出法院认可 GPL 的结论。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091510.jpg)

我简单说一下案情。

济宁市罗盒网络科技有限公司(以下简称“罗盒科技”)在 GitHub 开源了软件 VirtualApp,使用了 GPL 许可证。但是,他同时又声明,不得用于商业用途,除非购买商业授权。

大家觉得,这个声明有问题吗? **可以既采用 GPL 许可证,又不许用于商业用途吗?**

回答是,这个声明有很大问题。GPL 许可证允许商用,只要你用了这个许可证,别人就可以把你的代码用于商业用途。

> [开源小知识]
>
> 如果想禁止商用,就不能使用 Copyleft 许可证(比如 GPL),而是要添加一个自己的许可声明,比如“源码只供个人学习,不得商用,除非购买商业许可证”。

因此,罗盒科技一开始的许可证选择,就有问题,后来果然出了问题。

有一个叫做“点心桌面”的商业 App,使用了 VirtualApp。罗盒科技就控告开发商福建风灵公司侵权,要求赔偿2000万元。

罗盒科技起诉的理由,不是对方违反 GPL,没有开源“点心桌面”,而是对方没有付款,就将代码用于商业用途。

所以,准确的说,这个案件跟 GPL 许可证没有直接关系,只跟风灵公司没有获得商业授权有关。法院最后判决被告败诉,也是这个原因。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091511.jpg)

但是前面说了,GPL 许可证允许商业用途,风灵公司就抓住了这一点,为自己辩护,宣称自己使用的是项目的 GPL 版本,不是商业版本,因此可以商用。

他们没想到的是,GPL 许可证的[第八条](https://www.gnu.org/licenses/gpl-3.0.html)明确写明,如果使用者不开源自己的代码,GPL 授权失效。

> 第八条 传播或修改代码时,如果不遵守规定的条件,授权自动终止。

法院因此认为,风灵公司不符合条件,不能使用 GPL 为自己的商业行为辩护。所以,这个案件不是法院认可了 GPL,而是法院认为被告不适用 GPL 许可证。

假如风灵公司遵守了 GPL,公开了“点心桌面”的源码,那还构成侵权吗?我的个人看法是,那样就不侵权。

总之,GPL 在国内维权还是很困难。它是按照美国法律写的,所有中文版都是网友翻译的,有没有准确表达含义都很难说。 **中国法院就算认可 GPL,也是作为代码作者与用户之间的合同看待。**

这意味着两点。

(1)只有代码作者才能提起侵权诉讼,其他人没法控告违反 GPL 的行为。

(2)就算胜诉,最多就是对方软件下架或者赔偿损失,很难强制开源代码,因为中国合同法没有这种先例,而且法律允许对方拒绝继续履行合同。

Node.js 诞生已经超过10年了。因为它,前端开发出现了翻天覆地的变化。

直到今天,你要学习前端的主流技术,首先就要掌握 Node.js,因为所有开发都要在它下面完成。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091601.jpg)

很多同学都想知道,怎么才能掌握 Node.js?

对于新人来说,其实只要掌握两个知识点,就能上手了:**一个是 CommonJS 模块格式,另一个就是命令行环境** (command line,简写为 CLI)。其余部分就是普通的 JavaScript 语法。

上面两个知识点之中,CommonJS 比较简单,命令行有点难,因为内容多,需要了解操作系统,以及 Node.js 提供的各种系统接口,最常用的就是文件系统接口。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091604.jpg)

这一周介绍的课程,就是 **《教你使用 Node.js 开发一个 CLI 工具》**,教大家快速入门命令行开发。

这是一门视频课,手把手带你从零开始写一个 JS 脚本,把它做成命令行工具,并发布到 NPM 上面,可以给其它人下载使用。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091602.jpg)

它不同于那些直接讲述技术点的课程,不是生硬的文档解读,而是从具体的问题出发,带出知识点,立足于教会学习者,解决现实场景中的实际问题,属于“实务导向”。

课程的主讲老师崔效瑞,有丰富的前端开发经验,是 Vue 3 的代码贡献者,也是 Element3 技术负责人、mini-vue 作者。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091603.jpg)

微信扫描上方二维码报名,就可以领取这门视频课,并了解课程的详细情况。课程推广期间,**不收取任何费用**,保证没有套路。

1、[二氧化碳捕捉工厂](https://climeworks.com/orca)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091101.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091102.jpg)

世界目前最大的二氧化碳捕捉工厂,最近在冰岛建成了。它通过风扇吸入空气,过滤出二氧化碳,然后再将二氧化碳液化,注入地下1,000米深处的矿洞存储。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091103.jpg)

二氧化碳的过度排放,是气候变暖的主要原因,目前没有好的方法吸收二氧化碳。该工厂每年只能吸收4000吨二氧化碳,只相当于800多辆汽车的排放量,而全世界2015年的二氧化碳排放量是360亿吨。([@emac](ruanyf#1946) 投稿)

2、[搞笑诺贝尔奖](https://mp.weixin.qq.com/s/9mTIHBJox5JMkrbl9nJcqA)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091303.jpg)

哈佛大学每年评选(似乎)无意义的研究,颁给搞笑诺贝尔奖。今年,日本学者(上图)获得了其中的动力学奖,他通过马路实验(下图)得到结论:

> “如果两波人相向而行,其中有人边走边看手机,将引发人群的冲撞。”

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091304.jpg)

这已经是日本学者连续15年获得搞笑诺贝尔奖了。日本网民也在议论,日本的学者是不是太多了,找不到有意义的研究题目了?

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091305.jpg)

3、[违规跑鞋](https://www.thepaper.cn/newsDetail_forward_14479959)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091401.jpg)

9月12日的维也纳马拉松赛上,埃塞俄比亚选手以2小时09分22秒的成绩获得冠军,但是随后就被取消成绩,理由是他的跑鞋违反了最新规定。

按照规定,跑鞋的鞋底厚度不能超过40毫米,但是该选手的鞋底厚达50毫米,多出整整一厘米。更厚的鞋底可以提供更好的弹力,帮助选手节省体力。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091402.jpg)

4、[游戏厅的衰落](https://www.japantimes.co.jp/life/2021/06/06/digital/japanese-gaming-arcades-pandemic/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082006.jpg)

日本的电子游戏厅曾经盛极一时,各种街机玲琅满目,但是,现在已经盛况不再。根据警方的统计,1986年日本全国曾经有 26,573 家游戏厅,到了2019年只剩下 4,022 家,疫情爆发以后,数目更是继续锐减,可能不到最高峰时的十分之一。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082007.jpg)

互联网和手机游戏的兴起,是游戏厅衰落的主要原因。目前,游戏厅的最大顾客来源是传统游戏爱好者,以及老年人。一位65岁的老人说,他把游乐厅当作社交场所,可以结交很多朋友。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082008.jpg)

一些人认为,游戏厅最终会消失。另一些人则认为,游戏厅值得保留下来,街机有其独特的乐趣。南梦宫、Square Enix、世嘉等街机公司,呼吁日本政府采取措施,促进街机行业的发展。

5、[漂浮式光伏电站](http://m.cnhubei.com/content/2021-05/15/content_13795434.html)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090906.jpg)

山东德州最近建成了,世界最大的单体水上漂浮式光伏电站。在水库的水面上,漂浮着面积2200亩的太阳能光伏板,设计总容量为320兆瓦,第一期建成了200兆瓦。

漂浮式光伏电站的好处是,对水体没有破坏性,比较环保,节省地基成本,施工周期短,还可以减少水库的水量蒸发、遮挡阳光抑制藻类生长。另一方面,光伏板放在水里,可以有效降温,显著提高发电效率。

6、[果蝇独居的后果](https://www.nature.com/articles/d41586-021-02194-2)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082105.jpg)

科学家已经知道,果蝇是一种社会化动物,所以常常用它做实验,研究人类社会。

《自然》杂志最近报道,科学家将果蝇单独隔离,与群居的果蝇进行对比。结果发现,独居的果蝇有更少的睡眠、更多的进食。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082104.jpg)

这个实验如果可以引申到人类,就表示长期独居对健康不利,群居、与他人的日常互动对健康更有利。

1、[WebOS 死亡十周年纪念](https://sspai.com/post/68372)(中文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082206.jpg)

多年前,Palm 公司曾经发布过一个手机系统 WebOS,有很多令人难忘的特性,非常易用。2011年8月11日,该系统被宣布放弃。本文回顾了这个系统。

2、[消灭后视镜](https://mp.weixin.qq.com/s/tUeFiMbQhpmXkffxVsts5w)(中文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082405.jpg)

越来越多的小汽车使用摄像头取代后视镜,有的甚至连突出的门把手都隐藏了,本文讨论这样做的原因。

3、[如何免费搭建一个 VS Code 网页版](https://justyy.com/archives/45744)(中文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091514.jpg)

VS Code 编辑器有网页版,本文教你怎么把它部署在免费服务器上,可以用来写笔记,或者偶尔远程编辑代码。([@DoctorLai](ruanyf#1953) 投稿)

4、[你所不知道的 ASML](https://threadreaderapp.com/thread/1429464932446183431.html)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082306.jpg)

全世界最先进的芯片工厂,都依赖一家公司生产的 EUV(极紫外光刻)芯片制造机,这家公司就是荷兰的 ASML(阿斯麦)公司。它一年生产50台 EUV,每台售价1.5亿美元起。

5、[12 张视觉错觉图片](https://nautil.us/blog/12-mind_bending-perceptual-illusions)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082803.jpg)

本文收集了 12 张著名的视觉错误图片。比如,上面这两张图片,看上去是不同角度拍摄的同一条街道,但是实际上,它们是同一张图片并排放在一起。

6、[绝对值的计算并不简单](https://habr.com/en/post/574082/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082305.jpg)

绝对值的算法似乎是一个微不足道的问题:判断一个数是否为负数,如果是的,就去掉它的负号。如果你采用这样的算法,那你就错了。

7、[React usePrevious 钩子](https://davidwalsh.name/react-useprevious-hook)(英文)

本文介绍如何使用 useEffect 和 useRef 的官方钩子,写一个自己的 usePrevious 钩子,返回组件上一次渲染时的 props 参数。

8、[浏览器的“包导入地图”](https://github.com/wicg/import-maps)(英文)

Chrome 89 开始支持 ES 模块的“包导入地图”功能(package import maps),可以为导入模块指定别名。

1、[Ventoy](https://github.com/ventoy/Ventoy)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082403.jpg)

一个 U 盘的启动盘制作工具,直接把系统镜像文件复制到 U 盘即可。它支持电脑启动时,从多个系统镜像文件里面选择一个启动。

2、[WebDen](https://webden.dev/landing/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082605.jpg)

专供手机浏览器使用的网页代码编辑环境,提供 HTML、CSS、JS 的开发和调试。

3、[View Source](https://neatnik.net/view-source/)

一个 Web 小工具,输入网址,就可以高亮显示该网址的源码,非常好用。

4、[fishdraw](https://github.com/LingDong-/fishdraw)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081311.jpg)

一个 JS 脚本,可以自动生成鱼的图形。这里还有一个可以[自动画树](https://github.com/zv/tree)的库。

5、[MDvideo](http://mdvideo.gshll.com/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091513.jpg)

一个桌面软件,自动将 Markdown 文档转成一段视频。文档里面的视频、音频、图片网址,都会抓取后插入视频,还可以根据文字生成人工语音的旁白朗读。

它非常适合快速生成产品的介绍视频。([@linqian02](ruanyf#1952) 投稿)

6、[group-by-repo-on-github](https://github.com/foamzou/group-by-repo-on-github)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091210.jpg)

油猴脚本,用来处理 GitHub 的网页搜索结果,可以根据仓库分类,并自动获取分页结果,即不用点击“下一页”了。([@foamzou](ruanyf#1941) 投稿)

7、[iDraw.js](https://idraw.js.org/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091308.jpg)

一个简单的 JS 库,用来使用脚本进行网页绘图。它基于 Canvas,可以绘制文字、矩形、圆形、图片、HTML 片段和 SVG 文件。([@chenshenhai](ruanyf#1949) 投稿)

8、[PikaScript](https://github.com/pikasTech/pikascript)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091306.jpg)

这个项目用来为单片机提供 Python 支持,让你可以通过 Python 脚本操作单片机。([@pikasTech](ruanyf#1944) 投稿)

9、[mini-stores](https://github.com/linjc/mini-stores)

小程序状态管理库,方便管理页面状态,支持各公司的小程序。([@linjc](ruanyf#1940) 投稿)

10、[Neumorphism](https://neumorphism.coldstone.fun/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091512.jpg)

一个网页工具,用来生成照明阴影效果的 Flutter 代码。这里还有 [CSS 版](https://neumorphism.io/)。([@xrr2016](https://github.com/ruanyf/weekly/issues/1951) 投稿)

1、[Samantha Ming 个人网站](https://www.samanthaming.com/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091307.jpg)

Samantha Ming 是一名加拿大前端工程师,她在个人网站上分享了很多前端代码的技巧,内容质量很高,制作精美。([@wxyudl](https://www.samanthaming.com/) 投稿)

2、[糖尿病教育网站](https://dtc.ucsf.edu/zh-hans/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091110.jpg)

加州大学旧金山分校主办的网站,全部使用中文,提供糖尿病、健康、运动、饮食知识,内容很不错。([@stupid-human](ruanyf#1938) 投稿)

3、[程序员的数学导论](https://pimbook.org/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081702.jpg)

一本英文的数学教材,专门写给没有数学基础的程序员,主要介绍微积分和线性代数,并且结合编程实例(比如加密和神经网络)进行讲解。全书可以0元购买。

4、 [SQL Bolt](https://sqlbolt.com/)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071714.jpg)

一个交互式的英文在线教程,一共19课,从零开始讲授 SQL 知识,以及如何查询数据库。

5、[国际数据管理手册](http://www.grcdi.nl/gsb/global%20sourcebook.html)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080512.jpg)

该网站提供全世界各国的各种数据格式,比如地址、电话、邮政编码、货币、车牌等的格式。

1、[手机学习网页开发](https://www.linkedin.com/posts/shubham-sharma-34bbab18b_webdevelopment-css-html-activity-6820715919568961536-WApS/)

一个尼泊尔老师在网上贴出照片,他的学生没有笔记本电脑,只能通过手机架设开发环境,学习网页开发。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021072205.jpg)

经过两个月,这个学生已经初步掌握 HTML、CSS 和 JS。

2、[世界上最长的钢琴](https://www.alexanderpiano.nz/page/the-alexander-piano)

钢琴的音质与琴弦的长度有关。琴弦越长,振动越慢,就能发出越低频的声音,所以高级的三角钢琴,体积都很大,长度都不短于2.3米。

一个新西兰青年阿德里安不禁突发奇想,如果制造一个特别长的钢琴,不就可以发出非常低的音频吗?

他决定自己来造一个,从图书馆找到资料,在钢琴师傅的指导下,开始动手建造。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071706.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071707.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071708.jpg)

最后,他造出了世界上最长的钢琴,长度接近10米。

他说,本想造得更长,但是他家的车库放不下了。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071704.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071705.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071709.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071710.jpg)

果然,这架钢琴的音质相当好,吸引了很多专业音乐家专程来演奏,还灌制了唱片。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071711.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071712.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071713.jpg)

1、**乔布斯的白板事件**

摘自沃尔特·艾萨克森的《乔布斯传》。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091611.jpg)

1985年,30岁的乔布斯被赶出了苹果公司。

他随即创立了 NeXT 公司,继续开发符合他理想的下一代个人电脑。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091613.jpg)

1986年,一家叫做 Pixar 的图形硬件公司找到了乔布斯。那家公司濒临破产,急需资金。乔布斯经过思考,同意给钱,成为这家公司的最大投资者。

最初,这只是一笔单纯的风险投资。但是后来几年,Pixar 还是不断亏损,乔布斯不得不追加投资,最后索性成了公司的董事长,直接介入公司管理。

那时,乔布斯每周有一两天去 Pixar 公司办公,剩下的时间就去 NeXT 公司办公。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021091612.jpg)

进入九十年代以后,NeXT 公司和 Pixar 公司的业务都不见起色,看上去两家公司都会失败。这是乔布斯一生中的最低潮,他的压力很大。

有一天,Pixar 公司开会,乔布斯对 Pixar 创始人史密斯和其他高管破口大骂。因为他们一直拖延,没有按时拿出下一代图像电脑的电路设计。

那个时候,NeXT 的新产品也没有按时完成。史密斯就反唇相讥:“嘿,你的 NeXT 电路板做完了吗?不要光盯着我们。”

乔布斯听了勃然大怒。史密斯后来回忆:“他气到失去理智。” 史密斯说话有西南部口音,乔布斯就学他的口音,冷嘲热讽。史密斯说:“他欺人太甚,太过分了。我也气炸了,什么话都骂出口。于是我们几乎贴着对方的面,大约只隔一个巴掌宽,互相对骂。”

乔布斯开会时,一定要把白板据为己有,不轻易让别人使用。史密斯利用自己的大块头,一把推开他,迳自走到白板前,边写边解释。乔布斯吼道:“你给我住手!”

“咦?”史密斯回击:“白板是你的吗?我不能写吗?简直是胡扯。”乔布斯气得当场离席。

这场会议以后不久,史密斯就辞职离开了 Pixar,自己创业开了一件软件公司,专攻电脑绘图和影像编辑。

他很幸运,微软后来买下了他的公司。他可能是历史上唯一一位,创立了两家公司,一家卖给了乔布斯,另一家卖给了比尔·盖茨。

1、

如果你走得足够远,其实就再也没办法回去了。当你回到故乡,原来的一切都已经消失了。

不过,这也不算什么,归根结底,旅程才是你的故事中最重要的部分。

-- [《如果有无尽的推动力,宇宙飞船可以飞多远?》](https://www.forbes.com/sites/startswithabang/2021/12/30/how-far-could-a-spaceship-go-if-we-never-ran-out-of-thrust/?sh=6d38da5429ee)

2、

二战开始后,德国轰炸伦敦。伦敦市区每天晚上都有炸弹落下,郊区的炸弹比较少,可能每周一次。

战后的调查发现,在这段时期,市区居民的胃溃疡发病率显著增加,奇怪的是,郊区居民的胃溃疡发病率,增加得比市区还要大得多。这说明压力的不确定性比压力本身伤害更大。

--[《学会减少不确定性》](https://ofdollarsanddata.com/become-an-uncertainty-killer/)

3、

Dropbox 这个软件给人的感觉是,很早就达到了顶峰,然后随着开发团队尝试添加越来越多的功能,而逐渐变得糟糕。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=28150985)

4、

赚到一百万美元以后,再往前走的动力都来自你的热情。

-- [Joel Spolsky](https://news.ycombinator.com/item?id=27865101)

5、

幸福的秘诀就是永远抱有低期望值。(the secret to happiness is low expectations.)

-- Hacker News 读者

2020年(第 125 期):[数字人民币要取代谁](https://www.ruanyifeng.com/blog/2020/09/weekly-issue-125.html)

2019年(第 73 期):[数据统计的威力](https://www.ruanyifeng.com/blog/2019/09/weekly-issue-73.html)

2018年(第 22 期):[猴子自拍,版权归谁](https://www.ruanyifeng.com/blog/2018/09/weekly-issue-22.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)

issue-175

Toggle issue-175's commit message
这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/1913),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090809.jpg)

河北太行山脉,山头密密麻麻都被太阳能板覆盖了。([via](http://m.thepaper.cn/rss_newsDetail_2755422))

[上一期](https://www.ruanyifeng.com/blog/2021/09/weekly-issue-174.html)谈到,“特长程序员”比“全能程序员”吃香。

网友发给我一个[网址](https://nested.substack.com/p/short-fat-engineers-are-undervalued),国外有人已经谈过这个话题。

![](https://cdn.beekka.com/blogimg/asset/202102/bg2021021404.jpg)

国外作者画了一张图,将世界上的程序员比喻成三种形状。

(1)大饼型:拥有知识广度,但没有知识深度。

(2)竹竿型:拥有知识深度,但没有知识广度。

(3)T 型:介于前两者之间。

那篇文章也认为,通常情况下,竹竿型程序员的出路最好,雇主愿意为知识深度买单。因为现代社会高度分工,越是大公司,岗位职责越明确,需要的是领域专家,而不是多面手。

但是作者提到,**有一种情况例外,知识广度有明显优势,那就是确定项目路线的时候。**

![](https://www.wangbase.com/blogimg/asset/202102/bg2021021405.jpg)

请看上图,右上角有一个黑点,那是公司的目标。当前位置在左下角的原点,两点之间没有现成的道路,需要自己寻找实现路径。

这时,知识广度就发挥作用了,了解的信息越广泛,知道的情况越多,就越可能具备洞察力,能够在多条路径里面,选出最合适的道路。知识面狭窄的人,由于不了解其它道路,不管遇到什么问题,可能都选择他会的那一条路,比如 Java。

这就是全能程序员的优势,判断正确的仰角 θ,使得两点之间距离最短;特长程序员的优势是前进速度 r,可以在既定道路上做到快速前进。所以,**知识的广度能告诉你什么是正确的方向,知识的深度则可以让你在该方向上快速前进。**

对于长期而艰巨的项目,走得快固然重要,但更重要的是走对方向。如果仰角 θ 不对,走得再快也没用,因为一开始就走错方向,后期必须停下来校正方向,甚至可能永远到达不了目标,白白浪费了生命。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090815.jpg)

因此,**全能型的人才比较适合确定项目方向,担任团队领导。** 乔布斯、马斯克就是这样的人,强在知识的广度,而不是知识的深度。他们既懂技术,又懂市场和管理,还了解人文(“我喜欢站在人文和技术的交叉点”),一旦掌握资源,就能带领团队,做出创新的产品。但是,如果让他们担任工程师,绝对是糟糕的工程师,会被开除。

不过话说回来,现实中,谁会因为你知道的事情多,就让你担任团队领导呢?反而是因为你克服了技术难题,才有机会来领导团队。乔布斯和马斯克都是自己创业才出头的,恐怕不是偶然。

总结一下,对于公司来说,如果有明确的技术方向,那么就需要聘请特长程序员,帮助加快开发速度。如果是刚刚诞生的创业公司,方向还在摸索之中,那么全能程序员也许更有价值。

随着互联网一起飞速发展的职业,除了程序员,就是设计师了。

大家知道吗,设计师的招聘需求,一点不比程序员少。而且,由于自学的难度高,好的设计师有时比程序员更难求。

国内的设计师一直存在巨大的人才缺口,供不应求。设计师的平均工资,北京市今年达到了18K,可能已经超过了程序员的平均工资。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090901.jpg)

在互联网公司的产品团队里面,设计师都是标配,而且往往不止一个,前端程序员都有对接的设计师。大型团队的设计师,还有明确的分工:UI 设计师、平面设计师、交互设计师……

周刊每周介绍的课程,一般都是程序员课程,今天是第一次,向大家介绍一个免费的设计师课程 **《零基础学 UI 设计 & 视觉设计》** 。

如果你想增加一些设计知识,或者就是想成为设计师,去互联网公司或广告公司求职,那么就是这个课程的目标听众。

课程分成三天,老师先讲解海报设计、品牌设计、UI 设计的一些要领,然后带你完成一个真实的海报设计项目和一个名企品牌的设计方案,最后还会分享设计师的市场行情和职业规划。它可以当作设计师入门培训,也可以当作求职训练。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090903.jpg)

该课程由国内著名的培训机构“开课吧”提供,三天的讲课之中,除了体验如何完成设计项目,动手实操海报创意作品以外,还可以获赠设计的学习资料包。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090904.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090905.jpg)

微信扫描上方二维码,或者点击[这个链接](https://wx.kaikeba.com/xiaoke/market/landing-page/v2/k3mVKDj9LAUXvdxmG8N?id=59140),添加助教老师就可以报名。感兴趣的朋友,不妨听听看。

1、[高科技软甲](https://www.tmtpost.com/5565230.html)

《自然》杂志报道,科学家最近研发出一种 3D 打印面料,可以做成人体软甲。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081302.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081404.jpg)

这种材料是一种聚合物,而不是针织物。它的最大特点是能在柔软和坚硬两种状态之间切换。处于柔软状态时,它易弯折,可以贴附在人体表面。

但是一旦成型以后,它会变得异常坚硬,能够承受巨大的外力。因此,可以用作运动员、军人的外骨骼和防弹衣。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081304.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081303.jpg)

2、[智能机器马](https://www.ithome.com/0/573/894.htm)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090801.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090804.jpg)

小鹏汽车发布了一款可以乘坐的智能机器马,其实就是一个四足机器人,带有摄像头、激光雷达等汽车级别的智能驾驶系统。

它可以当作玩具,让小朋友骑,会自动行进,智能避障,并且能跟小朋友进行互动对话。小朋友抚摸机器马,它也会做出反应。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090802.jpg)

此外,它还可以当作载具,在主人取货、逛街、远足时载货。它的具体发售日期和售价,还没有公布。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090803.jpg)

3、[新陈代谢速率](https://cn.nytimes.com/health/20210813/metabolism-weight-aging/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081401.jpg)

《科学》杂志报道,科学家发现人体新陈代谢的速率,与以前认为的不一样。

 - 1岁时,新陈代谢达到最高点。
 - 1岁到20岁,新陈代谢每年放缓约3%。
 - 20岁到60岁,新陈代谢保持稳定。
 - 60岁以后,每年下降约0.7%。

这意味着,青年和中年时期,人体的能量消耗速度并没有下降。

所以,20岁到60岁之间,节食可以减肥,因为新陈代谢并没有放缓,只要吃得少,体重就会下降。进入60岁以后,就很难通过节食减肥,因为新陈代谢每年都在下降,节食效果越来越小。

4、[SpaceX 的民用航天项目](https://nypost.com/2021/09/05/spacex-cleared-for-historic-civilian-launch-next-week/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090713.jpg)

SpaceX 公司预定在下周三(9月15日),发射一艘宇宙飞船,四名宇航员全部都是平民。这是历史上第一次“平民宇航员”的宇宙飞行,为将来的太空旅游做尝试。

这四名乘客此前没有任何宇航经验,他们将在太空停留三天。这与贝佐斯今年7月份仅仅持续50分钟的“飞出大气层”之旅完全不一样,更接近真正意义上的“太空旅游”。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090714.jpg)

5、[道路使用费](https://www.fierceelectronics.com/electronics/goodbye-gas-tax-hello-road-user-fees)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081501.jpg)

美国国会最近通过了一项计划,研究征收统一的道路使用费是否可行。

目前,世界各国都对汽油额外收费,用于道路维护,比如美国征收汽油税,中国征收燃油附加费。但是,越来越多的人开始使用电动汽车,不再使用汽油车,这笔钱就收不到了。

为了给道路维护提供资金,确实应该找到一种办法,按照行驶里程,对所有车辆征收道路使用费。

6、[小行星撞地球](https://news.yahoo.com/nasa-boosts-impact-risk-potentially-220546594.html)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081602.jpg)

根据美国宇航局的计算,有一颗叫做 Bennu 的小行星,直径约为492米,将在一个多世纪后的2135年到2200年之间,在地球和月球之间经过,而且不能排除撞上地球的可能性。

早先的计算是撞击概率为2,700分之一,后来经过修正为1,750分之一。不过,就算千分之一的可能,真的相撞了,那时的科技应该有改变小行星轨道的方法。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081603.jpg)

7、[Mac 专用机械键盘](https://www.theverge.com/2021/7/16/22579847/epomaker-nt68-wireless-mechanical-keyboard-laptop-macbook)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071603.jpg)

很多人不喜欢笔记本电脑的键盘,不如机械键盘手感好。一家英国的键盘公司,就发明了一种供笔记本电脑使用的便携式机械键盘。

使用时,套在 Mac 笔记本键盘上方即可。这样的话,既提供了良好的打字手感,又不必适应不同的键盘布局。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071604.jpg)

1、[青海冷湖:东半球唯一一个世界级天文台址诞生记](https://finance.sina.com.cn/tech/2021-08-19/doc-ikqciyzm2290832.shtml)(中文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081905.jpg)

中国国家天文台经过3年连续监测认定,青海冷湖的光学观测条件比肩国际一流大型天文台。

这一发现为中国光学天文发展创造了重大机遇,也为国际光学天文发展提供了宝贵的战略资源。8月18日的《自然》杂志公布了这项重大科学进展。

2、[中国的实验室猴子短缺](https://www.bjnews.com.cn/detail/163111532114807.html)(中文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090907.jpg)

生物医药研究,都需要用到实验室猴子(主要是猕猴)。猕猴是国家保护动物,不能去野外抓,只能从养殖场购买。由于疫情,猴子供应紧缺,价格飞涨。本文介绍了国内实验室猴子的状况。

3、[使用 React.memo() 提高组件性能](https://alexsidorenko.com/blog/react-render-always-rerenders/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082005.jpg)

默认情况下,如果React 父组件重新渲染,它包含的所有子组件都会重新渲染,即使子组件没有任何变化。

React.memo() 方法可以防止子组件不必要渲染,从而提供组件性能。

4、[CSS 盒状模型的 block 和 inline 之分](https://css-tricks.com/css-logical-properties-and-values/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081310.jpg)

CSS 盒状模型的`border`、`margin`、`padding`属性,有 block 和 line 之分,比如`padding`有`padding-inline`和`padding-block`两个子属性。本文介绍这种区别。

5、[elm 语言的使用心得](https://engineering.rakuten.today/post/elm-at-rakuten/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081902.jpg)

作者在生产环境使用 Elm 将近两年了,写了10万行代码。这篇文章详细评价了 elm 语言,给予很高的评价。本文写得很好,推荐阅读。

6、[NetBSD 解释](https://www.makeuseof.com/what-is-netbsd/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081908.jpg)

一篇科普文章,介绍什么是 NetBSD 操作系统,它的由来和特点。

7、[Let's Encrypt 的免费替代品](https://scotthelme.co.uk/heres-another-free-ca-as-an-alternative-to-lets-encrypt/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082107.jpg)

现在大家都用 Let's Encrypt 生成免费的 HTTPS 证书,本文介绍其它三个类似的免费证书服务。

8、[JavaScript 涟漪动画](https://www.bryanbraun.com/2021/04/15/ripple-animation-in-javascript/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082001.jpg)

一篇简单的 JavaScript 教程,介绍如何在 Canvas 上面,使用正弦函数画出涟漪动画。

1、[Clip It](https://hypetrigger.io/clipit/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081913.jpg)

一个智能视频剪辑软件,分析 OBS 软件的直播视频,从中选出精彩片段,通过人工智能自动生成一段精选视频。

2、[NvChad](https://github.com/NvChad/NvChad)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082004.jpg)

一个 NeoVim 编辑器的插件集合,将其变成一个完备的 IDE 开发环境。你也可以用它来了解 NeoVim 编辑器需要安装什么插件。

3、[Lit](https://lit.dev/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082106.jpg)

谷歌推出的基于 Web Components 的前端框架,非常小巧(5KB),用法很优雅。

4、[intellij-media-player](https://github.com/wuyr/intellij-media-player)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090718.jpg)

这个插件可以让 JetBrains 公司的 IDE,在背景里面播放视频。适合在同一个窗口,一边编码,一边看视频。([@wuyr](ruanyf#1926) 投稿)

5、[markdown-tweet-scheduler](https://github.com/reidjs/markdown-tweet-scheduler)

使用 GitHub Actions 将仓库里面的 Markdown 文件,定时发到推特上面。

6、[Webpack to Vite](https://github.com/originjs/webpack-to-vite)

这个工具可以将 Webpack 项目转为 Vite 项目。([@Chieffo2021](ruanyf#1924) 投稿)

7、[Act](https://github.com/nektos/act)

一个在本机搭建 GitHub Actions 环境的工具,让你在本机运行 GitHub Actions,可以用来验证 workflow 文件是否正确。

8、[TypeIt](https://typeitjs.com/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082301.jpg)

一个 JS 库,用来在网页上生成打字机输入文字的动画效果。

9、[Gitfs](https://www.presslabs.com/docs/code/gitfs/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082302.jpg)

这个工具把一个远程 Git 仓库挂载到本地目录,该目录所有的变动自动提交到 Git,并推送到远程仓库,因此也可以回滚到任意时点。它相当于实现了基于 Git 的文件系统。

1、[商务部国别指南](http://fec.mofcom.gov.cn/article/gbdqzn/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081029.jpg)

商务部网站提供全世界各国的《国别指南》,PDF 文件免费下载,详细介绍各国基本情况,内容非常实用。

2、[交互式线性代数](http://textbooks.math.gatech.edu/ila/index.html)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081415.jpg)

一本英文的初级线性代数教材,免费在线阅读,并提供 PDF 下载,最大特点就是配有很多图片,方便理解。

3、[机器学习入门](http://smlbook.org/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081416.jpg)

瑞典乌普萨拉大学的《机器学习》英文教材,针对大学新生,有 PDF 全书下载。

4、[Merlin](https://merlin.allaboutbirds.org/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081901.jpg)

一个手机 App,用来识别看到或听到的鸟类,特色是可以根据鸟的叫声识别是什么鸟。

5、[技术面试手册](https://techinterviewhandbook.org/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082401.jpg)

工程师如何准备技术面试的英文免费电子书,全书分成两部分:面试本身的准备和技术知识的准备。GitHub 有5万多颗星。

1、[中银胶囊塔大厦](https://failedarchitecture.com/2014/06/a-year-in-the-metabolist-future-of-1972/)

1972年,日本东京建造了一个胶囊大厦,使用140个预置的公寓单元,堆叠成一幢楼,称为中银胶囊塔。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071305.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071306.jpg)

建筑师的设想是,以后可以随意更换某个单元,使用新的胶囊替换旧的,不影响其他单元。但是建造完成后,开发公司就破产了,所有单元后来都没有更换过。

更糟糕的是,由于组合结构本身的缺陷,以及建造质量不过关,建成后一直有漏水问题,导致内部结构生锈,破损不堪。前几年,政府决定拆除这栋楼,但是一直没有动工。

目前,楼里只有少部分的房间,还有人居住。前几年,有一位摄影师拍摄了一些胶囊大楼居民的生活状态。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071307.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071308.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071309.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071310.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071311.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071312.jpg)

2、[古斯塔夫·哈肯松](https://en.wikipedia.org/wiki/Gustaf_H%C3%A5kansson)

1951年,66岁的瑞典人古斯塔夫·哈肯松(Gustaf Håkansson),报名参加一个超长距离1764公里的自行车比赛。主办方拒绝了,理由是他的年纪太大了,比赛只允许40岁以下的人参加。

但是,他还是跟选手一起出发了,但不是正式参赛者,而是在最后一名参赛者出发后一分钟出发,并穿着一件写着零的号码牌衬衫。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071403.jpg)

比赛分成好几天,其它参赛者睡觉时,古斯塔夫·哈肯松依然在骑车。他留着很长的白胡子,显得更加苍老。许多报纸都报道了他的故事,引起了全国的关注,他变成了知名人物。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071402.jpg)

经过6 天 14 小时 20 分钟,他率先到达终点,比其它参赛者早了 24 小时。人们在终点迎接他。

他一直活到了1987年,102岁逝世。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071404.jpg)

3、[空中看极光](https://twistedsifter.com/2021/09/southern-lights-under-full-moon-from-space-iss/)

一位欧洲宇航员在国际空间站,拍到了地球南极的极光照片。

最难得的是,那天是满月,所以光照非常好,可以清晰地看到云层和地面,非常壮观。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090806.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090807.jpg)

1、[错误的面试答案,让我得到了工作](https://dewitters.com/i-had-to-give-a-wrong-answer-to-get-the-job/)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071903.jpg)

2007年,我去一家公司应聘程序员。当时,为了应聘成功,我不得不故意答错了一个问题。你可能觉得很奇怪,让我解释一下怎么回事。

面试官有两个人:技术团队的负责人和公司总经理。总经理是技术负责人的上级,技术负责人对我进行提问。

一开始是几个一般性的问题,然后他问我“什么三层架构”?

我回答说,“三层架构”就是客户端-服务器-数据库。我还补充说 Web 浏览器就是最常见的瘦客户端。他们似乎对我的回答很满意。

他接着问:“三层架构与 MVC 模式(模型-视图-控制器)有什么关系?”

我知道,这个问题有一点棘手。大多数人都会将两者等同起来,但是实际上,MVC 模式只用于中间的“应用程序”层,并不涉及客户端和数据库。

维基百科是这样解释的:

> “三层架构”的一个基本规则是,客户端不直接与数据层通信,所有通信都必须通过中间层。因此,从概念上讲,三层架构是线性的。
>
> 然而,MVC 模式是三角形的:视图层向控制器发送更新,控制器更新模型,模型的更新又直接触发视图的更新。

我原想这样回答,但是我怀疑,面试官认定的正确答案,就是大多数人的错误答案。如果我说出自己的答案,他会认为我是错的。

要是我当面指出他的错误,而他的老板又在一旁,就等于在老板面前让他丢脸。那么,他可能会坚持自己的立场,拒绝我的正确答案,挽回自己的面子。他也可能承认自己错了,当众丢脸。

我觉得这两种结果都不好,最后决定,我必须回答他们眼中正确的答案。

我先试探着,说出我的正确答案,看看对方的反应。

“MVC 模式是一种软件模式,属于代码的组织形式,大多数情况下,仅在应用程序层运行……”

我看到技术负责人皱着眉头,所以猜想这不是他预期的答案。我就改口说:“视图对应用户界面,控制器对应应用层,模型对应数据库”。

搞定!回答正确!大家都很高兴,我得到了这份工作。

这个故事告诉我们,面试不仅仅需要技术技能,还需要人际交往能力。这也很合理,因为实际工作中,确实两种能力都需要。

1、

宇宙诞生于138亿年前的大爆炸,可能会在未来数十亿年后终结。我们还不知道宇宙到底是什么,但是无论宇宙是什么,它肯定与我们人类无关。我们越了解宇宙,宇宙也就越发显得毫无意义。

-- [史蒂芬·温伯格](https://www.scientificamerican.com/article/learning-to-live-in-steven-weinbergs-pointless-universe/),不久前去世的诺贝尔奖得主、美国物理学家。这是他的畅销科普书《宇宙诞生后的前三分钟》里面的名言。

2、

自由软件运动,本质上不是一场软件运动,而是一场社会运动,因为它的核心是提倡一种基于“共享”的意识形态,要求成员相互支持和帮助。

-- [《理查德·斯托曼与自由软件的历史》](https://www.cmpod.net/all-transcripts/history-open-source-free-software-text/)

3、

许多企业拒绝自由软件,提出质疑:如果一家公司免费赠送软件产品,它如何生存?

理查德·斯托曼不得不向他们解释:自由软件只是要求给予用户自由,而不是提倡免费。但是,企业无法理解这种意识形态的细微差别。

-- [《理查德·斯托曼与自由软件的历史》](https://www.cmpod.net/all-transcripts/history-open-source-free-software-text/)

4、

日本的卡通片画师,画一帧可以赚 1.80 美元,有时一个月只能画 300 帧,总收入为 540 美元。这点钱维持生计非常困难,所以日本动画师离职率极高。

-- [《日本动画师离职率高达90%》](https://www.animenewsnetwork.com/interest/2021-08-06/animator-dorm-project-about-90-percent-of-animators-quit-their-jobs-within-3-years/.175908)

5、

我在普林斯顿大学学习物理学时,曾经与一个同学一起花了三个小时,研究一个非常困难的偏微分方程,但一无所获。后来,我们去找了班上最聪明的同学,他看了几分钟就说:“余弦变换可以解”。我们表示不理解,他就写了三页纸的答案,并说几年前就解过类似的问题。

因为这件事,我知道自己永远不会成为一名伟大的理论物理学家,所以就改学了计算机。

-- [贝佐斯](https://get21stnight.com/2021/08/09/difficult-math-is-about-recognizing-patterns-lessons-from-jeff-bezos/),亚马逊公司的老板,回忆大学生活

2020年(第 124 期):[华为如何考核员工](https://www.ruanyifeng.com/blog/2020/09/weekly-issue-124.html)

2019年(第 72 期):[当代人不再有手稿](https://www.ruanyifeng.com/blog/2019/09/weekly-issue-72.html)

2018年(第 21 期):[人生的水平运动和垂直运动](https://www.ruanyifeng.com/blog/2018/09/weekly-issue-21.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)

issue-174

Toggle issue-174's commit message
这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/1913),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090117.jpg)

浙江普陀山客运中心最近获得2021年度凡尔赛建筑奖。([via](http://www.zshid.com/?c=building&a=view&id=4499))

我读过一些篮球报道,里面说 NBA 球队不喜欢“全能型球员”,更喜欢“特长型球员”。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090115.jpg)

所谓“特长型球员”,指的是其他方面可能都不行,但是某一方面特别突出,比如防守特别好、三分特别准,或者篮板很强等等。球队愿意签这样的球员,关键时刻派上场,没准就能立下奇功。

反过来,“全能型球员”各项技术都很均衡,防守、进攻、投篮都还可以,能达到平均水平,但是每个方面都不突出,没有明显的过人之处。球队看不上这样的球员,觉得让你上场,赢不了球。

我马上联想到, **软件行业其实也是如此,“全能程序员”的出路,明显不如“特长程序员”。**

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090116.jpg)

如果你什么都会干,前端、后端、数据库、服务器管理都能上手,那么哪里缺人手,就会让你顶上去。但是,一旦遇到疑难问题,又指望不了你,因为你不是那个方面的专家,解决不了。

反过来,你精通某一项技术,其他都不懂,公司反而会觉得你更有价值。因为你可以把这个技术做得很深,克服技术难点,超过竞争对手,所以你的晋升会快得多。

我甚至[读到过](https://www.peachesnstink.com/p/A6HSwaoL92ZN7A3lrpkXZJ)这样一段话:

> “绝大多数成熟的程序员都专攻某一个技术栈,因为这样更容易找到工作。 **一些专家甚至认为,在不同的技术栈中工作是简历的污点。**”

所以,大家写简历的时候,千万不要把自己懂的所有技术都写进去,那是简历的扣分项。而只写你掌握最深的那项技术,以及与之相关的工作经历。

同样的,新人如果想在软件行业长远发展,建议选择一两个技术方向进行专研,成为专家,而不要什么技术都懂一点,但是哪一项都不精通。

但是,这样也有风险,万一你选择的技术栈走下坡路(比如 PHP),甚至消失了(比如 Flash),你可能被迫要换技术栈,那就惨了。

最保险的做法,就是选择那些有大公司支持的技术。这就是为什么市场上有那么多 Java 专家和 .Net 专家的原因。

总之,“全能程序员”在这个行业是不受待见的,被视为“万金油”。如果你不幸属于这一类,那么除了抓紧时间开发特长以外,也不必过分灰心。我觉得,全能程序员也有自己的价值和优势,这个就放在下一次谈吧。

本周有一个理财活动的消息,关于**养老金的规划和咨询**。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082915.jpg)

程序员是年轻人群体,对于养老金,大家关心的不多。有些人还有错误的观念,觉得如果工作的年限足够长,公司就会承担你的养老金。

这种想法不对,养老金跟公司无关,是由社保承担的。我国现行的规定是,只要缴纳养老保险满15年,达到法定退休年龄后(目前是60岁,以后会上调到65岁),就可以从政府领取。所以,大家要关心公司有没有缴纳养老保险,这关系到你以后能不能领到养老金。

程序员这个职业,流动性非常大,换公司是家常便饭,而且这是一个年龄敏感的职业,很少有人能写代码一直到退休。所以,养老金对于程序员,相对来说有更大的保障意义。

下面是几个大家普遍比较关心的问题。

> 1. 如果提早退休,或者离职后没有再找工作,社会保险怎么处理?
> 1. 养老金的金额怎么计算?如何拿到更多的养老金?
> 1. 自由职业的程序员,可以领取养老金吗?
> 1. 除了国家的养老金,商业的养老保险是否值得考虑?

这些问题都可以在本次的养老金活动里面咨询。

这个活动来自一直跟我合作的孙明展老师。他从世界500强保险公司离职后,自己创业,开办了[创必承公司](https://www.trussan.com/),从事理财教育和财务咨询工作。大家搜一下“孙明展”这个公号,上面有多年来很多原创的理财科普文章。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082916.jpg)

这一次他们为了推广业务,考虑到周刊读者大多数是程序员,就办了这个《养老金的规划和咨询》活动,一共有200个免费名额。各种财务问题都可以咨询,专业的理财师会为大家提供养老金规划,以及家庭财务保障定制服务,保证不推销任何产品。

活动的主要内容如下:

> - 养老金目标梳理;
> - 家庭成员保障责任综合评估;
> - 现有保险产品的性价比分析比较;
> - 家庭风险属性评估;
> - 基于家庭状况和需求的养老金规划和家庭保障规划构建。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082914.jpg)

微信扫码上面二维码,就可以报名。感兴趣的朋友,欢迎参加。

1、[.com 域名涨价](https://domainnamewire.com/2021/02/11/breaking-verisign-announces-com-price-hike-to-8-39/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083111.jpg)

从今年9月1日开始,.com 域名的注册费从 $7.85 上调到 $8.39,每年增加54美分。

全世界的域名由 ICANN (互联网名称与数字地址分配组织)管理,它把 .com 域名的管理权委托给 VeriSign 公司,再由 VeriSign 向域名零售商收取注册费,并将一部分收入转交给 ICANN。

由于 VeriSign 垄断了 .com 域名的注册权,并且还是一家上市公司,历史上域名注册费一直在上涨。可以预期,未来几年中 .com 域名的注册费还会上涨。

2、[电子咖啡](https://www.scientificamerican.com/article/neck-zapping-gadget-reduced-all-nighter-fatigue-in-new-study/)

很多人工作疲惫时,会喝一杯咖啡振奋精神。一家美国创业公司发明了一种电动剃须刀大小的设备,可以替代咖啡。

这种设备只要按在脖子上,打开开关,就会向人体释放低压电流,每次持续一毫秒,相当于一次电击。

![](https://cdn.beekka.com/blogimg/asset/202106/bg2021062203.jpg)

它可以刺激迷走神经,促进体内肾上腺素的分泌,起到跟咖啡类似的作用。目前,价格是每个 1250美元。

![](https://cdn.beekka.com/blogimg/asset/202106/bg2021062204.jpg)

3、[《堡垒之夜》的虚拟纪念活动](https://www.yystv.cn/p/8306)

8月28日是马丁·路德·金发表著名演说《我有一个梦想》的纪念日。今年的这一天,《堡垒之夜》在游戏里面开展了虚拟的纪念活动。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090102.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090103.jpg)

玩家会在路边看到演讲的视频,还能进入虚拟纪念馆,详细了解。以后,这种虚拟形式的纪念活动,将会越来越多。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090104.jpg)

4、

![](https://cdn.beekka.com/blogimg/asset/202106/bg2021062701.jpg)

[米其林公司](https://spectrum.ieee.org/energywise/green-tech/wind/michelin-puffy-sails-cargo-ships-improve-fuel-economy)正在测试,货轮上面安装可以升降的大型风帆,充分利用风能,减少柴油燃料的使用,从而抑制温室气体的排放。

5、[预制小屋](https://www.businessinsider.com/elon-musk-tiny-home-prefab-boxabl-casita-50000-person-waitlist-2021-8#tiny-homes-have-become-an-undeniably-popular-alternative-to-the-classic-family-home-or-apartment-1)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081021.jpg)

美国拉斯维加斯的一家公司,推出了预制小屋,只要 49,500 美元,你就能立刻拥有一间35平米的房子,里面有卧室、浴室、客厅和厨房,已经全部装修好了。

这种小屋在房价昂贵的加州引发了轰动,连马斯克都听说了,他就下单购买了一间,要求运到 SpaceX 公司,他想住在里面试试看。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081022.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081023.jpg)

这件事传出去以后,想要购买这种预制屋的人就更多了,目前已经有5万人登记预购了。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081024.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081025.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081027.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081026.jpg)

6、[太阳能飞机](https://uk.news.yahoo.com/us-navy-developing-solar-powered-193723844.html)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081009.jpg)

据报道,美国海军正在委托研发一种太阳能载人飞机,可以连续飞行90天不落地。

这种飞机的机翼长达72米,全部铺满了太阳能板,并且配备了大量电池,存储电能供夜间飞行。2015年,这种飞机的原型曾经环球飞行,创下了117小时52分钟(接近5天)不落地的记录。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081010.jpg)

7、[算法裁员](https://www.gamasutra.com/view/news/386534/Xsolla_lays_off_150_after_an_algorithm_ruled_staff_unengaged_and_unproductive.php)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081301.jpg)

美国的游戏服务公司 Xsolla 的收益今年下降了40%,决定裁掉三分之一的员工,大约150人。这件事的特别之处在于,公司使用软件算法判定,应该裁掉哪些人。

CEO 的内部邮件这样写道:

> “你收到这封电子邮件,是因为我们的大数据团队分析了你在 Jira、Confluence、Gmail、聊天、文档、仪表板中的活动,并将你标记为不敬业和效率低下的员工。换句话说,当你远程工作时,你并不总是在工作。你们中的许多人可能会感到震惊,不认同软件的算法,但我真的相信 Xsolla 不适合你。”

1、[500米饱和潜水背后的故事](https://finance.sina.com.cn/tech/2021-09-01/doc-iktzqtyt3389836.shtml)(中文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090208.jpg)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090209.jpg)

我国最近成功完成500米饱和潜水的陆基实验,9名潜水员进入加压舱,在51个大气压的环境下,停留了176个小时(相当于7天多),为下一步潜水员正式出舱,进入500米的深海做准备。

2、[我怎么加入微软剑桥研究院](https://justyy.com/archives/45631)(中文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090111.jpg)

作者详细记录从亚马逊跳槽到微软剑桥研究院的过程。([@DoctorLai](ruanyf#1914) 投稿)

3、[如何在 Linux 中实时监控日志文件](https://linux.cn/article-13733-1.html)(中文)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090114.jpg)

Linux 系统的日志文件一般位于 /var/log,以 .log 扩展名结尾。本文教你如何在一个窗口里面,同时监控所有日志文件。([@jerrylususu](ruanyf#1915) 投稿)

4、[使用 React Hooks 分离组件逻辑](https://felixgerschau.com/react-hooks-separation-of-concerns/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081020.jpg)

本文介绍 React Hooks 的正确用法,写得非常好,推荐阅读。它回答了一个基本的问题:Hooks 到底应该用来干什么?

简单说,Hooks 应该用来将组件的 UI 和逻辑分开。

5、[iOS 的四种设计模式](https://www.nngroup.com/articles/4-ios-rules-break/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081102.jpg)

本文分析了 iOS 引入的四种新的手机 UI 设计模式,比如将表单的确认按钮,放置在页面顶部的右上角(上图)。

6、[CSS 中 content 属性的妙用](https://echeverra.cn/2021/08/06/css-content/)(中文)

CSS 的 content 属性可以向网页添加文本内容,本文总结了这个属性的用途,并逐一给出示例。

7、[操作系统是什么?](https://zhuanlan.zhihu.com/p/403919173)(中文)

本文是《操作系统开发入门基础》系列译文的第一篇,讨论了操作系统的概念,哪些工作属于操作系统的范畴。([@StrokMitream](ruanyf#1909) 投稿)

8、[Firefox 浏览器引入强化版 Cookie 删除](https://blog.mozilla.org/security/2021/08/10/firefox-91-introduces-enhanced-cookie-clearing/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081103.jpg)

浏览器提供的 Cookie 删除功能,只能删除页面本身的 Cookie,不能删除由该页面引入的其它网站 Cookie。

Firefox 91 提供了强化版 Cookie 删除,可以将某个网站引入的所有 Cookie 删除。

9、[掌握 Python 网页抓取](https://www.zenrows.com/blog/mastering-web-scraping-in-python-crawling-from-scratch)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081205.jpg)

本文详细介绍如何使用 Python 开发一个爬虫,抓取网页,并且考虑到了很多细节问题,比如多线程并行抓取、防止被屏蔽等等。

1、[FeedAdd](https://feeddd.org/)

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090110.jpg)

一个免费服务,提供微信公众号的 RSS 文件,用户可以自己创建订阅源。([@miscommunication](ruanyf#1910) 投稿)

2、[PlayCover](https://github.com/Letscoder/PlayCover)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081312.jpg)

在 M1 架构的 Macbook 上运行 iOS app 时,这个开源工具可以让鼠标和键盘支持 iOS app。

3、[Judo](https://www.judo.app/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081413.jpg)

一个 Mac 应用,用来设计 iOS app 的页面,不用编写代码,用可视化的方式制作页面原型,可以在手机上预览页面效果。

4、[Mac OS Monterey Web](https://github.com/puruvj/macos-web)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081422.jpg)

使用 Svelte 框架在网页上模拟 Mac OS Monterey 的 UI。

5、[OneDev](https://github.com/theonedev/onedev)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081601.jpg)

一个开源的 Git 仓库托管软件,类似于 GitHub / GitLab,可以自己架设,特点是资源消耗小。

6、[BackgroundRemover](https://github.com/nadermx/backgroundremover)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081701.jpg)

一个开源软件,用来移除图像和视频的背景。

7、[js-ziju](https://github.com/wizardpisces/js-ziju)

一个自制的编译器,可以将 JS 代码输出为 LLVM IR 格式和 X86 Assembly 语言。([@wizardpisces](ruanyf#1918) 投稿)

8、[zx](https://github.com/google/zx)

一个 JS 库,用来在 JS 脚本里面方便地调用 Bash 命令,很适合使用 JS 语法来写 Bash 脚本。

9、[HyperFormula](https://github.com/handsontable/hyperformula)

Excel 公式的 JS 版,目前有300多个公式。同时,这个库也提供数据操作功能,可以用作电子表格的后端。

1、**Go 语言入门课:零基础到实战**

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090207.jpg)

极客时间福利课程,零基础讲解 Go 的语法和用法,最后带读者手写一个计算器小程序。《Kubernetes 生产化之路》作者、Go 资深工程师李建强主讲。

下周一(9月6日)开始,三个晚上直播课,微信添加助理老师报名。

2、[MacOS Bliss](https://basicappleguy.com/basicappleblog/macosbliss)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081019.jpg)

作者参照 Windows XP 著名的草地壁纸,为 MacOS 和 iOS 也创建了多张类似风格的壁纸,可以免费下载,挺好看的。

3、[如何在 Linux 上玩任天堂 Switch 模拟器](https://boilingsteam.com/emulating-nintendo-switch-games-on-linux-2/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081011.jpg)

这篇文章是详细的操作指南,介绍在 Linux 桌面电脑上面,怎样通过模拟器玩 Switch 游戏。

4、[Minecraft 的岩石和矿物](https://www.mindat.org/a/minecraft)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081014.jpg)

Minecraft 游戏出现过各种各样的石头和矿物(上图),这个网站列出游戏里的石头在真实世界的对应物(下图)。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081016.jpg)

5、[AWS 的简单英语介绍](https://expeditedsecurity.com/aws-in-plain-english/)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021072703.jpg)

AWS(亚马逊网络服务)现在包含50多种产品,官方的介绍有时很难懂,搞不清楚每种产品到底干什么。这个网页使用简单的英语,介绍每一种服务。

1、[键盘裤子](https://www.theverge.com/2016/4/21/11476984/keyboard-pants-reconsidered)

使用键盘,总是需要抬起手腕。一个荷兰学生 Eric De Nijs 就想,能否不抬起手腕就能使用键盘。他发现,最方便的方法就是把键盘放在大腿上面,只要坐下来就能使用。

于是,他发明了一种键盘裤子,键盘做在裤子上面,随时随地可以用。

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071003.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071004.jpg)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071005.jpg)

2、[河狸咬树干](https://twistedsifter.com/videos/beaver-chewing-through-tree-close-up/)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021070908.jpg)

河狸是中国一级保护动物,有着强壮的门牙,可以咬断树干,再将树干拖回家做巢。下面就是一段河狸咬树干的[视频](https://v.qq.com/x/page/q3258r13usz.html),看着非常纾压。

<iframe frameborder="0" src="https://v.qq.com/txp/iframe/player.html?vid=q3258r13usz" allowFullScreen="true" width="600" height="400"></iframe>

1、[Linux 内核5.14版发布说明](https://lwn.net/Articles/867742/)

8月25日是 Linux 操作系统诞生纪念日。

1991年8月25日,芬兰大学生 Linus 在网上宣布,他写了一个操作系统的内核,欢迎大家提意见。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021083114.jpg)

30年过去了,Linus 依然在为这个项目忙碌。他按照预定计划,在8月29日发布了内核的5.14版。并且写了下面的发布说明。

“我意识到,大家一定还忙于30周年的庆祝活动,各种花里胡哨的晚会。但在某个时候,你一定会厌倦那里的浮华、烟花和香槟,穿着礼服也不舒服。这种庆祝活动还将持续数周,但你可能想停下来喘口气。

如果是这样,我正好为你准备了一个新的内核版本,欢迎来测试和享用。5.14版已经发布,就等着你来试用,别忘了所有那些庆祝活动是为了什么。

当然,可怜的不知疲倦的内核维护者,是不会有时间参加庆祝活动的。因为对他们来说,这一天只是意味着合并窗口将在明天开始。我们期待还有下一个30年。但是对于其他人,请稍事休息,构建新版本的内核,对其进行测试,然后你就可以回到那个你刚刚离开的、看上去不会结束的聚会上了。”

2、[退出 C++](http://scottmeyers.blogspot.com/2018/09/the-errata-evaluation-problem.html)

斯科特·迈耶斯(Scott Meyers)是著名的 C++ 语言专家,写过《Effective C++》系列著作。

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090201.jpg)

- 1992年,《Effective C++:50 种改进程序和设计的具体方法》
- 1995年,《More Effective C++:35 种改进程序和设计的新方法》
- 1998年,《Effective C++(第二版):改进程序和设计的 50 种特定方法》
- 2001年,《 有效的 STL:改进标准模板库使用的 50 种具体方法》
- 2005年,《Effective C++(第三版):55 种改进程序和设计的具体方法》
- 2010年,《新 C++ (C++11)概述》
- 2010年,《嵌入式环境中的 Effective C++》
- 2014年《Effective 现代 C++:42 种改进 C++11 和 C++14 使用的具体方法》

![](https://cdn.beekka.com/blogimg/asset/202109/bg2021090206.jpg)

2009年3月,他获得 Dr. Dobb's 杰出贡献奖。

2015年,他宣布不再写作 C++ 书籍了。

2018年,他又宣布不再修正自己著作里面的技术错误了。原因不是他不想修正,而是已经没有能力了。

“为了修复错误,我必须能够识别它们。但是,我不再相信自己有能力做到这件事。”

“如大家所知,我在 2015 年底退出了对 C++ 语言的积极参与。在过去的两年半中,我忘记了足够多的语言细节,以至于无法再正确评估关于 C++ 的错误报告。

C++ 是一种庞大而复杂的语言,有各种复杂和微妙的功能,我不再相信自己会记住所有这些内容。因此,我所能做的就是感谢读者提供的错误报告,但不再更新我的书籍了。我认为这是唯一负责任的行动方案。”

1、

我从互联网上得到的最好的经验之一,就是永远不要复制和粘贴不是自己编写的代码。如果你一定要复制,那就照着它逐字输入,逼着自己思考,这些代码实际上是什么意思。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=27534343)

2、

推行 996 工作制的心态,可以追溯到制造业时代。一家服装厂提高产量的最简单方法是什么?就是让你的工人加班。

不幸的是,这不适用于科技公司,程序员在一段代码上花费更多时间,并不意味着写出更好的代码。事实上,处理错误的最佳方法通常是休息一下,然后回来重新阅读代码,你会更容易发现错误。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=28326010),评论中国最高法院判定 996 工作制违法

3、

日本和韩国都有法律规定,手机拍照必须有快门声,无法关闭这个声音,目的是防止偷拍。

-- [知乎](https://www.zhihu.com/question/19763901)

4、

写一本技术书籍,报酬寥寥无几,很可能除了荣誉,你得不到任何东西。

-- [《自出版技术书籍》](https://css-tricks.com/so-you-want-to-self-publish-books-and-courses-on-programming/)

5、

无所畏惧(fearless)不是没有恐惧;而是你依然心怀恐惧,但无论如何都决定要跳进去。

--  [Taylor Swift](https://www.thecut.com/2021/07/how-thrilling-ceo-shilla-kim-parker-gets-it-done.html)

2020年(第 123 期):[互联网公司与湘军的军制](https://www.ruanyifeng.com/blog/2020/09/weekly-issue-123.html)

2019年(第 71 期):[名校毕业,不容易创业](https://www.ruanyifeng.com/blog/2019/08/weekly-issue-71.html)

2018年(第 20 期):[不读大学的替代方案](https://www.ruanyifeng.com/blog/2018/08/weekly-issue-20.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)

issue-173

Toggle issue-173's commit message
这里记录每周值得分享的科技内容,周五发布。

本杂志开源(GitHub: [ruanyf/weekly](https://github.com/ruanyf/weekly)),欢迎提交 issue,投稿或推荐科技内容。

周刊讨论区的帖子[《谁在招人?》](https://github.com/ruanyf/weekly/issues/1870),提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082619.jpg)

上海的很多老小区,由于历史原因,有很多密密麻麻的架空电线,非常影响美观。江阴路今年的社区更新,尝试将架空线包裹进入人造的绿色藤蔓。([via](http://n.eastday.com/palbum/1629955396017452))

最近,我为家里的老人买了一台网络收音机。

老人的年纪很大(超过85岁),完全不懂互联网,操作智能手机会经常点错地方,不知道怎么恢复。平时唯一的消遣就是看电视,其实根本不爱看,但没有别的娱乐。这样的老人家在互联网时代非常弱势,但是人数还不少,我们国家搞不好有一两个亿。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082413.jpg)

我希望,找到一台网络收音机,能够接收网络节目,帮老人丰富生活、了解外界。我的要求是,操作越简单越好,不懂互联网的人也可以毫无困难地上手。

大家不妨想一想,如果你是设计师,会怎么设计这个产品?下面这样全触摸式的网络收音机,适合老人吗?

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082414.jpg)

我在网上还真的找到这样一个产品,立刻下单。前几天收到实物以后,发现比我想像的更好,基本上完全满足了我的需求,忍不住要在这里谈一谈。

下面不是为它做广告,纯粹只是以它为例,讨论针对老年用户的电子产品,应该怎么设计。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082415.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082416.jpg)

我觉得,这个网络收音机真的是为老年人设计的,设计师用心了,把老年人不需要的功能都砍掉了,让产品变得尽量简单。

我特别赞赏的有三个地方。

(1)它直接连接喜马拉雅的节目库,不需要任何登陆或认证,打开就直接播放,用户感知不到喜马拉雅的存在。

设想一下,如果需要切换网址或者节目源,老人能理解这种操作吗?

(2)音量控制是旋钮,而不是手机常用的按键。

这一点特别赞。旋钮是机械装置,容易坏,但是手感好、体积大、容易操作,符合直觉。如果能把电源开关也做进旋钮,就更好了。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082417.jpg)

我在推特上发了照片以后,有个网友说,虽然“硬件的软件化”是趋势,但是对于老年用户,“软件功能的硬件化”才是正确方式。各种软件设置做成硬件开关,一拨就开,一拧就关,对老年人更友好。

(3)这个机器不支持 WIFI,内置 4G SIM 卡,只能用无线流量上网。很多朋友认为这是缺点,我不这样看,反而觉得这是很大的优点。

虽然多了 4G 的后期充值成本,需要小辈帮忙每年在手机上为老人买流量,但是相比 WIFI 还是简单多了。选择 WIFI 网络,输入密码,对老人并不容易,很多老人根本不理解 WIFI 是什么。另外,如何为收音机提供 WIFI 密码的输入键盘,也是很大的难题。

默认使用 4G 信号,上面的这些复杂性就都不存在了,网络节目就像电台广播一样,打开就能听,走到哪里都有信号,室外也能用。

(4)当然,它也有可以改进的地方。比如,所有按钮的说明文字,都应该是中文,而不像现在这样,有的是中文,有的是英文,有的是图标。

总之,这个网络收音机是一个很好的例子: **放弃次要功能,换来产品的简单性,从而达到更好的用户满意度,** 这就是软件设计名言[“less is more, worse is better”](https://en.wikipedia.org/wiki/Worse_is_better)的意思吧。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082618.jpg)

现在大部分学习前端开发的同学,往往只对一个框架比较熟悉,Vue 和 React 里面,选择一个进行专研。

但是,应聘和实际工作中,很可能会遇到另一个框架。因为大厂内部的实际情况是,两大框架都有大量应用,取决于不同团队的技术选型。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082608.jpg)

如果你比较熟悉 Vue,却遇到了 React 项目,或者说,你是代码库的作者,需要同时支持 Vue 和 React。这时,有没有一种简单的方法,可以将一个框架的代码移植到另一个框架呢?

回答是有的,我们可以找到一种通用的代码架构,同时适应 Vue 和 React,实现最大程度的代码复用。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082611.jpg)

本周有一个公开课《React、Vue 架构和风格统一》,就是研究这个问题: **Vue 和 React 之间如何实现代码的移植。** 内容很适合扩宽思维,帮助一种框架的学习者,快速进入另一种框架。

讲课时间是8月29日(本周日)晚上8点,有空的话,欢迎来听课。主讲老师为前阿里 P8 的全栈架构师,曾经主导开发过用户过亿的前端项目。他会重点讲解下面的问题:

> - Vue 和 React 只会一个,如何快速上手另一个?
> - 如何做到 Vue 和 React 代码最大程度复用?
> - 大厂同时使用 Vue 和 React,是如何统一标准按质交付的?

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082610.jpg)

听课的同学,还可以获赠“开课吧”提供的另外两门视频教程:《深入理解 Flutter 编程的 Dart 语言》和《P8 大牛带你了解不同前端的薪资差异》,为跳槽加薪做准备。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082612.jpg)

微信扫描上方二维码,就可以 0 元报名。周日晚上8点,欢迎来听课。

1、[空中太阳能发电](https://mp.weixin.qq.com/s/euKVL7gllNQO0IaTMzSJJg)

地面的太阳能发电,会受到云、雾、雨、雪的天气影响,它们挡掉大部分太阳光,使得光照时间和光照强度大打折扣。科学家很早就设想,能不能把太阳能板架设到高空?

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080907.jpg)

2021年6月,重庆大学等单位开始在重庆市建设一个空间太阳能实验站,尝试将太阳能板放在一个浮动平台上,升到50~300米的空中,进行太阳能发电。如果实验成功,下一步将把太阳能板架设到距离地面22公里的平流层。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080908.jpg)

根据设想,这个浮动平台有多个半球面的聚光装置,将太阳光汇集到一个聚光区,通过光伏电池产生直流电,随后转成微波,将能量传输回地面。

2、[Facebook 虚拟会议软件](https://www.axios.com/facebook-vr-zuckerberg-meetings-7b8b78fb-5345-42a6-a338-2abe19079c9d.html)

Facebook 公司推出虚拟会议软件 Horizo​​n Workrooms,将虚拟会议提升到一个新的境界。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082101.jpg)

只要用户戴上 VR 头盔,打开软件,就会进入一间虚拟会议室。软件会自动为你的分身配上脸部动作和表情,同时使用 VR 头盔的摄像头,捕捉你双手的动作,让软件里面的分身也做出同样的动作。

比如,如果你在打字,虚拟空间里面也会显示你的分身在打字。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082102.jpg)

与会者可以在虚拟白板上进行协作,也可以共享照片、文档和电脑屏幕。Facebook 放出了马克·扎克伯格虚拟会议的[演示视频](https://v.qq.com/x/page/f3269m4u87c.html),他的表情和双手的动作,以及背后白板上的板书,令人印象深刻。

<iframe frameborder="0" src="https://v.qq.com/txp/iframe/player.html?vid=f3269m4u87c" allowFullScreen="true" width="600" height="400"></iframe>

3、[电子驾照](http://china.qianlong.com/2021/0820/6179805.shtml)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082303.jpg)

今年9月1日开始,公安部在全国28个城市,全面推行电子驾照,效力与纸质驾照完全相同。电子驾照通过“交管12123”APP发放,领取后只要携带手机,就不需要携带纸质驾照了。

电子驾照下方还有实时生成的二维码和条形码信息,交警通过扫描二维码,能够快速获取车主的身份证信息和车辆登记信息。

4、[水稻生长周期减半](http://news.sciencenet.cn/htmlnews/2021/8/463517.shtm)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082411.jpg)

中国农业科学院植物工厂团队宣布,在室内环境中,水稻的生长周期可以缩短一半,从传统大田环境下120天以上减少到60天左右。这意味着,每过两个月,水稻就可以丰收一次。

目前,国内水稻普遍是每年生长1~2代,海南的热带环境可以生长3代。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082412.jpg)

本次实验使用定制光谱的 LED 灯(发光二极管)为水稻提供光照,并用营养液供给养分,光照、温度、湿度、CO2 浓度等都受到精准调控。

报道没有透露,这种室内水稻的成本比传统水稻高多少,普通人是否吃得起这种大米。

5、[VR 透视头盔](https://www.sohu.com/a/481676198_255990)

随着头戴显示装置越来越普及,逐渐浮现出一个问题。戴头盔的人可以看到外部,但是外部的人无法看到戴头盔者的脸,双方无法进行面对面的交流。

Facebook 的研究人员想出了一个解决方法,就是在头盔外部的眼睛位置,放置显示屏,实时展示戴头盔者的眼部表情和动作。未来,人们有可能彼此戴着头盔,当面交流。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080905.jpg)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080906.jpg)

6、[线圈枪](https://www.thefirearmblog.com/blog/2021/08/05/arcflash-labs-gr-1-anvil/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080705.jpg)

一家美国公司宣布,发售世界上第一把手持线圈枪。这种枪的子弹不依靠火药引发的气体爆炸获得动能,而是通过电磁线圈的加速,将一颗小铁丸加速到极高的速度,从而达到子弹的杀伤效果。

该枪的预售价格为 3,375.00 美元,充电器需要另外购置。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080706.jpg)

7、[图片验证码专利](https://www.eff.org/deeplinks/2021/08/captcha-patent-all-american-nightmare)

最近,一家美国小公司声称,谷歌的图片验证码系统 reCAPTCHA(下图)侵犯了该公司的专利,任何使用该系统的网站必须向它缴纳专利使用费。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080711.jpg)

这家公司说,早在2008年,它就为通过识别图片、确认真实用户这个想法申请了专利(下图)。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080712.jpg)

抛开这个专利是否有效不谈,这里的关键问题是,单单一个概念或者一种用法,是否可以申请专利?如果有人为一个想法申请了专利,别人是否就不能再去实现这个想法了?

1、[电源管理芯片为什么难造?](https://finance.sina.com.cn/chanjing/cyxw/2021-07-29/doc-ikqciyzk8373189.shtml)(中文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080910.jpg)

随着充电协议越来越复杂,只要是电子产品,都需要电源管理芯片。本文介绍电源管理芯片市场目前的状况,以及为什么大部分市场份额都被国外几家大公司掌握。

2、[如何评价中国自主知识产权的“.chn”域名?](https://www.zhihu.com/question/324843186)(中文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081707.jpg)

这是知乎的一个讨论帖,2019年一家中国公司宣布,推出自主知识产权的“.chn”顶级域名,根域名服务器不再受制于人,并开放购买注册。

但是,该域名没有得到 ICANN、CNNIC 的承认,浏览器无法访问,必须修改 hosts 文件才可以。

3、[man 命令的奇怪输出](https://unix.stackexchange.com/questions/405783/why-does-man-print-gimme-gimme-gimme-at-0030)(英文)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021073002.jpg)

有人发现,如果在半夜 00:30 分执行`man`命令,会得到一条奇怪的报错信息“gimme gimme gimme”。

他在网上提问:有人知道这是怎么回事吗?

4、[CSS 检测支持悬停的设备](https://css-irl.info/detecting-hover-capable-devices/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071607.jpg)

鼠标有悬停(hover)事件,移动设备由于不使用鼠标,自然就没有这个动作。因此就可以通过它判断,用户是否正在使用移动设备。

本文介绍如何使用 CSS 来侦测支持悬停事件的设备,并可以设置特殊的样式。

5、[SameSite cookie 的现状](https://simonwillison.net/2021/Aug/3/samesite/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080704.jpg)

目前,所有主流浏览器都支持 cookie 的 SameSite 属性,用来限制第三方 Cookie。但是,不同的浏览器对这个属性的实现不一样,导致这个属性的行为有非常大的差异。

6、[HTML 元素的 download 属性](https://shkspr.mobi/blog/2021/08/to-download-this-page-click-here/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080904.jpg)

网页的链接标签(a 元素),有一个 download 属性。只要设了这个属性,点击后就会跳出下载对话框。本文演示了使用这个属性,下载当前网页。

7、[如何在 Jest 中使用 test.todo()](https://heyfirst.co/blog/how-to-use-test-todo-in-jest)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080903.jpg)

本文介绍 JavaScript 测试框架 Jest 的 test.todo() 方法的用法。

8、[CSS transform 属性详解](https://www.joshwcomeau.com/css/transforms/)(英文)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081013.jpg)

一篇写得很好的 CSS 入门教程,介绍如何使用 transform 属性,实现网页元素的变形。文中有大量互动式示例。

1、[RAWGraphs](https://rawgraphs.io/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081028.jpg)

一个 Web 工具,只要把电子表格的数据复制粘贴到网页上,就可以转成数据可视化图形,不需要编写代码。

2、[Cross Context Events](https://github.com/mia1024/cross-context-events)

一个 JS 事件库,允许在多个窗口、多个 iframe 之间共享事件。也就是说,使用它在一个浏览器窗口触发事件,其它窗口也能收到。

3、[obvious.js](https://github.com/ObviousJs/obvious-core)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082501.jpg)

一个国产的微前端框架,解决前端微应用的依赖管理、以及它们之间的通信问题。举例来说,它可以把 React 应用和 Vue 应用组合在一个网页里面。([@run-nan](ruanyf#1899) 投稿)

4、[Web Captioner](https://webcaptioner.com/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082503.jpg)

一个网页的语音转文字工具,使用 Chrome 浏览器的 Web Speech API,支持中文,[代码](https://github.com/bensonruan/Chrome-Web-Speech-API)开源,这里还有一篇[介绍文章](https://bensonruan.com/voice-to-text-with-chrome-web-speech-api/)。(@jerrylususu 投稿)

5、[Maestral](https://github.com/SamSchott/maestral)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081206.jpg)

Dropbox 的非官方开源客户端,支持 Mac 和 Linux,特点是资源占用少,简单易用。

6、[padka](https://www.padka.com/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021081211.jpg)

一个很有趣、非常有想象力的软件,用来为 Zoom 视频会议添加特效。它可以在老师直播讲课时,根据老师的身体动作和语音,自动为视频配上动画和背景音乐。

7、[Mantine](https://mantine.dev/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080409.jpg)

一个 React 组件库,特点是默认支持暗模式,可以对样式的各个方面进行精细的定制。

8、[react-class-to-fc](https://github.com/yklydxtt/react-class-to-fc)

一个将 React 的 class 组件转成 function 组件的命令行工具。([@yklydxtt](ruanyf#1907) 投稿)

9、[FireCMS](https://firecms.co/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080202.jpg)

一个基于 Firebase 的内容管理系统 CMS,数据存放在 Firebase,把这个工具架设在前端,就有了一个后台数据的管理系统。

1、[StackOverflow 开发者调查 2021 版](https://insights.stackoverflow.com/survey/2021)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021080303.jpg)

StackOverflow 网站每年会进行一次开发者调查,了解全世界程序员的动态和状况,这是今年的调查结果。其中的[“技术”](https://insights.stackoverflow.com/survey/2021#technology)部分,可以了解当前的流行技术。

2、[那些免费的砖](https://www.thosefree.com/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082502.jpg)

一个个人网站,收集并介绍各种免费的前端开发资源,分成设计、前端、应用三大类。([@weyman-git](ruanyf#1900) 投稿)

3、[电鸭社区](https://eleduck.com/)

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082504.jpg)

国内最早的远程工作社区,讨论和分享远程、外包、零活、兼职、驻场等工作机会。([@qrk12](ruanyf#1902) 投稿)

4、[MetaNumbers](https://metanumbers.com/)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021073001.jpg)

这个网站提供任一个正整数(最大到 9223372036854775807)的信息,主要是该数的各种数论上的特性。

5、[物联网 IoT 初学者教程](https://github.com/microsoft/IoT-For-Beginners)

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021071513.jpg)

微软发布的英文教程,详细介绍什么是物联网,以及物联网的应用。

1、[人工智能图像](https://ml.berkeley.edu/blog/posts/clip-art/)

人工智能公司 OpenAI 最近推出了 CLIP 模型,经过训练以后,可以根据用户提供的文字描述,自动生成图像。

研究人员已经用它生成了许多非常酷的图像,有些堪称是艺术杰作。如果不说明,你根本想象不到这是软件生成的。

下面就是其中一些作品,标题就是给出的文字描述,图像是软件返回的结果。

《城市的夜》

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021070309.jpg)

《起风了》

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021070312.jpg)

《山顶的暴风雪中有一个小木屋,黄昏时亮着一盏灯》

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021070314.jpg)

《午夜,山中的房子,飞舞的萤火虫(使用吉卜力工作室的风格)》

![](https://cdn.beekka.com/blogimg/asset/202107/bg2021070315.jpg)

1、**门把手的设计**

《设计心理学》(又名《日常生活的设计》)是一本著名的畅销书,自从上个世纪80年代出版以来,一直经久不衰。

它研究怎样才能做出好用的设计,给用户带来愉悦的体验。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082613.jpg)

这本书认为,很多日常物品的设计,都有可以改进的地方。它举了一个著名的例子,就是门把手的设计。

一扇门既可以向外拉,也可以向里推,人们经常搞错。应该怎么设计门把手,才能使大家一眼就看出来,到底应该推还是拉,而不会搞错?

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082614.jpg)

一个最简单的方法,就是在门上贴文字说明,写明应该“拉”或“推”。

但是,这种方法需要用户先看到文字标签,而且对于外国用户,或者不能理解说明的人就没有用。那么能不能不使用文字说明,只凭人类直觉来区分“推”和“拉”呢?

《设计心理学》的作者建议,为了解决这个问题,可以约定,竖的门把手表示拉,横的门把手表示推。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082615.jpg)

或者,对于需要推的门,索性取消门把手,表示这个门只能推。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082616.jpg)

但是,作者也认为,这些设计都不是特别理想。门把手的推拉设计,是一个很难的问题,目前还没有完美的解决方案。

他开玩笑说,有一回他用绳子当作家里的门把手,表示这扇门只能拉,这个设计可能是最好的设计。

![](https://cdn.beekka.com/blogimg/asset/202108/bg2021082617.jpg)

1、

最好的程序员不是善于编写复杂代码,而是有能力为复杂的问题提出简单的解决方案。只有糟糕的程序员,才会对简单的问题提出复杂的解决方案。

-- [Hacker News 用户](https://news.ycombinator.com/item?id=28072652)

2、

世界上只有美国和厄立特里亚两个国家,是根据公民身份而不是居住地征税。只要你是美国人,不管住在哪里,都必须向美国政府交税。其它国家的规定是,本国公民如果住在其它国家,则无需向本国政府交税。

这导致大量的美国富豪放弃美国国籍,申请其它国家的公民。谷歌公司的创始人拉里佩奇就申请成为新西兰公民,前 CEO 埃里克·施密特(Eric Sc​​hmidt)申请成为塞浦路斯公民。

-- [《为什么富人放弃美国国籍》](https://www.axios.com/wealthy-people-are-renouncing-american-citizenship-67fbada4-e2e4-4699-b106-c986839f209d.html)

3、

根据我的经验,大多数程序员在新公司开始工作约 6-8 个月后,才能完全发挥自己的能力。等到在同一家公司工作2年到3年后,绝大多数人开始停滞不前,对工作不再那么有兴趣。

观察到这一点后,我作为老板真的不太在乎,自己的员工在工作2-3年后跳槽。长远来看,只有极少数人会不断进步,所以我不会特意留住员工,我认为这不是很值得。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=28050106)

4、

现在的城市都希望成为大都市,但是我们实际上需要的不是大都市,而是很多小城市密集地连接在一起。

较小的地理集中度,可以减少特定区域的住房需求和生活成本,使得人们可以拥有更多的个人空间,同时又能保持人口的均匀分布和互联性。

-- [Hacker News 读者](https://news.ycombinator.com/item?id=28049371)

5、

你的代码应该是写给下一个开发者的情书。

-- [AgriWebb](https://www.agriwebb.com/au/your-code-should-be-a-love-letter-to-the-next-developer/)

2020年(第 122 期):[谈谈互联网公司的高估值](https://www.ruanyifeng.com/blog/2020/08/weekly-issue-122.html)

2019年(第 70 期):[世界进入负利率时代,这意味什么](https://www.ruanyifeng.com/blog/2019/08/weekly-issue-70.html)

2018年(第 19 期):[电影《头号玩家》描绘未来的虚拟世界](https://www.ruanyifeng.com/blog/2018/08/weekly-issue-19.html)

这个周刊每周五发布,同步更新在[阮一峰的网络日志](http://www.ruanyifeng.com/blog)和[微信公众号](http://weixin.sogou.com/weixin?query=%E9%98%AE%E4%B8%80%E5%B3%B0%E7%9A%84%E7%BD%91%E7%BB%9C%E6%97%A5%E5%BF%97)。

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

![](https://cdn.beekka.com/blogimg/asset/202103/bg2021030402.jpg)

(完)