这里记录每周值得分享的科技内容,周五发布。
本杂志开源[1],欢迎投稿[2]。另有《谁在招人》[3]服务,发布程序员招聘信息。合作请邮件联系[4](yifeng.ruan@gmail.com[5])。
封面图
入夜后,大理洱海上亮起无数鱼灯,吸引鱼类浮上水面,渔民趁机捕捉,消灭外来的西太公鱼。(via[6])
一份谷歌离职报告上周,我看到一篇有趣的文章[7]。一位谷歌 SRE 工程师离职了。
她负责服务器的运维,平时要为网站故障写分析报告(postmortem),现在离职了,就为自己的离职也写了一份分析报告。

她写得非常坦率,说了心里话,也透露了很多谷歌公司的情况。信息量挺大的,下面分享给大家,碍于篇幅,有所删节。
(1)我的基本情况。 2015年,我从波兰的大学毕业,加入谷歌,来到爱尔兰分公司,担任 SRE 工程师。
入职时,我的职级是 L3,9个月内就晋升到 L4,一年后晋升到 L5,现在是 L6。
(2)我从谷歌得到了什么。 在谷歌待了九年后,我在本周离职。回顾这九年,我得到了很多东西。
首先,我得到了大量的钱。
其次,我得到了工程技能,理解了复杂的大型网站系统,还拥有处理生产故障和调试机器的世界一流的技能。
再次,我得到了领导和管理团队的技能,以及成为一家巨型技术公司一员的满足感。
最后,我得到了各种福利,比如办公室、游泳池、健身房、体育课程、每周按摩、美味和健康的膳食、医疗保健等,还有好玩且舒适的异地出差和商务旅行机会。
(3)谷歌的变化。 现在的谷歌,相比我刚加入时,发生了很多变化,已经不再那么有趣和酷炫了。
以前,谷歌的技术是顶尖的。现在,其他公司的技术水平,正在接近谷歌。
谷歌的内部预算也在削减,我们的商务旅行减少了,裁员不断。公司还把招聘名额转移到更廉价的地区。这对我产生了直接影响,我没法为自己的团队招人了。
这些年来,谷歌内部的安全制度和规章,不断增加,越来越繁琐。公司的内部系统,以及各种团队之间的关系,变得非常复杂。这减慢了我们的开发速度,并带来了许多艰巨的工程挑战。
对于我们来说,理解公司内部系统,成了越来越大的负担。你需要牢记无数的系统和技术细节,其中任何一个都可能对你产生影响(对于 SRE 工程师尤其如此)。新入职的员工可能需要一年的时间才能完全理解这些东西,这太疯狂了。
很多时候,我觉得自己被会议、重复性劳动、资源不足的团队工作,压得喘不过气,但同时又没有良好的成长机会。
公司两次承诺我,可以扩招手下的员工,但是两次都被取消了。我觉得,现在的工作没有充分发挥我的能力,但是在公司内部,又找不到发挥的方式。
与此同时,谷歌的高管们不提供支持和反馈,也几乎没有任何监督。你问他们下一步如何开展工作,他们会不知所措,让你自己去解决。
(4)我的想法改变了。 那些曾经吸引我的东西,已经不再有很强的吸引力了。
我已经达到并且超过了自己的财务目标。
我对谷歌技术的迷恋,逐渐变少。实际工作中遇到的技术问题,也不再那么令人兴奋。
我的兴趣转移到了其他方面。SRE 工程师跟我的兴趣和性格都不太符合。我是一个乐观和有创造力的人,但是 SRE 岗位要求稳重和保守。另外,长期夜班扰乱了我的睡眠,SRE 要求“七天24小时在线”使我很难放下工作。
我想离开 SRE 换个岗位,而爱尔兰又没有太多其他岗位可选择。由于惰性和个人原因,我也没有申请去其他地区。老实说,谷歌是一家以美国为中心的公司,只要你不在美国总部,推进任何事情都很麻烦,很容易感到孤立和边缘化。
我在谷歌看不到大的升迁机会。我已经是 L6 工程师了,在工程领域到顶了。我对 L7 并不真正感兴趣,因为 L7 更多是一种政治角色,不是工程角色,并且也很难说手下会管理多少人。如果我有机会自己领导一个大团队,我可能愿意留下来,否则我更渴望创办自己的公司。
(5)其他想法。 回顾这九年,我感到自己很幸运。
谷歌的股票表现非常好,再加上我的快速晋升和高绩效,使得个人收入很不错。我经过仔细思考后,对这些收入做出的财务决策,也很正确,给我带来了更多财务回报。
我在谷歌认识了大量的人,建立了许多关系。我雇用的员工也都非常可靠。
我有一些后悔没有做的事情。最主要的就是,我本应该早点退出 SRE,申请转移到其他国家,从一开始我就知道 SRE 不是我想要的。我只是坐等情况发生变化,结果没有如愿,现在我知道了,我应该主动寻求变化。
微软工程师的薪资上周,一家美国媒体[8]获得一张电子表格,里面是500多个微软员工自愿分享的自己的薪资数据。
这家媒体就统计了微软各级别工程师的平均薪资。

