阅读视图

发现新文章,点击刷新页面。

我在苏州逛园子之西园寺

留园出来还没到午饭时间,正思索去哪里打发时间,突然想起西园寺就在附近,相隔一条街,便去探访一番。

西园寺,俗称西园,地图上标示为戒幢律寺。戒幢律寺始建于元代至元年间(1264—1294年),最开始名为归元寺。所以你在地图找到的戒幢律寺、西园古刹、西园,其实就是西园寺。西园寺是苏州古城内唯一一座带有园林的寺庙,距今已有700多年。现存建筑为清代重建,明嘉靖年间曾一度被留园的建造者太仆寺卿徐泰时改为了私家园林。

我在苏州逛园子之西园寺-雅余
西园寺东门

从留园过来走东门较近一些。上香礼佛后便去逛园子了。

我在苏州逛园子之西园寺-雅余

东边礼佛区庄严肃穆,一墙之隔是风格迥然的园林空间。后花园内有宽敞的大草坪,水静如镜,水中古树倒影郁郁葱葱。园内非常多古树,都是历史的见证。

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

湖中心筑有六角亭,楼阁形式,叫湖心亭。水域是放生池,被湖心亭的步道划分为两部分,环池布置假山、亭台、花架、厅堂等,也是满满的苏州园林特色。

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

可由假山翻过园子另一侧。

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

西园寺有另一大特色就是有非常的猫,花色各不相同。很多小姐姐们围着小猫一直拍照,我也忍不住凑过去多拍了几张。其实你从入寺园寺前就发现路边很多卖猫粮的小商贩,就知道这附近有撸猫的好地方。

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余
很害羞
我在苏州逛园子之西园寺-雅余
曲径通幽

出了西园寺后,可以看到南门口的智慧桥与福德桥,连接西园弄和枫桥路,两桥同时修建,结构完全对称。

我在苏州逛园子之西园寺-雅余
福德桥

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余

我在苏州逛园子之西园寺-雅余
智慧桥
我在苏州逛园子之西园寺-雅余
西园寺南门

西园西南门是正门,正门前是御赐牌楼,四柱隔成三门,中门横额写“敕赐西园戒幢律寺”,中门石柱刻有一副对联:“佛日增辉重开阊阖,宗风振律大启丛林”。御赐牌楼始建于清光绪年间,至今保存完好。

西园寺最佳游玩季节是秋季,届时满园都是金黄的银杏和红枫,十分好看。

从出口出来后才发现这里有售票处,很多人在购票。但从东门入居然不检票,无意之中“逃过一票”。

摄于2025年2月5日,By 徕卡 D-LUX8

写了十几年代码, 谷歌/Google认为我还不够Senior


google 写了十几年代码, 谷歌/Google认为我还不够Senior 程序员 面试

Google/谷歌

我儿子也说我不够Senior

去年9月,我第三次面试伦敦谷歌,目标是一个SRE(站点可靠性工程师)职位,抱着试试看的心态参加了面试。第一轮面试的最后两分钟,回答了一个关于如何将算法应用于分布式系统(如何优化算法)的follow-up问题,表现得不太好,因此没能通过那一轮。

不过严格来说也不算被拒绝。等了三周后,他们告诉我最终选择了另一位候选人,虽然我的表现不是最出色的,但应该达到了最低门槛,所以并未直接拒掉我,而是建议我等待伦敦的其他职位空缺再申请。

这一等就到了12月。这位谷歌的美女猎头联系了我,很快安排了隔一周的两轮算法与编码面试。新年后还有两轮:一轮系统设计,一轮文化匹配(也就是行为测试)。

navigated-to-google-final-interviews-stage 写了十几年代码, 谷歌/Google认为我还不够Senior 程序员 面试

在2024年年末再一次收到Google Recruiter的消息,说伦敦有HC可以继续面试了。

这是我第二次进入谷歌的终面(Final Rounds),也就是 Onsite Interviews。

谷歌终面:接近L5却被给L4,大饼画得响

面试结束后的第二周,我发了邮件询问结果,但没收到任何回复。又过了一周,还是毫无消息。我一度以为自己被拒绝了,甚至怀疑是不是发挥太差,谷歌连拒信都懒得发给我。

上周(面试后的第6周),突然就接到猎头的邮件,她说:

I hope you’re keeping well! Apologies for my delay I’ve been unexpectedly out the office.
Your feedback isn’t straightforward, and getting the feedback through hasn’t been straightforward either.
Would you have some time to connect and discuss further together please?

希望你一切安好!抱歉我回复晚了,我出乎意料地不在办公室。
你的反馈并不直接,而且反馈的传递也并不直接。
你能抽出时间联系一下,进一步讨论一下吗?

google-interview-feedback-email 写了十几年代码, 谷歌/Google认为我还不够Senior 程序员 面试

谷歌的这封邮件让我感觉其实没有我想象中的糟糕。

问了ChatGPT:这封邮件表明你的谷歌面试结果并不是一个明确的“通过”或“拒绝”。以下是可能的情况:

  • 面试反馈不一致:一些面试官可能给了积极反馈,而另一些则有疑虑,导致最终决定难以达成。
  • 招聘委员会仍在讨论:你的情况可能需要额外的讨论,招聘委员会正在评估你的表现,招聘官希望与你沟通他们的想法。
  • 团队匹配考虑:如果你的表现不错但未达到直接通过的标准,他们可能在考虑是否有合适的团队愿意接收你。
  • 可能需要额外面试:谷歌有时会安排额外的面试(例如“加试”或“Googleyness 轮”),以消除对你的某些疑虑。
  • 招聘官希望亲自传达更细致的信息:可能不是简单的拒绝或录取,而是希望与你深入探讨你的表现,提供反馈,甚至讨论其他可能的机会。

由于招聘官之前一直不在办公室,内部流程可能有所延误,所以这封邮件并不一定是坏消息。建议你做好心理准备,保持开放的心态,迎接各种可能的结果!

谷歌终面的两轮算法

这两轮算法题有些难度,不是力扣/LeetCode上的原题。题目不算太复杂,还带有follow-up问题。我给出了多种解法,自认为发挥得不错。

其中一题是设计一种数据结构,另一题是实现一个API。单纯的实现(穷举)并不难,难点在于如何优化,比如如何利用线段树/Segment Tree、二分搜索等技巧提升算法效率。

谷歌终面的系统设计

系统设计这一轮我感觉表现得很糟糕。特别是面到一半的时候,我觉得自己思路不畅,像是没戏了。

面试开始时,我虽然问了功能性和非功能性需求(Functional/Non-functional Requirements),但后来忘了用于计算,导致我的设计不够优化的同时,还陷入局部优化的误区,花了太多时间。直到面试官给出提示,我才反应过来并调整到正确的设计。

这一轮系统设计一个小时很快过,但是很多时间花在了纠结在怎么在不成熟的设计上打补丁,导致于后面虽然在提示后能设计出来也没有太多时间讨论了。

一般来说,系统设计是决定软件工程师Offer级别的,而相反,对于Coding/编程能力,各个级别是要求差不多的,甚至可以说,高一点的级别对于编码能力会稍微的低一些。

级别高的软件工程师需要有更强的设计能力,更需要掌握大方向(Big Picture)。

谷歌终面的行为测试(Behavior Interview)

这一轮更奇怪。面试官迟到了五分钟才上线,一开始就说只问三个问题。回答完后,整个面试不到20分钟。我尝试多提了几个问题想聊聊,结果家里网络不稳定(可能与路由器有关),竟然掉线了。幸好重新连上时面试官还在,但简单说了两句后就草草结束了,感觉不太顺利。

谷歌面试反馈

由于系统设计表现不佳,我之后发邮件其实是想获取一些反馈(Feedback)。面试最重要的就是反馈,因为它能帮助你进步。最近面试伦敦Jane Street被拒要反馈没给,我家孩子同时拿到两个offer后,我也给学校发了邮件要反馈,这些都是很有用的信息。

反馈结果和我预想差不多:系统设计需要提示才能完成;代码写得有些仓促,带有BUG,但能提供多种解法;文化匹配方面没太大问题,但面试官没找到我能激励同事的“强信号”(有点疑惑?No strong signals to show that you can encourage your peers)。一直以来,我认为这一轮并没有啥出彩的东西,只要没有触犯一些Red Flags就可以了,没想到这一轮也能决定最后面的级别。

