Tags: Ghost-47/weekly
Tags
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(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) (完)
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(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) (完)
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(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) (完)
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(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) (完)
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(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) (完)
这里记录每周值得分享的科技内容,周五发布。(**[通知] 下周五是十一假期,周刊会提前一天,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) (完)
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(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) (完)
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(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) (完)
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(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) (完)
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(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 公司推出虚拟会议软件 Horizon 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 Schmidt)申请成为塞浦路斯公民。 -- [《为什么富人放弃美国国籍》](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) (完)
PreviousNext