上图可以看到,2024年美国互联网大厂的程序员的收入水平。微软最低的59级工程师,基本工资也超过了12万美元。这是很高的收入,跟美国大学普通的正教授差不多了。
程序员的收入,最主要由职级决定,职级越高,收入越高。这就是为什么大厂程序员那么看重晋升的原因。
但是,不同职级的基本工资,相差不是那么大,收入差异主要由奖金和股票决定,高职级的绩效收入远大于基本工资。
当然,由于数据总量比较小,上表肯定不完全准确,只能作为参考。
[活动通知] 动手练习 AI 编程AI 编程工具是眼下的热点,大家都在探索,怎么将 AI 用于编程。
明天(8月31日)下午,就有一场 AI 编程的动手活动,由豆包 MarsCode 官方主办。
豆包 MarsCode 是字节旗下的 AI 编程工具,具有代码生成、补全、智能预测等功能。到时,字节工程师将一对一指导大家,动手实操,通过 AI 完成你的软件开发构想。

你可以跟小伙伴组队报名(每队最多3人),也可以单人组队,在 AI 的帮助下,现场编码完成一个小游戏。
工程师会在现场指导和答疑,最后每组进行作品展示,评出优秀作品,领取奖品。
希望动手练习 AI 的同学,明天下午不要错过这次免费活动的机会,活动地点在北京的抖音工区。
点击这个链接[9],或者扫描上方海报的二维码,了解活动详情并报名。如果你不在北京,可以参加豆包 MarsCode 的征文活动[10],题材不限,奖品丰富。
科技动态1、载人飞艇[11]
8月20日上午6时,中国的载人飞艇 AS700 从湖北荆门起飞,飞行近1000公里,于次日中午12点达到广西桂林。


由于中间有落地休整,整个飞行时间是12小时44分钟。

飞艇到达桂林后,从8月23日开始20天的展演。如果这段时间你在阳朔,每天中午就可以看到它在飞行。

它最大载人数10人(含一名驾驶员),飞行高度500米到2000米,最长航时10小时,最大航程700公里。
它主要用于旅游出行,空中观光,甚至举办“云端婚礼”。由于内部是氦气,所以非常安全。
2、新形状意大利面[12]
意大利面的酱汁,需要吸附在面条上,这样才好吃。

一位美国网红别出心裁,使用计算机设计了一种新形状的意大利面条。

据说,这种新型面条的表面褶皱尽量最大化,以便吸附更多的酱汁,同时还要保证足够的弹性,以便产生良好的口感。

它每包的售价高达200多元人民币,一上市就售罄。
3、折叠屏笔记本[13]
一家深圳公司推出了折叠屏笔记本,具有两个折叠在一起的屏幕。

以前的双屏笔记本,基本都没有实体键盘,用其中一块触摸屏当作键盘,或者外接键盘。
但是,这款笔记本别出心裁,使用铰链将两块屏幕连在一起。

所以,它的第二块屏幕可以反转,放在主屏幕的背面(上图),也可以向左翻,作为侧屏(下图)。