美女猎头告诉我,面试整体反馈是好坏参半,感觉我接近L5水平,但还需稍作打磨(Polish)。他们愿意给我L4的offer,问我愿不愿意去。我当然拒绝了……她说:“确实,It doesn’t make sense。”她的意思是,如果我以L4入职谷歌,很快就能升到L5——这话画了个大饼。据朋友说,谷歌也和AMAZON一样,喜欢Low Ball(降一级给Offer),千万别信这种大饼。

Google的L5是Senior,L4是Mid-level。我现在在微软剑桥研究院 MSRC是63,对应是谷歌的L5,而之前在亚马逊是L5对应的是谷歌的L4=mid level。

她还说,如果6个月后我愿意再试,可以直接联系她。一般来说,水平不够直接被拒,需要等12个月的冷冻期才能够再次申请。

面试经历

面试题

面试技巧

面试其它

英文:Google Finals: Close to L5, Offered L4, and a Big Pie in the Sky

本文一共 1938 个汉字, 你数一下对不对.
写了十几年代码, 谷歌/Google认为我还不够Senior. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 写了十几年代码, 谷歌/Google认为我还不够Senior 程序员 面试
The post 写了十几年代码, 谷歌/Google认为我还不够Senior first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  2. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  3. 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. 1 2...
  4. STEEM SQL 系列之 每个月到底能挣多少? @jubi 大哥一直说要靠 STEEMIT 来买别墅, 这梦想很好, 却遥不可及. 对我来说, STEEMIT的收入能让我改善一下生活, 但是远远到不了能养家糊口的主业. 使用 LINQPAD + STEEMSQL, 我们可以跑一下下面的SQL, 来看看我每个月在STEEMIT上的收入情况:...
  5. 避免选择低质量没保障的 VPS 公司 现在程序员基本都会有VPS服务器, 价钱也不贵, 一个月几美元, 随随便便就能申请个玩. 我自己这几年也玩了不少VPS, 现在手上大概有10台VPS, 用于不同的服务: 博客, 区块链, API等用途. 上两周, 其中一台服务器商 supremevps 突然发邮件 给两天时间,...
  6. 英国HSBC汇丰银行因为房子钢筋结构不肯放贷 上周五看了一个房子, 在剑桥市中心, 价格比同地区的房子便宜许多(几万英镑), 一个很大的原因是房子内部装修较破. 我本想着, 房子内部破无所谓, 反而将来升值空间较大. 房子主要是看地区: 我现在住的相对于剑桥市中心类似于河北相对于北京天安门. 4年前买房的时候并没有那么多钱, 而且时间也比较紧(当时从谢菲到剑桥也就两三个月时间准备), 所以也就选了一个剑桥的村庄里(但一点都不升值! ), 主要是看价格合适, 孩子上学也方便,...
  7. 三分熟的牛排 除了像早餐, Fish and Chip, 英国酒巴也是吃得到一些外来引进的食物,比如牛排.虽然一般的酒巴里的牛排 (Steak) 一般都不是很地道,表现在你要个三分熟的牛排基本上都是 烧熟了的给你.还有就是牛肉本身也有区别,嫩,而且要新鲜. 上周五发现一家巴西烤肉自助,刚上来的牛排就不错, 三分熟,新鲜,嫩.要是能有个红酒就再好不过了. 五分熟的可以说是 medium (cooked), well done...
  8. 公司给配了台高配DELL笔记本 早上例会结束的时候我顺便说了一句 我的笔记本有点慢, 当时我并不知道我的经理远程用电话也参加会议了(他全程在听), senior staff SE 对着电话说, “peter, you hear that? btw, my disks are...

20250221

今天交完个税了!公司新的架构即将搞定,接下来最重要是的事情是调整回状态,我需要:

  • 充足的睡眠和休息
  • 安排好工作
  • 恢复阅读,不浮躁
  • 少用手机
  • 投入产品

下周 Alen 和 Q 哥要去上海分享,下午他们给对方讲了一遍,我作为听众也提前听了他们关于产品原型的分享。Alen 的分享尽管是自己公司的产品,因为没有参与产品设计,对我来说内容也有 30% 新鲜。Q 哥的分享那就是真的在学习了。下周是热热闹闹的两个活动两波聚会,要在上海待一周,期待与朋友们相见。

今天年轻人买的第一张麻将桌到了,教练负责收获安装,小团队有自己的娱乐据点了!

047c02cedcfbf714b752605d0ddf7721.jpeg

科技爱好者周刊(第 338 期):重新思考 6G

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

本杂志开源,欢迎投稿。另有《谁在招人》服务,发布程序员招聘信息。合作请邮件联系(yifeng.ruan@gmail.com)。

图片