根据用过的人说,左侧的侧屏,对于使用者非常有用。但是,重心有点不稳,用力击键时,侧屏会抖动。
从它可以看出,笔记本这种成熟产品,还是有很大的创新空间。
4、其他
(1) iPhone 16 系列[14]据报道将支持 JPEG-XL 格式的图片,体积是 JPEG 的三分之一。
(2)中国互联网络信息中心[15](CNNIC)统计,截止6月底,中国注册的域名共3187万个,其中.cn域名1956万个。
同一份报告称,中国网民的95.5%看短视频,65.2%看长视频。
文章1、SAML 身份验证的可视化解释[16](英文)

SAML 是企业常用的身份验证协议和 SSO(单点登录)解决方案。本文解释它是什么。
2、现代 CSS 方式设置 table 样式[17](英文)

本文介绍怎么用现代 CSS,对网页的<table>标签进行样式设置。
3、如何制作 SVG 加载器[18](英文)

本文一步步讲解,如何写 SVG 代码,生成一个“正在加载中”的动画图标。
4、小写可以减少压缩文件体积[19](英文)

本文解释为什么将大写字母改成小写后,文件的压缩体积会变小,是一篇压缩算法的简介。
5、.git 子目录内部[20](英文)

Git 仓库的元数据都保存在 .git 子目录,本文解释该子目录里面每一项的作用。
6、方形复选框的记忆[21](英文)

作者认为,设计师应该遵守一个约定:复选框是方形的,单选框是圆形的。
工具1、Coolify[22]

一个开源的应用运行平台,相当于自己搭建一个 Heroku / Netlify / Vercel 替代品,各种应用可以轻松在上面运行。
2、Ente Auth[23]

一个开源的双因素认证码管理器。
3、Marsview[24]

一款面向后台的低代码可视化搭建平台,快速搭建中后台管理系统。(@JackySoft[25] 投稿)
4、Notion Exporter[26]

一个浏览器插件,将 Notion 内容导出为长图或卡片,同时保留排版格式。(@Shanshi66[27] 投稿)
5、电池的电量显示[28]

该网站使用一个简单的脚本(源码[29]),显示当前设备的电池电量百分比。
6、tsimp[30]
一个 Node.js 的 TypeScript 加载器,也就是说,它可以让 Node.js 运行 TS 脚本。
7、xpano[31]

一个自动拼接多张照片的工具。
8、concrete.css[32]

一个简单的、无类的 CSS 极简框架,受到 Milligram[33] 和 Skeleton[34] 的启发。
9、Person Diagram[35]

一个玩具应用,在线制作人口比重图(占总人口的比重)。
AI 相关1、现代文转古文大模型[36]

输入现代汉语句子,生成古汉语风格的句子,代码开源[37]。(@JianXiao2021[38] 开源)
2、Linly-Dubbing[39]

AI 视频配音的开源工具,自动将外语视频改成中文配音。(@Y024[40] 投稿)
3、kotaemon[41]

一个开源的本地工具,可以指定 AI 模型,与添加的文档聊天。(@Y024[42] 投稿)
4、Watson AI[43]

一个开源的 Mac/Windows 桌面程序,通过系统麦克风,录制远程会议的音频,然后用 AI 生成会议记录和摘要。
5、Fluximg.com[44]

免费使用的 Flux AI 文生图服务。(@youyuela[45] 投稿)
资源1、妖怪平生录[46]

这个仓库收录了游戏《黑神话:悟空》内附的203个妖怪的图片、小诗和故事。(@meethigher[47] 投稿)
2、Emoji Spark[48]

快速匹配搜索 Emoji 的网站。(@0xjoanne[49] 投稿)
3、使用 Julia 语言学习微积分[50](Calculus With Julia)(英文)

一本在线阅读的电子书,从最简单的极限开始介绍微积分,需要计算的地方使用 Julia 语言举例。
4、Documentaries[51]

该网站可以免费观看英文纪录片。
图片1、还原致命的原子弹实验事故[52]
1946年,负责制造原子弹的美国洛斯阿拉莫斯实验室,发生了一起致命事故。

核物理学家路易斯·斯洛廷,带人参观实验室。他决定演示一下,原子弹的“关键组件”。

他用螺丝刀将铍半球支撑在钚核上。

但是,螺丝刀一滑,铍半球落到了钚核上方,引发了辐射反应。

他立刻用手将两者分开,导致自己受到了致命辐射,九天后就去世了。

下面是一个英国艺术家使用各种模型材料,重新还原的事故现场。


1、73亿人,一栋小楼[53]
地球的总人口,目前是81.7亿。
10年前的2014年,总人口是73亿。
当时有人做过计算,73亿看上去是很大的数字,但并没有大家想象的那么大。
如果每个人用一粒米来代表,73亿粒米刚好填满一个边长为6.1米的立方体,大约相当于一栋两层小楼的体积。

如果每个人用一粒沙来代表,总体积将取决于沙粒的大小。最极端的情况下,73亿粒细沙刚好填满一个2升的饮料瓶。
在地球眼里,人就是一粒米或一粒沙的大小。每天喧闹无比、仿佛宇宙中心的人类社会,不过就是一栋小楼,或者一个饮料瓶里面发生的事情。
言论1、
问:如果网速提高到 1Tb/s,互联网会怎样?
答:会有更多、更大、更快的广告。
-- Hacker News 读者[54]
2、
大家都认为 Nvidia 是销售 GPU(显卡)的公司,但是实际上他们是在销售 CUDA 加速运算库,GPU 只是非常昂贵又必不可少的独家配件。
-- Hacker News 读者[55]
3、
我不喜欢现场听技术演讲,95%的情况收获非常少。我更喜欢看技术演讲的录像,可以仔细思考,推荐给他人。我还可以将播放速度提高到 1.5倍或2倍,如果演讲不是那么好,这样至少可以减少浪费的时间。
-- 《我如何准备技术演讲》[56]
4、
飞行器直立登陆月球非常困难,最近美国和日本的月球登陆器,都在登陆时倾倒了。主要原因是月球的重力只有地球的六分之一,重心稍高一点,就很容易翻倒了。
-- 《为什么直立登陆月球如此困难》[57]
5、
敏捷宣言提出四大原则,其中之一是“正常工作的软件胜过详尽的文档”。
这条原则造成的结果,就是敏捷开发的项目,文档普遍很简陋。一项研究发现,敏捷开发的项目比不采用敏捷开发的项目,失败可能性高出268%。
-- theregister.com[58]
往年回顾生产力是形容机器,不是形容人[59](2023 #268)
葡萄酒,樱花,全球变暖[60](2022 #218)
游戏《底特律:变人》[61](2021 #168)
高考志愿怎么填[62](2020 #118)
(完)
References[1] 开源: https://github.com/ruanyf/weekly[2] 投稿: https://github.com/ruanyf/weekly/issues[3] 《谁在招人》: https://github.com/ruanyf/weekly/issues/4911[4] 邮件联系: mailto:yifeng.ruan@gmail.com[5] yifeng.ruan@gmail.com: mailto:yifeng.ruan@gmail.com[6] via: https://news.haiwainet.cn/n/2024/0820/c3541083-32782962.html[7] 有趣的文章: https://tinystruggles.com/posts/google_postmortem/[8] 美国媒体: https://www.businessinsider.com/microsoft-spreadsheet-shows-pay-engineers-2024-8[9] 这个链接: https://www.bagevent.com/event/8901648?bag_track=ryf[10] 征文活动: https://sourl.co/ZHGytq[11] 载人飞艇: https://www.sohu.com/a/802511112_121873449[12] 新形状意大利面: https://kottke.org/21/03/the-invention-of-a-new-pasta-shape[13] 折叠屏笔记本: https://arstechnica.com/gadgets/2024/08/acemagics-x1-is-a-clever-but-delicate-approach-to-dual-screen-laptops/[14] iPhone 16 系列: https://www.idownloadblog.com/2024/08/22/iphone-16-jpeg-xl-rumor/[15] 中国互联网络信息中心: https://china.chinadaily.com.cn/a/202408/29/WS66d00abba310b35299d39168.html[16] SAML 身份验证的可视化解释: https://www.sheshbabu.com/posts/visual-explanation-of-saml-authentication/[17] 现代 CSS 方式设置 table 样式: https://piccalil.li/blog/styling-tables-the-modern-css-way/[18] 如何制作 SVG 加载器: https://www.fffuel.co/svg-spinner/[19] 小写可以减少压缩文件体积: https://endtimes.dev/why-lowercase-letters-save-data/[20] .git 子目录内部: https://jvns.ca/blog/2024/01/26/inside-git/[21] 方形复选框的记忆: https://tonsky.me/blog/checkbox/[22] Coolify: https://github.com/coollabsio/coolify[23] Ente Auth: https://ente.io/auth/[24] Marsview: https://github.com/JackySoft/marsview[25] @JackySoft: https://github.com/ruanyf/weekly/issues/5060[26] Notion Exporter: https://notionexporter.com/[27] @Shanshi66: https://github.com/ruanyf/weekly/issues/5079[28] 电池的电量显示: https://deepesh-01.github.io/battery_indicator/[29] 源码: https://deepesh-01.github.io/battery_indicator/app.js[30] tsimp: https://github.com/tapjs/tsimp[31] xpano: https://github.com/krupkat/xpano[32] concrete.css: https://concrete.style/[33] Milligram: https://milligram.io/[34] Skeleton: http://getskeleton.com/[35] Person Diagram: https://peoplegraphmaker.com/[36] 现代文转古文大模型: https://modelscope.cn/studios/chostem/ancient_Chinese_text_generator[37] 代码开源: https://github.com/JianXiao2021/ancient_text_generation_LLM[38] @JianXiao2021: https://github.com/ruanyf/weekly/issues/5057[39] Linly-Dubbing: https://github.com/Kedreamix/Linly-Dubbing[40] @Y024: https://github.com/ruanyf/weekly/issues/5074[41] kotaemon: https://github.com/Cinnamon/kotaemon[42] @Y024: https://github.com/ruanyf/weekly/issues/5075[43] Watson AI: https://www.guillaume.sh/watson[44] Fluximg.com: https://fluximg.com/[45] @youyuela: https://github.com/ruanyf/weekly/issues/5055[46] 妖怪平生录: https://github.com/meethigher/black-wukong-youji/blob/master/%E9%BB%91%E7%A5%9E%E8%AF%9D%E6%82%9F%E7%A9%BA%E5%A6%96%E6%80%AA%E5%B9%B3%E7%94%9F%E5%BD%95.md[47] @meethigher: https://github.com/ruanyf/weekly/issues/5063[48] Emoji Spark: https://emojispark.com/[49] @0xjoanne: https://github.com/ruanyf/weekly/issues/5067[50] 使用 Julia 语言学习微积分: https://jverzani.github.io/CalculusWithJuliaNotes.jl/[51] Documentaries: https://ihavenotv.com/[52] 还原致命的原子弹实验事故: https://www.bbc.com/future/article/20230725-making-the-blue-flash-how-i-reconstructed-a-fatal-atomic-accident[53] 73亿人,一栋小楼: https://waitbutwhy.com/2015/03/7-3-billion-people-one-building.html[54] Hacker News 读者: https://news.ycombinator.com/item?id=41332413[55] Hacker News 读者: https://news.ycombinator.com/item?id=41361597[56] 《我如何准备技术演讲》: https://chelseatroy.com/2022/08/03/how-i-do-and-dont-prepare-a-talk-for-a-technical-conference/[57] 《为什么直立登陆月球如此困难》: https://www.nytimes.com/2024/03/04/science/moon-landing-sideways-gravity.html[58] theregister.com: https://www.theregister.com/2024/06/05/agile_failure_rates/[59] 生产力是形容机器,不是形容人: https://www.ruanyifeng.com/blog/2023/08/weekly-issue-268.html[60] 葡萄酒,樱花,全球变暖: https://www.ruanyifeng.com/blog/2022/08/weekly-issue-218.html[61] 游戏《底特律:变人》: https://www.ruanyifeng.com/blog/2021/07/weekly-issue-168.html[62] 高考志愿怎么填: https://www.ruanyifeng.com/blog/2020/07/weekly-issue-118.html