重庆巫山的悬崖上,有一座民宿,可以俯瞰三峡,图片是民宿的后院。(via

重新思考 6G

上周,国际电气电子工程师学会(IEEE)的网络杂志《科技纵览》(IEEE Spectrum),发表了一篇文章《重新思考 6G》

它提出一个很有意思的观点:带宽需求可能已经饱和了

文章的大意是,对于绝大多数的普通用户来说,目前的网速已经够用了。上网速度即使进一步提高,消费者很可能无感。

它的证据是,手机的 5G 网络从2018年开始部署,已经6年多了,至今没有出现杀手级应用。绝大多数应用的网速需求,4G 网络就能满足

为了让大家有一个概念,我简单列一下网速的数量级,4G 是每秒 100 Mb,5G 是每秒 1 Gb(1Gb 等于 1000Mb),拟议中的 6G 是每秒 10 Gb。

注意,这里的"b"是小写,表示比特位(bit)。平时使用的 MB 和 GB 的"B"是大写,表示字节(Byte),一个字节等于8个比特位。

大家知道吗,最吃带宽的应用,网速需求是多少?

视频应用对网速的需求最大,Netflix 的 4K 视频,网速要求是每秒 15 Mb,4G 网络下可以同时打开三、四个窗口播放。

只有极少数应用,网速需求达到了 5G 的门槛。 目前,网速要求最高的应用之一是微软飞行模拟器2024,达到了每秒 180 Mb。

这就是说,现阶段根本没有应用,必须用到每秒 1Gb 的网速。大多数用户从 4G 升级到 5G,不会有明显感知,更不要说将来从 5G 升级到 6G 了。

结论就是,(对于普通用户)网络带宽可能到头了,目前的 5G 网速足以满足绝大多数人的需求

这有点像民航飞机,过去50年,大型喷气式民航飞机的飞行速度,基本没有变化,一直是每小时900公里左右。并不是造不出更快的飞机,而是这个速度是最佳平衡点,旅客可以接受,飞行成本也不会过高。

通信网络可能也到了这个阶段。5G 够用了,升级到 6G 不是那么迫切,也许很长一段时间都不会发生。一方面,市场需求不大,另一方面,即使升级到 6G,设备和流量的价格也会非常高昂,消费者很可能没有意愿买单。

这意味着,过去几十年来,一直轰轰烈烈、巨额投资的通信设备市场,将要放缓。电信公司的网络建设投资,将会大幅减少。

一旦通信公司不再能通过网络升级获得新客户,就必须采用其他手段,来发展业务:(1)流量降价;(2)提高网络的覆盖范围,减少信号差的地区;(3)提升客户服务。

当民航的飞行速度不再提高后,就出现了廉价航空公司。可以预期,未来也会出现廉价的通信商,出售非常便宜的流量。

AI 动态(两则)

AI 的研究模式

2025年,AI 大模型的进展是什么?

答案肯定是研究模式。早期一问一答的对话,已经进化到了思考和推理。

遇到需要深入思考的问题,AI 会先思考框架、拆解步骤,再查找大量文献资料,分析整合出最后的结果,思考步骤还是很全面的。

国外,Google、OpenAI、Perplexity 等公司都已经纷纷上线了 Deep Research。国内,对标 Perplexity 的"秘塔 AI"也上线了新的研究模式。

它的背后是"双模型架构":需要深度推理的部分,由满血版 DeepSeek R1 完成,需要快速响应的信息搜索、资料整合部分,由秘塔自研的模型完成。

下面是一个例子,你要写一篇论文《基于区块链的碳信用交易系统》,研究模式就会给出思考步骤,最终生成研究框架。

再加上秘塔 AI 自己的学术数据库,保证了参考资料的真实性,使用下来发现有些回答会好于 DS 官网。

体验到这些是完全免费的,而且操作零难度。大家有需要研究和分析的问题,可以去试试看

VS Code 使用 DeepSeek 的方法

在 VS Code 编辑器,怎么使用 DeepSeek 模型?

国内用户的最简单方法,大概就是 MarsCode 编程助手

它最新的 VSCode 插件(1.1.62版本)和 JetBrains 插件(1.2.1.15版本),都支持 DeepSeek。已经安装的朋友,IDE 内直接更新,新安装可以去官网下载

使用时,在 AI 对话框下方,点击模型按钮,目前有三个模型:doubao-1.5-pro、DeepSeek R1/V3(满血版)。不需要任何配置,全部免费使用

这三个模型的能力都很强,插件效果(代码解释、注释、修复、优化、上下文问答)都表现更好了,大家可以自己比较。其中,DeepSeek R1 模型在后台由火山方舟部署,TPS(每秒 Token 生成速度)、TTFT(首 token 出现等待时间)等指标,第三方测评结果称,其 DS 方案性能排名表现优异。

这一次,MarsCode 官方正在举办"体验有礼"活动,在社交平台(小红书、CSDN、掘金开发者社区)分享自己的使用截图和不少于30字的使用心得,艾特他们的官方账号"@豆包MarsCode",就可以在他们的官方微信账号参与抽奖,中奖率高。

另外,MarsCode 团队上个月发布了一款 AI 原生的 IDE -------- Trae,注重提升整体的 AI 体验,大家也可以试试。

科技动态

1、时间码的身份验证

很多应用采用一次性时间码(TOTP),按照当前时间和用户生成一串数字,来验证用户身份。

一个程序员想到,完全可以用这种方法,验证是否见到了本人。

举例来说,A 和 B 从未见过,如何在见面时,确认来的是本人?

他们可以访问这个网址,输入双方的名称,系统分别为他们生成一个二维码。

他们将自己的二维码,保存到手机的验证器,以便生成时间码。见面时,如果双方的时间码一致,就表明来的是本人。

2、机载大地磁场探测器

中国科学院最近研制了,中国首套机载大地磁场探测器。

建设高原铁路,需要了解沿线的磁场情况。但是,沿线都是无人居住的高原山区,人工勘探很危险,成本也非常高。

科研人员就将磁场探测器,安装在一个环形支架上,吊挂在直升飞机下方。

飞机在飞行过程中,就能读取磁场数据,完成探测。

3、被缚的机器狗

一个日本艺术家创作了一个叫做《被缚的机器狗》的作品。

只见两条机器狗被铁链拴住,不停走来走去,有时会趴着休息。

如果有人经过,它们会冲过来,好像要攻击似的。

但是,铁链把它们拉住了,它们最后只能退回去,悻悻得叫几声。

看着这个作品,给人的感觉很复杂:恐怖、怜悯、荒谬......

4、其他

(1)NBA 的苹果 Vision Pro 应用,添加了直播的 3D 桌面模式,球场的实时画面变成了一张 3D 棋盘。

(2)美国宇航局宣布,一颗名为"2024 YR4"、直径40米~90米的小行星,在2032年撞击地球的概率是三十分之一(3.1%)。如果相撞,可能毁灭一个城市。

文章

1、废弃 Create React App(英文)

React 官方宣布,正式废弃 Create React App,建议通过框架来使用,也就是不建议直接用 React。

2、Unicode 字符的迷你柱状图(英文)

本文介绍怎么使用 Unicode 字符,来生成迷你的柱状图(上图)。

3、多页应用不输给单页应用(英文)

单页应用(SPA)是网页应用的主流,本文提出多页应用也可以做到 SPA 的各种优点。

4、详解 Linux 硬链接和软链接(英文)

Linux 有两种特殊文件:硬链接和软链接,本文详细解释它们的区别。

5、了解 CSS 的 overflow: clip(英文)

CSS 的 overflow 属性,有一个 clip 值,可以截去溢出部分。通过它,可以做出很多页面效果。

6、什么是网页的元信息?(英文)

本文介绍如何在网页中插入元信息(比如作者、关键词、内容描述等等),便于计算机检索。

7、如何安装 ADB(英文)

ADB 是电脑连接安卓手机必需的,本文分别介绍 Windows/macOS/Linux 如何安装 ADB。

工具

1、ElevenReader

一个手机 App(支持 iOS 和安卓),把电子书转成有声书,支持中文,但是内置的老外语音读起来很生硬。

2、GIXY

一个开源的命令行工具,检查 NGINX 的配置文件是否有错误。

3、uchū

一款互联网调色板,提供预设的 CSS 配色方案。它采用新的oklch()函数声明颜色,这里有一篇oklch()的介绍文章

4、Bun Shell

使用 Bun 作为解释器的 Shell 环境,可以在命令行直接运行 JavaScript 脚本。

5、Spotube

一个另类的 Spotify 跨平台客户端,从 Spotify 获取数据,然后播放来自其他音源(比如 YouTube)的音频,从而不必购买会员。

6、Kener

一个自托管的状态页,用来监控指定网站是否正常在线。类似工具还有 Uptime Kuma

7、gtrash

Linux 和 Mac 系统的被删除文件的垃圾桶,可以在终端里面还原文件,参见介绍文章

AI 工具

1、DeepSRT

一个 Chrome 插件,观看 Youtube 视频时,在浏览器侧边栏展示视频总结和字幕。(@tsungmin 投稿)

2、Deep Research Web UI

AI 深度研究的前端 UI,可以接入各种大模型,结合搜索引擎和网页抓取,对各种主题进行迭代式深入研究。(@AnotiaWang 投稿)

3、AI 翻译助手

开源的 AI 翻译网站。(@321208008 投稿)

4、GitSeek

给定一个代码库,使用自然语言搜索需要的代码片段。(@i-richardwang 投稿)

5、AI 多人聊天室

一个开源的、基于 React和 Cloudflare Pages 的 AI 聊天室,跟多个 AI 模型同时聊天。(@maojindao55 投稿)

资源

1、四级词汇手册

使用 DeepSeek 编写的四级词汇手册,提供单词的词义、词根、例句、辅助记忆、助记图像等。(@vxiaozhi 投稿)

2、唐韵

一款界面简洁的古诗词网站。(@LLSean 投稿)

3、News Digest

欧美科技网站头条新闻的 AI 摘要,实时更新。

4、Discuo

一个极简主义的论坛,不需要注册就能发言,类似于 Reddit,可以创建各种频道。

图片

1、饼图与直方图

同样的百分比数据,分别使用饼图和直方图表示,可读性不一样。

首先是饼图。

其次是直方图。

大家觉得,哪张图更易读?

一般来说,直方图更易读,饼图比较难读。原因是人类比较长度的能力远强于比较角度的能力。

2、瑞士护照

新版的瑞士护照,每一页都有紫外线水印。

紫外线灯下,护照封面会显示瑞士国徽(一个十字)。

其他页面会显示山脉的等高线和地图。

文摘

1、旅行50年的一点经验

作者:凯文·凯利

我已经认真旅行了50多年,学到了很多东西。

旅行有两种模式。一种是休息模式,人们通过旅行来逃避常规的工作,进行放松和重振精神。这种模式下,你会去轻松的地方,悠闲地度过假期。

另一种是体验模式,你旅行是为了发现新事物,获得新体验,投入一场结果不确定的冒险,遇见异类。这种旅行是一种学习,我的经验主要适合这种模式。

很多人旅行有一个误区,就是想看遍所有地方。因为你很可能再也不会来了,所以忍不住想最大化你的行程。既然我们在 X,而 Y 和 Z 又很近,我们不妨去看看 Y 和 Z 吧......

其实,在更少的地方待更长的时间,远比把时间花在一堆地方好得多。你更应该放慢旅行的速度,多休息。

旅行最难忘的时刻----与陌生人的交谈、被邀请参观、发现隐藏的地点----通常发生在你停下来的时候。

你可以前往旅行成本最低的地方,从而同样的预算,就可以待更长的时间。而且,便宜的、非主流的目的地通常值得一游。

为了获得最佳的旅行体验,你要么投入很多钱,要么投入很多时间。这两种选择中,时间比金钱好得多。因为金钱可以买到时间,但金钱买不到时间所能提供的东西。

言论

1、

我发现,AI 大模型生成代码时,总是优先使用2022年11月 ChatGPT 发布之前流行的技术。AI 给予这些技术的优先待遇,将扩展它们的采用和寿命。

-- 《人工智能正在抑制技术采用》

2、

我认为欧洲真的要加强。在过去的20年里,美国经济和中国经济的增长速度远远快于欧洲经济

如果不放松对人工智能技术的严格限制,欧洲有可能成为一个"博物馆"。

-- 克里斯特松,瑞典首相

3、

在商业领域,最先做到的人有优势。但是,在研究和学术领域,成功往往不属于最先理解的人,而属于理解得最好的人,真正的优势来自于深刻、基础性的见解。

-- 《我在麻省理工学院的时光》

4、

先行者开辟了道路,后来者用更少的计算资源迅速缩小差距,这就存在了先发劣势。

-- Hacker News 读者

5、

以谦逊和好奇的态度对待工作时,你会学到更多,参与得更充分。初学者的心态是一种财富。保持真实的自我有助于你找到自己真正的使命。

-- 《我在麻省理工学院的时光》

往年回顾

AI 没有护城河(#291)

中国的增长动力在内陆(#241)

一个程序员的财务独立之路(#191)

封闭系统的胜利(#141)

(完)

文档信息

  • 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证
  • 发表日期: 2025年2月21日

无法放下的关系

我先偷换一个概念——所谓的「放下」,指的是有「东西」可以放下,否则我们拿什么去放下。

也就是说,在一段关系里,要放下些什么,必然是发生了什么。但被放下的东西本身,或许从开始到现在,都未曾有过任何实质性的改变。


前几年,我大病初愈躺在病床上,父母当天与我的妻子交接班照顾我。这也是我后来才意识到的问题——疾病会导致荷尔蒙和激素水平的完全失常,所以那段时间所谓的「从生死走了一遭」之后的疯狂表达、不停说话,其实是激素水平的关系。在那样的状态下,我跟父母聊起「听话」这件事。

我从小浑身被贴满了「懂事」和「少年老成」这个可以作为「别人家的孩子」的标签。这个身份被揭穿,是初中的某一次家长会,班主任向我妈抱怨,我是一个跟谁换座位都可以讲话的人,就算是一个人安排在了讲台旁边的特殊座位,我都可以给上课的老师捧哏接茬。父母花了三年的时间,接受我的离经叛道,甚至开始怀疑是不是小时候对我不够关心,导致忽视了我有自闭症和多动症的病情。

我在病床上,给父母聊起这件事,我从一开始就希望他们认定我是那个离经叛道的孩子,我所谓的「爱学习」,也不过是在帮邻居照看漫画店的时候,从爬上书架把最顶层我够不着的色情漫画都看过一遍。这也是成年之后,我才弄清楚的核心——

我之所以装作听话,是因为我给自己包裹了一层「我不愿意父母伤心」的假象。撕开这个假象,真正的核心,是我希望得到关注。


我整个小学、初中,爸爸常常出差,我主动去补位了父亲符号缺失的童年,给自己安插了一个「家里唯一一个男性」的身份标签。只要我表现得足够懂事,我就可以成为人们口中的那个「别人家的孩子」,但我本性又是个离经叛道的家伙,所以在学校又在追求另一种「被关注」,即通过犯错的方式获得那个连老师都拿我没办法的反差身份。

要跟父母聊起这件事,就必然会提到童年父亲缺失、母亲将「懂事」作为我应该做到的标准而忽略我的真实想法,从而不得不面对对我关注缺失的教育结果。当我将话题一步步引导至此,我妈突然打断了我继续滔滔不绝:「我知道,你现在说这些也没用了,你先好好养病,不要胡思乱想。」

现在想想,这件事的残忍部分,不是在于我妈拒绝聆听我的肺腑之言,而是我将他们渐渐拉入了一个无法自证的死循环之中。如果他们承认了对我童年的忽视,就意味着他们要全盘否定自己的大半人生——毕竟他们也是第一次当父母。

自此,我也再也没有提起关于童年的事情。我把这件事称之为「放下」,放下了一个你知道再也无法改变的事实、再也无法回溯的「因」、以及接受这个因带来的充满了体验感的「果」。


很多人之所以无法放下一段关系的痛苦,来自于他们认为还有能力、义务去改变已经既定的结果、甚至是通过感化的方式,让对方清楚地认识到自己的「好」,从而使关系回归正轨;还有一些放不下,是直接与利益挂钩的,比如前几天在《卡在时间的缝隙里》提到的,当事人因为无法割舍父母提供的经济支持、甚至是未来的遗产作为的既定利益。只是这些「放不下」被包裹了一层又一层的情感支持,从而变成了剧本里那些「不得不」的剧情。

拆掉这些一层一层的假象,就像我始终觉得我是不想让父母伤心的说辞一样。内核或许比我们想象的还要简单和直白——甚至是丑陋、残忍、与中国传统文化相抵——但你不得不承认,它又是人性的一部分。(我可没有说部分中国传统文化是反人性的)

但有的时候,「放下」又是那些局外人口中再轻松不过的一个动作。就像我在这里聊到拆解那些一层一层放不下的内核,这个过程就是逼迫着当事人去直面真相的过程,它并不轻松。


所以我才提出了最开始的那个「概念偷换」,所谓的放下,一定是有存在性,例如一句没骂出口的粗话、具体的伤痛经历、利益的衡量等等。当你真的找到了那个历史事件,你意识到它造成了你未来路径上的何种影响——那是改变不了的事实,就像是在平行世界你必然会走到的「如果」支线的结果,只有这些童年的经历,才会造就现在的你。幸福或者不幸福,只是你站在了哪一个身份、时间点,和对标了怎样的参照物得出的结果罢了。

只有当被包裹着的一层层放不下的假象被撕毁的那一刻,你会意识到,最内核的那个点,或许就是一个微不足道的「我」,你对抗不了「我」,当结果和原因是同一个存在时,那个本应该被「放下」的东西会荡然无存。这个时候,便不再是放下,而是「接受」这就是自己的一部分。

「我」因为想要融入一个群体,结果自愿去充当了那个群体里被欺负的「穷人」,当我意识到自己的付出并没有带来融入群体的结果时,我开始反击那些「富人」刺耳的嘲笑;进而我开始怪罪童年那些被「寄养」的经历,如果没有父亲这个符号的缺失,我也不会被寄养到亲戚家——其实从一开始,我只是希望得到被关注,希望告诉我妈,我不喜欢去别人家,我只喜欢在家里无所事事地待着。

——解答《童年的种子》里关于「还没放下吗」的评论。

而这一切,都被包裹进了一个所谓的应该在成年某一刻「放下」的原生家庭的桎梏之中。

但是内核,只有在成年的那一刻,我们才敢做出选择——「我不要、我不想、我想自己做决定」。

不过,又有多少成年人,想、能、敢在自己的人生里去说出那句「我不要、我不想、我想自己做决定」呢?

事实就是这么残酷

当年今日

上一个周末,我花了两天的时间才看完了一部叫《姥姥的外孙》的泰国电影。前一周我就在爱奇艺上看到,但我没有点进去,因为我觉得这个标题有点北方的感觉,但当我仔细看,好像演员都不是中国的,然后评分还很高,9.0,所以我就点进去了。接着我发现这是一部泰国电影,我只能说这应该是一部泰国电影,因为那个字体好像是泰文。当正片开始以后,我又迷惑了,明明说的不是普通话,但我又觉得那有一些中国方言的成分。一开始是一个清明祭拜的界面,那个坟头的款式是中国的坟头,上写的那些碑文也是中文,外加那些演员说着好像有点潮汕方言,所以我就怀疑,我看的真的是一部泰国电影吗?这种疑惑持续了几分钟,然后我知道了,之所以这样,因为他们是一些泰国华裔,应该是潮汕那边过去的,所以就这样了。

这是一部非常真实的电影,如果你觉得煽情,你觉得重男轻女,你觉得过于造作,是因为你还太嫩,你还真的没有体验过真正的人生。那个姥姥演得真的太到位了,过了几天我去搜索才发现,原来她还不是一个专业演员,是一个海选出来的路人。

爱奇艺的宣传语里,形容这部电影的是“啃老啃出新高度”,但当你看完这部电影以后,我觉得那句宣传语过于贬义了,实际上不完全是这样的,起码到最后,我觉得不是这样的。

电影里有那么一句台词,让我觉得非常真实扎心。姥姥最后的时刻被外孙接回家,家里只有他和他妈妈,也就是姥姥唯一的女儿。姥姥在为妈妈清理冰箱里的过期食品,说她如果之前没有吃那么多过期食品,估计她就不会得肠道的癌症。女儿说了一句:“儿子是用来继承财富的,女儿是用来继承癌症的。”这句话有错吗?这句话真实得红果果。女性为了家庭付出了一切,无论是在她结婚之前,还是结婚之后。结婚之前是照顾她的原生家庭,结婚之后是照顾她之后的那个家庭。在这过程中,她们从来没有为自己着想过。就像在寺庙许愿的时候,姥姥的愿望全部都是希望家人好,但除了外孙以外,没有一个人考虑过姥姥。

在知道姥姥得了绝症,且命不久矣之后,大哥和三弟以及外孙都在不断示好,不断地接近姥姥,就为了觊觎姥姥的那栋房子。大哥过得很好,挺有钱,但是有钱人从来都不会觉得自己的钱已经够多了。三弟游手好闲,烂赌成性,如果不啃姥姥,他的日子根本没法过下去。唯独女儿是全心全意爱着她的母亲,就像姥姥不求回报地爱着她的子孙一样。

有人说这部电影的重男轻女太严重了,这个社会上的重男轻女,有不严重的吗?无论是东方还是西方,无论发达国家,还是贫困地区。重男轻女一直存在。如果不敢接受这个事实,只是你太天真幼稚了。

电影里,每到周末,姥姥就穿上最漂亮的衣服,坐在门口的板凳上张望着等待着子孙们回来。这让我想起了自己的外婆,她也是这样的。虽然我的外婆不会特意穿得很漂,但她就是坐在那里,每次回去的时候她就坐在那里,张望着,等待着我们回去。如果有一次我不在周末,突然又回去了,她坐在门口看到我。我能从她的眼睛里看出光。外婆的那个高兴无需言语你就能感受出来。哪怕我们只是回去吃一顿饭,为了那顿饭她要张罗很久。年轻的时候饭前张罗,饭后还要洗碗收拾。明知要付出很多,但是她还非常希望我们能回去见上一面,看上几眼就能让她很开心。我的外婆从来不奢望我们回去的时候能给她带点什么?又或者给她多少钱?这些都不重要,你回去的时候,如果你你问她拿钱,她肯定马上很痛快地给你,虽然这种事情我肯定干不出来,我也不需要做这种事。他们的这种不不求回报,有多少人能懂?现在有多少人能做到?

回忆这个东西如果回忆多次了,出来的那个结果就会渐渐变形,慢慢模糊,于是大脑又自动的编纂一些东西进去。感谢《姥姥的外孙》这部电影给我们带来了这个真实且残酷的故事。

博客印象

看到 椒盐豆豉Allison 征集了博客印象,我也很想知道大家对这个博客的看法和感受。

问卷内容照搬了两位博主。如看不到内嵌问卷,可点击链接

问卷使用 CryptPad.fr 搭建,端到端加密,开源。免费版基本够用,国内用户也能访问,可嵌入网页。

官方提供的嵌入代码兼容性有一些问题,下面的代码是我稍作修改的,大家可以修改使用:

<div class="wp-cryptpad-form-wrapper" style="
    position: relative;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    box-sizing: border-box;
">
    <div class="wp-cryptpad-form-container" style="
        position: relative;
        width: 100%;
        border-radius: 0.75rem;
        overflow: hidden;
        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    ">
        <iframe 
            src="https://cryptpad.fr/form/#/2/form/view/iUe1YFtzJUBhulf5cTMLQ8Yd-YCyWJq2y4wU8NR4I98/embed/" 
            style="
                display: block;
                width: 100%; 
                height: 800px; 
                border: none;
                margin: 0;
                padding: 0;
            "
            allowfullscreen
        ></iframe>
    </div>
</div>

痛失小米 9 SE

小米 9 SE 是我的上上台手机,我换手机之后就没用过了。最近拿出来,发现居然能安装最新的 LineageOS 22.1(Android 15)。我一直感觉在 Android 用 root 权限是比较危险的,所以没用过。刚好这台空闲的手机可以让我测试,测试好一些应用或者模块,我就在一加 Ace 3 上面用。我还很喜欢小米 9 SE 小巧的尺寸,现在已经很少可以单手使用的小尺寸手机了。

这台小米 9 SE 有两个比较严重的问题:烧屏(屏幕泛黄、有残影)、电池损耗严重(出门必须带移动电源)。感觉换屏幕太麻烦,就算了。电池倒是可以换个新的。花 69 元人民币买了块诺希牌电池,自己安装。

客服发的安装视频里的工具和实际的工具略有不同。视频里用胶带贴后盖,我拿到的是胶水。视频看了一遍,感觉自己能搞定。

第一步是打开后盖。关机,用吹风机加热后盖,用吸盘贴住后盖底部,用三角拆机片抠开边缘。工具要放远点或者装起来,不然吹风机会吹走工具。

第二步是拆螺丝。按顺序拆下 10 颗螺丝,在纸上画图,用 1~10 的数字标记位置,把螺丝放在纸上。挑起电池排线。

第三步是取电池。加热电池,很不幸把螺丝吹开了,发现有 2 颗螺丝是短的,不知道装的时候该装哪个位置。拉出电池底下延伸出来的胶条,很难拔,还拔断了,胶条还残留在电池底部。接下来用工具用力撬起电池(错误操作),中途还太大力刺伤手指了,疼!

差不多撬起来的时候,电池有点变形了,再撬电池就破了。电池冒烟,我脑子还没反应过来,手就把手机丢到地上了。电池接着就着火和冒烟,燃烧完后电池很胀,屏幕被加热到出现一个白色的实心圆圈,烟的气味很臭很刺鼻,过了一晚才闻不到。幸好人和房子都没事。最后把电池和主板装到袋子,贴上「锂电池」的纸,放在有害垃圾垃圾桶旁边了。附近的人似乎不分类丢垃圾,所以我就把电池直接放垃圾桶旁边,希望回收垃圾的人能看到。

换电池失误的后果好严重,主板都烫坏了,以后还是去售后中心换电池吧。真怀念以前的手机,关机打开后盖就直接换电池了。

20250220

从舒适的广州回到了只有 7 度下雨的杭州,回办公室被雨淋,出门吃饭被雨淋,回家被雨淋。

回办公室立马遇到烦人的事儿,差点疯了。还好顺利解决,晚上去吃了一顿好吃的羊肉串。吃了两次“很久以前羊肉串”,他们店的服务有挺多让人记住的好的细节,下次还会再去。

晚上追一集《人生切割术》。

Placify 有个地点回忆功能,发现去年现在也是深圳出差广州玩耍。

IMG_4252.png

无法独自面对的真相

今天的思考,来自于一位朋友在博客留言区与我的互动:

先拆解一下这段话:

  • 我既要面对我自己对内的攻击,也要面对他人对我做出评价从而导致的对我攻击;
  • 面对真相,是另一种强烈的对内情感冲击;
  • 我是否能找到一个「第三视角」,绕过内心的冲突和不安,从而绕开真相(并植入真相);(P.S. 我很喜欢「特洛伊木马」这个比喻)
  • 我们内心在不知不觉中建立起了「围墙」,而这些围墙是限制我们认知和成长的原因。

我接下来想要聊起的「观察」,并不指向这位朋友的观点。你是否发现,上面四个阶段的内容,很像是一个人渐渐走进了封闭的围城之中,而不像是慢慢地走出围城,去面对真相。我之所以很喜欢特洛伊木马这个比喻,是因为我过去也试过用同样的方式,将一些我根本不想面对的真相,伪装成一种「对自我的宽恕」,在习以为常之后,给自己最后的「揭露」——但是,这样的行为,只会让我更加地厌恶自己,我到底在这个过程中充当的是保护自己的角色,还是把自己从好不容易搭建好的壁垒中拽出来面对血淋淋真相的角色?

诚如这位朋友的描述,面对真相是极其「孤独」的,它将会是一种强烈的对内攻击,在这种矛盾和冲突之中,将一个人的能量全部耗尽,然后再不得不重新面对一败涂地的真相,或者是继续退缩。


很久以前,我在博客的 Telegram 频道聊起过一个跟占星有关的话题,因为我聊到自己是「日月刑土星」的格局,矛盾和自我否定一直伴随着我。有一个女性在下面留言,说自己的男友也是这样的格局,希望我能展开聊聊,好让她更好地了解对方。

说实话,一个跟日月刑土星在一起的人,真的很难「入侵」对方的世界,甚至还会让他一不小心地「逃走」。于是我通过对自己经历的描述,给这位女性提供了我这类人格的特质和视角,以及如何帮助对方克服这种命格带来的「矛盾」。因为我也是这样被敲碎了石头,才让阳光和雨水能有足够的空间照射进石缝之中的种子上。敲碎这个石头的人,不是我自己,而是我的妻子。她曾一度不停地戳我,戳到爆炸之后,把所有对内的情绪都爆发之后,才不得不面对那些长时间憋在心里不肯直面的真相。

面对真相是孤独的,但孤独不是解决办法。如果有一个人能够同时和你一起面对真相,甚至是直言不讳地将真相呈现在你的眼前,但你知道「那个人会在我因为真相击垮的瞬间,能伸出手拉自己一把」。


回到最开始那「四个阶段」,这个人在最开始就被「排除」了,因为他们很有可能会因为做出了我们不愿意面对的评价,而伤害自己——所以才需要从一开始就断绝这些联系——所以到最后只能由自己去孤独地面对真相。

或许有人会说,真相是「私人的」,它只希望被个体自己看见,别人看到越多,就越知道自己内心的脆弱。但反过来,是不是因为正是这些你要保护的脆弱越来越多,你才会花那么大的力气去建立起那些越来越厚但实则脆弱不堪的壁垒?

1995 年上映的动画《EVA》里,有一个耳熟能详的词,叫做「心之壁垒」,即将自身与其他自我和客观世界分割开的一面墙。现在看起来它很中二,但如果把这部动画放回到原本的日本社会,泡沫经济后的日本,年轻人都陷入到了虚无和无望之中,生存、社交和孤独,复合在了「碇真嗣」这样一个角色上,才会让那么多人感同身受。

这个壁垒,在努力地区隔人们内心世界不愿意接受的、来自于社会的真相。失业率提升、经济大萧条、通货紧缩……越来越多人宁愿把自己锁在房门里,以最简单的方式维系生理机能,然后逃离到那些虚幻的世界,动漫、游戏、色情片……在这里面他可以成为任何人。

是人们主动切断了人与人之间的联系,才有了「孤独万岁」的名义,但孤独并不是面对真相的有效方法,所以人逃离真相是必然的。回到现代,人们又因为惧怕他人对自己的负面评价,从而在最开始就切断了人与人之间的联系——面对真相,还是一个人的事,也还是「孤独」无法解决的事——这才是真相之所以残忍的根本原因。


回到人与人的关系,它也并不是一味地带来「正面结果」,但与什么人建立关系、建立怎样的关系,却是我们有得选的事情——但孤独却被伪装成了我们没得选,不得不去面对的略带中二气质的必然结果。

没有「关系」的兜底,无论怎样的真相都很难面对,因为你清楚地知道,没人能够在你面对真相倒下的那一刻,托住自己——因为自己到最后也会叛变成那个对内攻击自己的凶手。

有趣的是,今天即将开始更新的播客,也开始了关于「关系」的系列话题,在我博客这边,也将开始正式地聊聊「关系」这件事。

这或许才是解决「面对真相」的根本方法。

如果生活是旷野

早上6点起床,给太座和两个娃准备早餐。吃了早餐,他们去上班、上学,我洗碗、洗衣服、打扫卫生。 8:30收拾齐整 […]

惠普1020出状况

当年今日

不知道为什么,糟糕的事情总是接连不断。

周二的晚上跟往常一样,我要打印记账凭证,结果发现,一直用得好好的惠普LaserJet 1020 plus突然罢工,发生错误无法打印。看明细好像是因为USB无法识别。USB无法识别,下午的时候我就曾经看过弹窗,但我没理会,因为当时我正在把MP3插在电脑上充电,非常有可能突然间那个USB拓展口傻掉了,然后又不知道为什么识别不出那个MP3。反正能充电就行,能不能识别那个装置不用没关系。在电脑出现那个弹窗的时候,我就没有理会因为当时我的键盘鼠标都是正常的。MP3充电的显示也是正常的,无论如何我都不会想到,那是因为打印机。

打印机折腾的一番,没发现到底是什么问题,反正不时显示出来的状况就是某一个USB设备无法识别。折腾来折腾去都不行,我甚至换了一根USB线,也依然是那个效果,所以我把1020卸载了,然后重新安装。我是想着重新安装的,但关键是,当我插上USB线以后,还是那个问题无法识别。为什么一直非常稳定的1020突然出了这个问题呢?换了一个USB线也一样就意味着不是线材的问题,不是插口的问题,因为电脑主机的插口我已经换了好几个了。电脑已经重启过,但是打印机我没有把电关掉重启。所以那个时候我把打印机电关掉,然后重启,之后1020自动安装上去了。那个时候我也已经在惠普的官网下载了1020的全套安装包,我不知道那个全套里有什么玩意。反正在我印象之中,1020不需要安装包,win10是可以自动识别安装的。

打印机装上去了,接下来就是直接打印。我没有考虑那么多,像平常那样我就开动了,结果发现打印出来的东西不对劲,打印出来的那张纸是A4大小,但实际上我打印的那个记账凭证应该是增值税发票大小的纸,那个纸,我之前已经在系统的打印机属性设置里面设置过,为什么1020就识别不出来呢?

按照往常的方法,我又把那个自定义的纸张大小设置了一圈,结果无论如何在Excel界面看到的1020可选纸张大小依然没有。为什么居然会这样呢?之前从来没有遇到过这个问题。为什么我说从来没有遇到过,因为我也帮其他人设置过好多遍,每一次都是打印机装上去了,然后系统的那个打印设置设置好了,打印机就自动能选择系统已经设置好的自定义纸张,这一次不行。于是我又把电脑重启了,通常重启就能解决90%的问题,但这一次这个问题依然存在。为什么Epson针式打印机就能自动识别出我系统里自定义添加的两个纸张大小,但是惠普的这个1020却不行呢?在我印象之中以前是没有问题的。最终无可奈何之下,我只能在1020的打印机首选项里手动添加我自定义的纸张大小。经过一番折腾以后,我终于在我期待的纸张上打印出我想要的内容。平时这就只是一个秒杀的操作,闭眼就能完成,这一次耗费了我接近一个小时,而且遇到的事情都是很奇葩的,颠覆我之前认知的,为什么会这样呢?

唯一能解释的就是,下午我擦桌子的时候,我把打印机抱起来了。然后不知道为什么触碰到了一些东西,所以打印机就有点失常了。但是擦桌子的时候把打印机抱起来,这个操作经常发生,为什么平时就没有这个问题呢?打印机打印不了,通常我觉得是不是windows进行了某个更新,驱动不太合适的原因。经过一番USB线拔插以后,问题依旧。为什么我就没想到那个时候要重启一下打印机呢?大概因为我太信任这个1020了,可以这么说,除了不能自动双面打印以外,1020是一款非常经典非常耐用非常抗折腾的打印机,万万没想到居然会出这个乱子。

人的运气衰起来的时候,什么事情都会发生。

20250219

早起坐高铁到广州,这次终于没有习惯性的买到广州南了,出发前问了一下启旭,广州东离他们更近。到广州脑子里就是 Leon 启旭 酷,我和他们就是心的距离比较近吧。中午 Leon 安排了美食,儿子明年就要去卡内基梅隆了,自己还是保养的那么好,这次还特意带来了新朋友 James 给我们认识,从 James 朋友圈发的自己做的美食图片就可以看出,这也是个认真生活的 Boy 啊。

三点和酷入住文华东方,结果五点才给我发短信有空房了,我们 IHG 钻石大使哪受过这种气啊😄。之前来广州立的 flag,每次体验一家酒店。目前洲际、柏悦、瑰丽、文华东方对比下来,除了入住的不愉快,还是最喜欢文华东方。设计符合我的审美,简约典雅,很多细节都不错。

image.jpeg

等待的时候,果断去了臻音堂,这也是今天最愉快的经历之一。第一次来臻音堂,我根本挑不出心动的唱片,因为不懂。第二次来臻音堂,买到了大隅寿男的唱片《Watermalon Man》,因为当时不久前刚听过山本刚三重奏的现场。这次来臻音堂,两张最近超喜欢的天天循环的唱片就那么呈现在我眼前,Ben Webster 的《Soulville》和 Paul Desmond 的《TWO OF A MIND》,这是一种缘分吧。老板娘结账的时候特意过来和我说,《Soulville》这张超好听是她超喜欢的,我也立马给她看了谜底黑胶里我的音乐库,她表示我真懂!太开心了!最后收获四张!

image.jpeg

晚上是 Placify Team 开工聚餐,从 Team 的欢声笑语里就可以看到 Placify 的产品气质,它是一个带有好奇心的产品。两顿饭串起一天,又是我开心的一天。

image.png

吃完饭逛方所。记得 16 年的时候在成都逛过,方所的书籍选品真不错。我很喜欢 Stripe 公司的 Press 项目,网站设计出色,出版的图书也是经典。没想到今晚在方所买到了 Stripe Press 版本的《Poor Charlies' Almanack》,接下来就读一读英文原版。

image.jpeg

今日小插曲,买了人生第一张…麻将桌。

小车保险和年检

车险

保险公司年年换花样,我的第三者责任险从当年买车时的 100 万元,被一路忽悠到 300万元,今年据说是因为上一年台风大水淹了好多车导致保险上涨,还又“贴心”的为我绑定了两个什么“医保外用药”的保险,不买还不行,一气之下我自己支付宝随便买了个保险了事。

有时候会想,当年读书时,课堂案例分析,讲什么什么营销方案创新,能为公司带来多少利润什么的,感觉这管理学、市场营销学怎么牛逼。可当作为牛马被别人“营销”到越来越没得选择的时候,什么经济学、管理学、市场营销都她妈扯淡,不就是批了一层艳丽的外衣干无耻之事么。

车辆年检

车辆因为使用超过 10 年,所以按要求得落地年检,因为自己选了支付宝的保险,所以就不好意思找原来保险的代办年检了。

于是打开 12123 APP,自己预约了一下附近的一家年检站。

上一次人家代年检,记性不大好,印象中是交了 280 元,开走好像 40 多分钟就回来了。这还是我第一次自己去年检。

特意比预约时间 9 点早了一点点到地方,原来人家根本不按那时间,到了就开始,车多就排队,到大厅交了行驶证身份证缴费 330 元。

一番折腾后,车开出来快 10 点了,可走不了,说是车管所的网络接不上,年审的东西无法上传,最后一个项目没法做,要等一两个小时。

于是就在大厅傻等到 11 点多,因为前一个晚上看小说太迟,早上又起的早,头开始痛,问了里面办事人员,说下午肯定没问题,就准备先走了。

车被一番折腾,开起来的时候发动机和 ABS 故障灯亮起来了,问了技术人员,软绵绵的机械性的回答了一段话,大意就是开一下就好了。

一路开出年检店不久 ABS 故障灯熄灭了,但发动机故障灯一直亮着,直到下午去丈母娘家才熄灭。

送一家子人去了丈母娘家,一路堵车回来到年检的店,正好遇到一班人下班离开,一问,车管所的服务网站还是没连上,叫我周一来。。。。

早知道上午要个电话了。

周一中午吃完饭接到电话说赶紧过来做,网络好了,于是又大中午吭哧吭哧跑过去,一直搞到两点多才搞定,车管所 1 点 30分开始审核,等着审核的车辆多,还审一下停一下,估计是多家年检公司轮着来。

所以,代年检会遇上这种倒霉事么?

我在苏州逛园子之留园

苏州四大名园之一,留园。苏州四大园林分别代表着宋元明清四个朝代的艺术风格,留园则代表清代风格,占地面积23300平方米。留园以建筑艺术著称,厅堂华丽堂皇,庭院变化丰富,十分精致。留园坐落在苏州阊门外,第一代主人太仆徐泰时建后取名为东园,后清嘉庆时归观察刘恕改为刘园,同治年间盛旭人购买之后取谐音改为留园。留园多次荒废易主,1953年,苏州市人民政府决定修复留园,至今不断修缮整治。1997年列入《世界遗产名录》,为国家AAAAA级旅游景区。

我在苏州逛园子之留园-雅余
园区分区,图片来自网络

园子利用云墙和建筑群把园林划分为中、东、北、西四个不同的景区,其间由曲桥曲廊相连,连廊共长达700多米。西区以山景为主,中区以山水兼长,东区以建筑取胜,东区和中区是全园的精华。

我在苏州逛园子之留园-雅余
景观分布,图片来自网络
我在苏州逛园子之留园-雅余
留园正门

留园的入口十分低调,进去后却别有洞天。

我在苏州逛园子之留园-雅余
“吴下名园”牌匾及缀玉留园全景图。

门厅正中屏门是一幅缀玉留园全景图,由扬州工匠用2500枚各类玉石薄片相缀而成的。这是一九八六年时为纪念苏州古城建成2500周年所创作。科举考试的最后一个状元俞樾作《留园游记》称留园为吴下名园之冠。

我在苏州逛园子之留园-雅余

穿过正厅屏门后就可窥见盆景和假山群,园林景色逐步逐步的映入眼帘,内敛,从容,引人入胜。

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余
早晨的阳光
我在苏州逛园子之留园-雅余
明瑟楼外
我在苏州逛园子之留园-雅余
从明瑟楼看到的对面景色
我在苏州逛园子之留园-雅余
曲折的连廊

苏州园林有八大造景手法,借景、框景、隔景、漏景、障景、夹景、对景、添景,留园利用粉墙、游廊、篱落等划分空间,分隔景区,使得庭院内外,景色迥异,这种造景手法叫做隔景。

我在苏州逛园子之留园-雅余
连廊间的景观
我在苏州逛园子之留园-雅余
连廊内的书条石

目前留园里的书条石有三百七十多块,书条石内有王羲之、王献之、苏东坡、米芾等大量名家的字帖,是第二代园主刘恕给后人留下的巨大文化财富。

我在苏州逛园子之留园-雅余
明瑟楼

明瑟楼环境雅洁清新,有水木明瑟之感,故借以为名。

我在苏州逛园子之留园-雅余
假山与亭
我在苏州逛园子之留园-雅余
五峰仙馆

因盛康从文征明的停云馆中得峰石放在园内,故名“五峰仙馆”。五峰仙馆被称为“江南第一亭”,200平方米,梁柱及家具均以楠木制作,又叫楠木厅。馆内悬挂有苏州状元的楹联:“读书取正,读易取变,读骚取幽,读庄取达,读汉文取坚,最有味卷中岁月;与菊同野,与梅同疏,与莲同洁,与兰同芳,与海棠同韵,定自称花里神仙。”

我在苏州逛园子之留园-雅余

门口开门就是假山,假山是太湖石,代表开门见山。

我在苏州逛园子之留园-雅余
鹤所,文征明的书法真迹

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余
可亭

可亭位于留园中园假山上,六角飞檐攒尖顶,倒扣花瓶结顶。可,可如人意也,刘氏时称“个中亭”,盛氏称“可亭”。

我在苏州逛园子之留园-雅余
东园一角

留园东园一角原为园主盛家的大戏厅,是位于石林小院东南的庭院,原为盛氏戏台。

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余
冠云峰

冠云峰高6.5米,为宋代花石纲遗物。因石巅高耸,四展如冠,取名“冠云”。“瑞云”、“岫云”屏立左右。冠云峰充分体现了太湖石“ 瘦、漏、透、皱”的特点,名气很大。

我在苏州逛园子之留园-雅余
岫云峰

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余
又一村

陆游诗:“山重水复疑无路,柳暗花明又一村。” 别以为走完了,过了这个门洞,又是另一番景象,里面充满田园风光,很多造型精巧的盆景、花圃、桃林、紫藤架和假山。

我在苏州逛园子之留园-雅余
“又一村”门口的腊梅

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余
舒啸亭

舒啸亭为园形攒尖式。盛氏时此处为“月榭星台”,解放后重建,改名“舒啸”。陶潜在《归去来辞》写道:“登东皋以舒啸,临清流而赋诗”。

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余

我在苏州逛园子之留园-雅余

留园造园精致,也有人觉得有炫技的嫌疑,但确实是一步一景,处处都是非常雅致,还带有几分书卷气。

两次来留园都是2月份前后,希望有机会夏天或者秋天再来看看。

摄于2025年2月5日,By 徕卡 D-LUX8

后记:

建议游览苏州园林,尽可能早入园,最好一开园就入园,或预约最后一个时间段。尽早入园你还能享受片刻的幽静,舒心的游览,清晨的阳光还合适拍照。9点后旅游团到了,那就很糟心了。第一个时间段的游客没走,第二、三个时间段的游客就进来了,那场景真的可怖。去过的朋友会发现很多主要景观我没拍,因为没法拍,人头涌动,总有人冲进你的取景框,忍着拍出来的景观意境也垮了。

在苏州呆了几天,拍了不少照片,后期整理是个体力活。静待我慢慢把西园寺、虎丘、拙政园、狮子林和沧浪亭几个景点一一整理发出。

通过Service Worker‌ 缓存优化 Typecho 的首页访问加速

Service Worker‌ 是一种运行在浏览器背景的脚本,它可以在页面关闭后继续运行,主要用于处理网络请求、缓存资源、推送消息等功能。

认识

Service Worker 也是一个后台运行的脚本,充当一个代理服务器,拦截用户发出的网络请求,比如加载脚本和图片。Service Worker 可以修改用户的请求,或者直接向用户发出回应,不用联系服务器,这使得用户可以在离线情况下使用网络应用。它还可以在本地缓存资源文件,直接从缓存加载文件,因此可以加快访问速度。

条件

要使用 Service Worker‌ 确保网站支持 HTTPS 协议,这是必要条件。

注册

Typecho 使用的话,需要在主题的 header.php 或者 footer.php 里面添加如下代码,以完成 Service Worker 注册。

<script>
    if ('serviceWorker' in navigator) {
        navigator.serviceWorker.register('/serviceworker.js')
            .then(registration => {
                console.log('Service Worker 注册成功:', registration);
            })
            .catch(error => {
                console.log('Service Worker 注册失败:', error);
            });
    }
</script>

新建

在网站的根目录新建 serviceworker.jsoffline.html 两个独立文件,其中js为引入的必需文件,offline为非必需离线文件。

const CACHE_NAME = 'typecho-cache-v2';
const OFFLINE_URL = '/offline.html';

const urlsToCache = [
    '/',
    '/index.php',
    '/usr/themes/你的主题名字/css/style.min.css', /**css文件
    '/usr/themes/你的主题名字/js/script.min.js', /**js文件
    '/usr/uploads/ /**存储在服务器的图片或文件
    '/favicon.ico',
    OFFLINE_URL,
    'https://artalk.bosir.cn/dist/Artalk.js' /**第三方缓存文件
];

self.addEventListener('install', event => {
    event.waitUntil(
        caches.open(CACHE_NAME)
            .then(cache => cache.addAll(urlsToCache))
            .then(() => self.skipWaiting())
    );
});

self.addEventListener('activate', event => {
    event.waitUntil(
        caches.keys().then(cacheNames => {
            return Promise.all(
                cacheNames.map(name => {
                    if (name !== CACHE_NAME) {
                        return caches.delete(name);
                    }
                })
            );
        }).then(() => self.clients.claim())
    );
});

self.addEventListener('fetch', event => {
    if (event.request.method !== 'GET') return;

    event.respondWith(
        caches.match(event.request).then(response => {
            if (response) return response;

            return fetch(event.request).then(response => {
                if (!response || response.status !== 200 || response.type !== 'basic') {
                    return response;
                }
                const responseToCache = response.clone();
                caches.open(CACHE_NAME).then(cache => cache.put(event.request, responseToCache));
                return response;
            }).catch(() => {
                return caches.match(OFFLINE_URL);
            });
        })
    );
});

offline模式,即离线模式,f12 打开开发者工具后找到 online选项,点击后会出现offine 字样,点击打开离线模式,刷新页面会发现首页依然可以访问,而没有缓存的页面就显示下面的离线页面。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>水清无鱼</title>
</head>
<body>
    <h1>离线模式</h1>
</body>
</html>

缓存

为了防止在浏览器需要请求新版本的 serviceworker.js 文件时,而文件自身被缓存,所以需要给 serviceworker.js 文件单独指定缓存头 Cache-control: no-storeno-cache 。然后在 Nainx 的 server { 区域内添加:

# serviceworker.js 不设置缓存
location ~* /(.*)/serviceworker\.js {
    add_header Cache-Control no-cache;
    add_header Pragma no-cache;
    add_header Expires 0;
}

添加完毕后,重启Nginx服务器。

更新

在更新 Service Worker 时,需要修改 CACHE_NAME 的版本号以触发缓存更新

const CACHE_NAME = 'typecho-cache-v1';
或
const CACHE_NAME = 'typecho-cache-v2';

总结

整体来说,只要不涉及复杂的主题和js,Typecho 已经足够快,且拥有良好的打开速度。可如果你像我一样比较追求极致性能,喜欢折腾,也可以尝试一下。我的目标是把博客优化到和静态博客一样丝滑,目前缓存过后进入首页只需要100ms以内,en...

题外话

目前 typecho 已经出现了 1.3.0测试版本,没错,就是目前我现在使用的这个版本。不过我并不建议大家进行升级,毕竟BUG有点多。我目前是全站 0 插件,测试版本的兼容性有待考量。且如果php像我一样为最新版,出现的问题可能更多...

参考资料

1.// cloud.tencent.com/developer/article/2005909

2.// www.luolt.cn/archives/1848.html

3.// www.bookstack.cn/read/webapi-tutorial/docs-service-worker.md

童年的种子

过年期间的所谓「团年」,让我不得不重新思考「六亲缘浅」这件事情。我跟兄弟姐妹之间的关系也几乎是淡漠的,很有原因是小时候结下的「梁子」。

这些「梁子」都跟「借宿」有关。小时候寒暑假我被丢到过兄弟姐妹家过,我不想承认自己是他们的一份子,所以拒绝拿他们家里的钥匙、永远装做那个「老实听话」的好孩子。

于是这里牵扯出了两个关于我跟我表妹关系并不那么亲的历史原因。表妹家很有钱,我每次过去被收留的时候,会跟她和她的那些有钱人朋友一起玩。隐含的阶级条件,让我永远要做游戏里被霸凌的那一个角色,我至今都记得有一个妹妹的好闺蜜,拿着剑兰的叶子当标枪飞射扎在我的背上,我的惨叫声是投标分值的具象化。我回应得越厉害,就被霸凌得越惨。

另一件事,是妹妹在家练小提琴和钢琴的时候,总是被她妈揍,用衣架抽的那种。每次在她的哭嚎之中,我做作业的效率就会大大提高。我一直以为是我「也害怕」所以必须要装出听话。现在想想,那个时候的效率是因为「非常爽」。这么多年我一直不敢相信自己是这样的情感,直到有一天我突然想起了一件小事。我妹妹最初的那把小提琴,是我妈的,我一直不懂为什么那把小提琴是给了我妹妹去学,而不是我,他们甚至没有问过我想不想学。因为这个种子,我听到妹妹因为学乐器被揍我会暗爽,以至于长大后我明明是个很爱唱歌,天生有旋律和节奏感的人,也自我合理了我不爱音乐这件事。


最近一直在聊关于童年的事,是因为处理了好几个事情,都跟他们卡在了童年某一个节点相关。

虽然童年被借宿其他家庭的量级,远不及童年被抛弃,但他们的内核是一样的。在一个原本应该建立内在安全感的年纪,这种安全感被另一件被赋予意义的事情给覆盖——「懂事」。懂事的孩子, 几乎不允许对环境提出异议、更别说反抗。因为一旦不接受父母的安排,就会被认定「我们这么辛苦是为了谁」的历史罪名。

所以,几乎在我收集的案例里,那些童年被丢到不同家庭借宿的孩子,或多或少,都有中国人误以为是「好事」的早熟。然而,早熟带来的恶果,就是前额叶皮质的过早发育,会把孩子一步步推向抑郁症的深渊。

当然,这样的「种子」也并不意味着「坏事」。至于开出怎样花、结出怎样的果,会在人生的某一天突然惊醒那些活在童年的人——它终有一天是无法怪罪给原生家庭这个最终解释权。

毕竟活着是自己的事。

❌