关于 Third Shire | 第三夏尔

主要是写自己在加拿大的生活日常,辅以一些安利分享和少量技术文。

RSS 地址: https://thirdshire.com/index.xml

请复制 RSS 到你的阅读器,或快速订阅到 :

Third Shire | 第三夏尔 RSS 预览

柳宿增十|2024年8月小结

2024-08-27 10:29:55

Featured image of post 柳宿增十|2024年8月小结

记录时间:7.21 – 8.25
太阳经过星座:巨蟹座 Cancer
最亮恒星:柳宿增十 Al Tarf

本月事件

博客更新

买了什么/新的尝试

读/听/玩了什么

初学者的冥想入门 101

2024-07-24 22:11:01

Featured image of post 初学者的冥想入门 101

我以前对冥想的印象是玄而又玄 甚至觉得是 bullshit,以至于今年初听到家庭医生建议我练习冥想来对抗焦虑 时感到十分困惑。正式学习之后才发现我对冥想有许多很典型的误区,到现在练习冥想已近半年了,写本文的初衷,就是想向跟我一样有类似疑问的人分享对冥想的认识和感受。

冥想 —— 科学还是玄学?

冥想由于其浓厚的东方宗教背景,在现代也常常跟灵修一同出现,导致许多人对冥想的印象是种玄学。但是,请重复三遍:冥想是科学、科学、科学!已经有不少研究证明冥想能改变认知功能甚至大脑的物理结构1,例如增加海马体灰质层密度2(负责记忆和调节情绪的部分)。随着近年对心理健康的重视,也有越来越多的研究表明冥想对降低压力、焦虑和抑郁的作用3

冥想是一种针对大脑的训练活动,就像健身一样,大脑是能够锻炼的。我们能通过健身对身体进行减脂增肌,也能通过冥想来提高心理的健康,包括增加专注、缓解压力、加强自我洞察力、控制和调节情绪,改善睡眠等4 5。总之,冥想的好处多多,每个人都可以练习,并不像传说中那么玄。

对冥想的几大常见误区

冥想的目的是清空大脑?

这是对冥想最常见的一个误解。冥想的目的并不是清空大脑、什么也不想。在冥想过程中,分心是极其正常的一件事,关键是要注意思维当前的状态,这个目的叫作觉知 Awareness(具体见下文 )。我曾经也认为“我总是停不下思考,所以冥想没用”,但恰恰是我这种想太多的 overthinker 才更要注重冥想练习, 训练让自己觉察到这种“想太多”的状态。

冥想 = 打坐?

打坐/坐禅是冥想的一种形式,但冥想不只包含静坐,它可以融入我们生活中的每一部分,又称正念(Mindfulness),可以理解为一种非正式的冥想。所有的日常活动,如吃饭、走路、洗手的时候都可以进行正念冥想,专注于每一个瞬间,感受活在当下(Be present)。如果由于各种原因无法静坐,可以考虑用这种冥想形式。

练过冥想但没效果?

冥想是一种技能,而技能必定是能够通过练习提高的。上面已经提到,冥想和健身类似,只是它训练的是我们的大脑。既然是训练就需要一段时间的投入才会有效果,你也不会指望只举三四天哑铃就能够增肌吧。冥想的效果也并不是线性的,要体会到冥想产生的变化,需要耐心和练习。记录自己的感受,会更容易发现这种变化。就我个人而言,练习了两周左右才突然察觉到比较明显的改变。

初学者练习指南

引导式冥想 vs 无引导冥想

姿势并不重要

除了某些特定的冥想类别,一般推荐坐姿冥想。任何能保持脊椎挺直的姿势都可以,如正常坐在椅子或盘坐在垫子上,以自然舒适、但又不至于放松到睡着为准。

在影视剧里,冥想者总是以莲花坐的形式出现。但大部分人的身体灵活度并不能轻易做到,莲花坐姿也完全没有必要,强行这么坐反而会造成干扰和疼痛。

当冥想时心神游离

在冥想过程中,思维游离和走神是相当正常的。再次重复,冥想的目的并非是不思考,我们要做的是对当下的觉知(Awareness),不需要去干扰,感受当下本身就是目的。

我最初体会到冥想的进步,就是每当思想游离时我有能力识别出来,放下这种想法并把注意力重新放在原来的焦点上。这些想法在我脑内的视觉就像是一个个气泡,我能看到它们浮现出来,但不会被它们带着走。反映到日常生活中,就是在思绪乱飞时不至于扯太远,能够及时发现并停止负面想法和 overthinking。这个过程是自然发生的,不需要对自己说“停止这种想法”,毕竟人很难用意志力让头脑平静,越是告诉自己不要去想、越是会适得其反。而觉知是一种接近潜意识和无意识的能力,一旦出现,思想会自动变弱乃至抽离。这是一种技能,最开始也许会很难达到,但通过不断地练习,便能提高觉知出现的频率

冥想的不同类型

冥想的形式有很多种,以下只是一些常见的大致类型。每个人的情况和偏好都不同,不需要硬磕某一种,不喜欢的话完全可以尝试别的。

免费的冥想 App 推荐

目前市面上的冥想 App 非常多,内容大同小异,只是指导风格不同,如语言是简略还是详细、是否含理论科普、有无背景音等。以下 app 都是我用过至少一周以上或完成了入门课程的,需要英语基础。由于是免费 App 推荐,所以没有包含市面上最流行的那几个付费冥想 App。

冥想书籍

我自己也还是初学者,看过的冥想书籍并不多,这里只推荐三本。

  1. Mindfulness in Plain English, by Bhante Henepola Gunaratana:非常推荐,冥想入门级读物,语言深入浅出。前几章是一些理论科普,从第五章开始讲解实际操作和会遇到的困难。

  2. Practical meditation for beginners, by Benjamin Decker:为期 10 天的冥想训练指南,每天练习一种特定的冥想类别。本书定位偏向实操手册,理论不多,适合给新手快速了解和尝试不同类型的冥想。

  3. The Mind Illuminated, by John Yates6:适合已有冥想经验,想要进阶或系统地了解冥想训练的人。书中讲解了冥想的最终目标,并将冥想分为十个阶段,可说是提供了一个冥想 roadmap,也能作为参考书来帮助练习者甄别目前的冥想进度。

    冥想起源于宗教,到一定阶段必然涉及一些佛教概念,这本书也是如此,但这不代表就要信教或者研究佛学了。使用宗教用语只是因为在现代词汇里没有对应的词,是一种描述方式。

新手常见问题

注:这些问题在《Mindfulness in Plain English》里都有提到,作者说得比我好,再次推荐阅读。

最后,祝各位在这个喧扰的世界上,能够找到当下的那一份平静。

Photo by César Couto on Unsplash


  1. Yang, C.-C., Barrós-Loscertales, A., Li, M., Pinazo, D., Borchardt, V., Ávila, C., & Walter, M. (2019). Alterations in Brain Structure and Amplitude of Low-frequency after 8 weeks of Mindfulness Meditation Training in Meditation-Naïve Subjects. Scientific Reports, 9(1), 1–10. https://doi.org/10.1038/s41598-019-47470-4  ↩︎

  2. Hölzel, B. K., Carmody, J., Vangel, M., Congleton, C., Yerramsetti, S. M., Gard, T., & Lazar, S. W. (2011). Mindfulness practice leads to increases in regional brain gray matter density. Psychiatry Research: Neuroimaging, 191(1), 36–43. https://doi.org/10.1016/j.pscychresns.2010.08.006  ↩︎

  3. American Psychological Association. (2019, October 30). Mindfulness meditation: A research-proven way to reduce stress. American Psychological Association. https://www.apa.org/topics/mindfulness/meditation  ↩︎

  4. National Center for Complementary and Integrative Health. (2022, June). Meditation and Mindfulness: What You Need To Know. NCCIH. https://www.nccih.nih.gov/health/meditation-and-mindfulness-what-you-need-to-know  ↩︎

  5. Editor’s choice: the effects of meditation and mindfulness. (2021, December 7). Nature. https://www.nature.com/collections/ibhachifaj  ↩︎

  6. 有象友补充 到作者 John Yates 被指控 sexual misconduct (婚内出轨和合意性交易),是否要继续阅读还请自行判断。 ↩︎

北河三|2024年7月小结

2024-07-21 11:29:45

Featured image of post 北河三|2024年7月小结

记录时间: 6.20 – 7.20
太阳经过星座:双子座|Gemini
最亮恒星:北河三|Pollux

本月事件

博客更新

买了什么/新的尝试

读/听/玩了什么

五天四夜,坐观光火车横跨加拿大之旅

2024-07-14 08:20:10

Featured image of post 五天四夜,坐观光火车横跨加拿大之旅

VIA 观光列车系列

VIA Rail 是加拿大的国有铁路公司,除了普通的载客服务外,还有个 Explore Canada by Train 的观光火车系列,总共有七条路线,其中 The Canadian 是这个观光系列里最长的一条线路,从加东的多伦多到西部的温哥华,全长共 4,466 公里,几乎横跨整个加拿大。

我一直都很想坐这种观光火车,正好入籍之后发现新公民/ PR 买 VIA 火车票有半价优惠,于是和 Kei 买了双人卧铺票,一共五天四晚。尝试之后觉得是一种非常不错的旅行方式,值得推荐。官网还是有很多不够明确的地方,下面会详细介绍一下观光火车的细节、我的个人体验、以及总结经验。

不想被剧透(?)太多的话可以只看前面,跳过中间的游记看一下最后的总结和小 tips

行程准备

官方介绍

出发地

除了始发站的多伦多/温哥华,也可以选择在途中的停靠站上下车,价格也会相应便宜一些:

需要注意的是,如果是在停靠站上车,很有可能遇到列车延误的情况,几乎都在一小时以上,有可能会等得比较辛苦。出于同样的原因,也请谨慎安排下车后的行程,预留出至少半天的时间以防列车晚点。

线路

The Canadian

其中红色的就是 The Canadian 的路线,从多伦多/温哥华始发,横跨整片大陆。除了以上提及的停靠站外,在一些小镇、城市也会稍作停留,补给物资。

舱位分级

The Canadian 的舱位分为三个主要类别:Economy Class(经济舱)、Sleeper Plus Class(卧铺舱)和 Prestige Class(头等舱)。由于三个类别附带的服务不同,火车车厢也是由舱位来分界的,列车前方的是经济舱车厢,10 号车厢之后则是卧铺车厢,靠车尾的最后几节则是头等舱车厢。我买的是卧铺票,所以相关信息会详细一些。

Economy Class(经济舱)

坐票,没有提供卧铺床位,餐食需要自带或购买火车上的食品。

Sleeper Plus Class(卧铺舱)

和国内火车卧铺最大的区别就是设计了收纳机关,白天夜晚会分别配置为座椅和床的形态,所以不存在火车下铺共享的问题。卧铺里面又细分为下面好几种:

每节 Sleeper car 车厢大约包含 3 个 Berth( 6 人),6 个 Cabin for two 和 4 个 Cabin for one。卧铺舱都有提供餐车服务以及基础洗浴用品;另外所有卧铺都需要共用本车厢内的一个淋浴间。

Prestige Class(头等舱)

装修比较豪华,有独立卫生间和淋浴设施,迷你冰箱,还提供酒吧和其他 VIP 服务。

价格参考和订票

官网价格

多伦多 - 温哥华站,夏季价格(2024.5.1-2024.10.31)
Economy $514 起/人
Sleeper Plus - Upper berth $1442 起/人
Sleeper Plus - Cabin for two $2620 起/人
Prestige - Cabin for two $6762 起/人

11 月以后是淡季,订票会稍便宜一些,但由于日照短所以能看风景的时长也大大减少。火车班次每周两趟,卧铺夏季的票卖得很快,我提前五个月订的票,Cabin for two 大约每个月只剩两趟可选。

如果跟我一样是新入籍的公民,下载 Canoo 这个 app,注册登录之后找到 VIA 的 offer,就能根据提示拿到半价的折扣码了,限在一年内使用。需要注意的是,折扣码不要在最开始选择目的地的 Discount code 那里输入,而是要到确认订单 Review & Pay 页面的 Travel voucher 里输(开始还以为遇到了技术问题,打电话问了之后才弄清楚)。

半价折扣后,我和 Kei 两人一共税后 $3320。

更新:感谢象友补充 说明 PR 新移民也是可以享受半价优惠的!过去五年内登陆的 PR 都能注册 Canoo,具体请参见 VIA 优惠说明 Canoo 注册资格介绍

Day 1:离开网络、初探列车

The Canadian 从多伦多的发车时间是早上 9:55 分,行李限额和坐飞机类似,每人可带一个随身包和登机箱,在这之外的行李需要托运。我们行李不多,提前近一小时到了 Union 车站。卧铺舱可以使用车站 lounge 贵宾室,喝了咖啡和茶之后休息了一会,就开始登车了。登车前乘务员会询问吃午餐和晚餐的时间,有两个时间组合可以选择,我选了吃饭时间较早的那个。

Cabin for two 在白天刚登车的时候是两个单人沙发椅的配置。靠自己是不能把床放下来的,只有乘务员才知道机关。

Cabin-two-day Credit: Canadarail.ca

舱位里有张登车须知和路线图,还有一个双面的告示牌,一面写着“请勿打扰”,另一面是“请整理房间”。洗浴用品都很完备,有毛巾、浴巾、一次性杯子、面巾纸、香皂、洗发水和身体乳,头顶有行李架放随身行李。洗手池除了水龙头外还有一个饮水龙头,边上有两个插座。

观光列车的特色就是 Skyline car 车厢,第二层又称 Dome car。大概每四个 Sleeper car 共享一节 Skyline car(经济舱和头等舱不太清楚)。这节车厢的下层是公共活动室,上层则是一个全景车窗,能看到周围几乎 360°的风景。

Skyline car Credit: National Post

我所在的卧铺车厢往后走三节就是 Skyline car 车厢了,一层的活动室有 24/7 的小零食和咖啡茶水自取,边上的白板是乘务员写的当日活动。我到活动室时刚好赶上第一个活动 Bon voyage(旅途顺利),乘务员在分发免费香槟。第一次尝试香槟的味道,还挺奇特的。

活动室白板上的当日活动,英法双语

午饭时间去了后面的餐车,这里是四人一桌,所以会跟陌生人随机分配到一桌吃饭,这点对于社恐不太友好。餐车是标准的西式餐厅配置,有专门的乘务员负责当服务生,主菜有 3-4 种选择,菜式算是典型北美 fine dining 口味。一边看风景一边吃饭,可以说是豪华的移动全景餐厅了。

dining

吃完饭去了 Skyline car 上层的 Dome car,这里比较热闹,吃饭前后的空位会多一些。全景天窗风景很漂亮,火车转弯的时候还能看到列车头。第一天出城之后就是零零星星的 cottage、小镇和高速公路。我向正在等待铁路红绿灯的司机挥手,对方也对我招手了,好开心。在晚饭时间经过一个小镇,路边房子里的一家人都在窗边朝火车挥手。火车来回一周四次,想必每逢火车经过的时间他们都会到窗边看火车吧~想想就觉得特别美好。

火车开了几小时后就几乎完全没有信号了,连 SOS 都没有。列车上是没有 Wi-Fi 的,所以我早就预备了毛线过来织,没想到在 Dome car 里遇到了野生的 knitter,看到她也在织袜子就马上过去攀谈。knitter 之间刚见面就跟老朋友一样,互相分享自己正在织的毛线。

十分疑惑的是坐火车的年龄层明显偏大,好多老爷爷老奶奶,就算不是白头发的也都是快退休的。像我和 Kei 这样的年轻人组合很少,被好几个人问是不是在过蜜月旅行了,大家都好八卦 😂

我在晚饭前就挂了整理房间的牌子,吃完饭发现乘务员已经把房间配成上下铺的样子了(注:下图没有包括梯子)。上铺的层高跟下铺差不多,头顶很宽敞。床头有收纳袋和小灯,但没有额外插座。

cabin-for-two-beds Credit: Canadarail.ca

Day 2:星罗棋布的平原湖泊

Northern Ontario to Winnipeg

今天依旧还在安省西边。很早就起了床去看火车上的日出,顺便去了后部最豪华的 Prestige 车厢逛,确实装修很豪华,但零食饮料也没什么区别。车尾最后一节车厢还是很不错的,又称为 Prestige Park car,和 Skyline car 差不多,但有车尾的独特风景。在旺季大部分时间给头等舱预留使用,其他卧铺舱客人只能在早晚的特定时间进入,淡季则没有限制。

清晨的最后一节车厢外的风景

从第二天起多了早餐,从 6:30 开始供应到 8 点结束。吃完早餐后我去公共淋浴间洗澡,淋浴体验意外地舒适!虽然水龙头有时间限制,大约按一次出水一两分钟,但热水很热也水量充足,雾气氤氲,太晃的话可以扶住边上的扶手,火车一边移动一边洗澡的感觉很奇妙!而且里面还蛮干净的,浴巾用完就直接放在淋浴间的回收箱里,很方便。火车配备的旅行装香皂和洗发水都是 local business 和 indigenous owned,这点我觉得很好,质量也不错,洗完头发不会很干,很柔顺。列车上没有配备吹风机,还好我向乘务员借到了。

回房间时发现变成了官网上没有提到的第三个版型,是将上铺收起,只留下铺床位,布置得像个沙发一样。我很喜欢这个设计,白天有个地方躺着蛮舒服的,还可以打个盹。

晚上乘务员通知大家在睡前调到中部时区,时钟往回拨一小时。之后的两天也是类似,每晚睡觉前将时区分别调整为山地时区和太平洋时区。

白天的景色还是荒无人烟的森林跟湖景,一到安省和 Manitoba 的交界线,突然空旷了起来。此时外面在下暴雨、还有闪电,由于天气原因列车也停下了。在空旷的、雷雨交加的平原上睡觉,想起《秒速五厘米》里贵树乘坐的列车晚点的情景,从外面看现在的火车大概也是如此吧。

Day 3:一望无际的草原省风光

Winnipeg to Edmonton

一早起来,外面的景色完全变了,是一望无际的大平原,树木和湖几乎都没有了,但有很多小池塘,完全是一派草原省牧场风光,时不时能看到成群放养的牛羊。在平原上火车的行进速度比之前快多了,之前遇到货运火车时经常要停下等对面先走,今天即使相对而行的时候都没有停车。

在 Winnipeg 的时候乘务员换了一批,这次上车的乘务员都是 Winnipeg 人。跟他们聊天时得知乘务员的工作基本都是上几休几,若是在非驻地城市停车,公司会安排在酒店休息。另外,乘客须知里有提到乘务员的小费不是必需的,但在餐车吃饭时发现有不少人(尤其外国游客)会给现金小费。遇到一对从德国来的老奶奶姐妹在第一天吃饭时还给了小费,后来可能是看到其他人也没付小费就没有再给了。

从今天开始,乘务员也宣布了第三个可选的饭点,时间稍晚些,可供那些希望单独用餐、不想合桌吃饭的旅客选择。

根据时间表,应该傍晚到达 Edmonton,但实际到达时已经第二天凌晨了。我没有拉窗,在睡梦中被车站的灯光和无线电通信弄醒。今晚火车开得蛮快的,颠簸比较厉害,有点没睡好。

prairies

Day 4:穿越落基山脉和 Jasper 国家公园

Jasper to Vancouver

上午 8 点到达 Jasper 小镇,比预定时间晚两个小时。这次停靠时间比较长,有一个小时,就去小镇四处逛了逛,还是那么漂亮,可惜太早了,大部分小店还没开门,但还是买了点小玩意。

在 Jasper 上车的人比较多,原因显而易见 —— 从小镇到 Vancouver 这段的风景太漂亮了,落基山脉群山绵延,天气虽然多云,但中途出了太阳能看到蓝天,十分美丽。我整个下午几乎都待在全景车厢里,火车开得很慢,给乘客充足的时间欣赏美景、拍照,热情的乘务员也给大家同步解说,提醒即将经过的景点。这一段也有不少野生动物,列车前方的乘务员还通过无线电提醒列车右方有 Moose 经过,很有意思。

scene

Day 5:到达温哥华站,回归城市

睡了一觉起来,早上 5 点发现已经在温哥华车站了!乘务员广播说 8 点下车,早餐照旧供应。这是最后一次跟同车乘客合桌吃饭,算到现在,聊过天的有:不咋说话的小镇父女组、德国老奶奶姐妹、好像不是很熟的白发老爷奶 couple,健谈的印度裔临退休 couple,想找 IT 工作的大哥、养了两条猎犬半退休的美国老哥、十分八卦中国政治的临退休越南裔 couple、弹吉他的音乐家火车常客和他的摄影师搭档、在 NJ 定居的加拿大老哥、织毛线的美国中产 couple。

列车上用合桌吃饭这种方式,初衷也是鼓励大家互相了解萍水相逢的同车旅伴。在这个人人埋头看手机的年代,偶尔回归这种老式交友,也不错呢。

总结推荐和小 tips

关于舱位订票

虽然上车前觉得价格怎么比飞机还贵,但其实观光火车附加的还有酒店和景观餐厅的价值,算下来其实价格不算贵,折扣买下来的话更是划算。而且卧铺坐火车的体验比飞机实在好太多了,各项服务吊打飞机头等舱。

关于装备

关于车上的社交和活动

毕宿五|2024年6月小结

2024-06-22 04:16:54

Featured image of post 毕宿五|2024年6月小结

记录时间:5.14 – 6.19
太阳经过星座:金牛座|Taurus
最亮恒星:毕宿五|Aldebaran “The Follower”

本月事件

博客更新

买了什么/新的尝试

读/听/玩了什么

克服启动困难和拖延症的 N 种尝试

2024-06-10 13:02:56

Featured image of post 克服启动困难和拖延症的 N 种尝试

最近几年焦虑症比较严重,导致执行力断崖式下跌,状态最差时甚至一周都无法正常工作。今年开始看心理医生有了些好转,在心理咨询之外,我也做了很多尝试来克服启动困难和拖延症的问题,下面是我总结的一些对我比较有用的办法。

不要让大脑觉得在正经工作

工作的时候放娱乐视频是我发现的第一个哄骗大脑工作的办法。原理是不要让大脑觉得是在正经工作,而是在玩的间隙随便做点事。视频的类型可以根据工作难度调整,对于轻量的工作我会放 RPG 游戏实况,如果是动脑更多的工作则放一些已经看过的番剧,即使一时错过了剧情也不会有负担。

任务细分到傻子也能做的程度

任务细分也是老生常谈了,道理大家都知道,甚至还有诸如 Goblin.tools 这样 AI 自动分解任务的网站。它不起作用的唯一原因是:任务分得不够细

例如我输入“写流程文档”,Goblin.tools 会生成诸如“收集信息”、“编写大纲”等子任务。但是,这对我来说是远远不够的,像是“编写大纲”这种任务,即使我要它进一步分解,出来的也只是“想出要点”、“决定要写哪几点内容”这样的描述,依旧达不到上手就能做的程度。5 分钟学习法其实也存在类似问题:如果一个任务让人无从下手,本能的畏难情绪会让人连一分钟也做不了。

对于我这样的启动困难人士来说,能起到作用的任务细分大约是这样的:

写流程文档

  • 打开 Word 软件
  • 打开以前的流程文档
  • 另存为一个新的文件名
  • 定位需要修改流程的段落
  • 删除过期的信息
  • 高亮需要更新的地方
  • 思考并列出需要增加的新内容
  • ……

第一个任务是“打开 Word 软件”,够简单了吧?最开始的部分必须是最容易的,要容易到不动脑子也能做的程度。到后面可以稍微上点难度,但并不需要把全程的内容都列出来,列 10 个以内就差不多了,我一般做到第 5、6 点基本能够进入状态,这时就不需要严格遵循清单了。

给不喜欢番茄钟的你:三分之一休息法

三分之一休息法(Third Time)算是一个番茄钟的变种,在这篇文章 Third time: a better way to work 有非常详细的介绍。简单来说,就是将休息时间限制为工作时间的三分之一,你的休息时间需要靠工作来“挣”。例如我工作了 10 分钟,那我就挣得了 3.3 分钟的休息时间,可以开启一个 3分钟的休息倒数。倒数完之后再继续工作,以此类推。工作越久、休息时间越长。如果想提前结束休息时间,那么还没用完的休息可以累计到下一个休息间隙使用。

相比传统番茄钟,三分之一休息法的好处是启动简单,休息和工作时间灵活、也能适应“心流”状态。比较图如下:

三分之一法和番茄钟的对比

这个方法可以帮助我循序渐进,从而解决那些特别不想做的任务。最开始我可能只能做个三分钟,没关系,我还是挣到了一分钟的休息时间。等一分钟倒计时完成之后,我再继续。通常来回几个短回合后,工作时间就会一点点变长,不知不觉就能持续工作三十分钟甚至更久了。

三分之一休息法的相关工具

这个方法是不太可能手算计时的,非常依赖电子工具,好在已经有开发者做了 web app,比如这个网页版三分之一计时器 。除此之外,我目前使用的 Focumon 这个在线自习室也是默认使用三分之一休息法。它的特点是借助 Pokemon 的概念游戏化,将专注时间转化成 Focumon 的经验,每天还可能抽到各个属性的 Focumon,我觉得比较有趣。欢迎加入我的房间 或者fo我 一起自习!

游戏化语言让任务变得有趣

刚才说的 Focumon 提到了游戏化(Gamification),这也是早几年开始流行的一个方法,最成功的就是 Habitica ,通过完成 todo 来获得各种奖励升级。但我想说的并不是这类工具,而是针对任务描述本身进行改写,将看起来令人畏惧的语言改成更有趣的说法,比如:

游戏化的每日习惯

“记录 3 个冒险见闻”其实是“写每日三件好事”;“ 1 小时赛博结界”是“限制社媒 app 在一小时内”,而“每日药剂”里的药水则是一些补充剂和抗焦虑药。(截图是 Habicat ,目前仅有 iOS 版)

这个方法对我养成习惯特别有用。我属于看到没做的事项就会焦虑的类型,每日习惯即使再简单,我看到任务时还是会有心理负担,但 RPG 的描述方式加上 app 本身的设计,不仅不会让我有厌恶或焦虑心理,反而让我有一种在做游戏任务的感觉、更有动力去完成了。

游戏化的语言还可以根据自己的喜好进行定制。我上面写的偏向西式奇幻和D&D,也完全可以写成武侠、修仙、穿越、宫斗、科幻等等主题,只有想不到没有做不到!不过,因为想任务名比较费脑,所以会更适合日常重复性高的任务(但愿意的话也完全可以把所有事项都写成这样子~)。

工作也是一种角色扮演

有代入感的背景BGM

学习/工作用 BGM 流行很久了,但对我的作用也就那样。后来发现不是所有的学习用 BGM 都行,还是需要匹配自己当下的喜好,增强代入感。比如我前一阵玩《女神异闻录》的时候就喜欢在工作时放游戏里的 BGM,想象自己是里面的主角正在为了考试学习。听说有人偏好《星露谷》的 BGM,感觉也会很不错。

环境空间

很多效率类文章都会提到诸如整理书桌、打造专用空间等方法,对我来说似乎作用有限:整理这个动作能让我面对书桌时不那么心烦,但它并不能像魔法一样让我启动。属于锦上添花,不能雪中送炭。

适合自己的就是最好的

有一阵特别热衷(沉迷)效率工具,虽然踩了不少坑,但也从中发现了自己的雷点和痛点。比如我如果打开 app 第一眼就看到全部任务会压力暴增,看到未做任务越多次就压力越大、也痛恨催命符式的弹出提醒等等。从本文能看出许多小贴士都是围绕“角色扮演”这个主题,这也是对我管用的效率方法的核心。具体的 app 和工具并没那么重要,总结出自己的喜好和雷点之后,自然就能依据这些已有经验逐步改进自己的工作方法,也能更快发现某个工具是不是适合自己。

Photo by Manja Vitolic on Unsplash

娄宿三|2024年5月小结

2024-05-15 09:52:37

Featured image of post 娄宿三|2024年5月小结

记录时间:4.19 – 5.13
太阳经过星座:白羊座|Aries
最亮恒星:娄宿三|Hamal

本月事件

买了什么/新的尝试

读/听/玩了什么

Credit: Photo by Vincent Guth on Unsplash

右更二|2024年4月小结

2024-04-19 09:03:39

Featured image of post 右更二|2024年4月小结

记录时间:3.12 – 4.18
太阳经过星座:双鱼座 | Pisces
最亮恒星:右更二|Alpherg

本月事件

博客更新

买了什么/新的尝试

读/听/玩了什么

一次猫咪生病进宠物急诊的记录和相关经验 tips

2024-03-25 22:20:45

Featured image of post 一次猫咪生病进宠物急诊的记录和相关经验 tips

检查治疗:猫咪突然生病

麻豆病得很突然。周一晚上呕吐了两次,里面带有毛球,对猫来说也很正常,就没太在意。但夜晚又开始拉稀,上了好几次猫厕所。到第二天看他精神萎靡,就给 vet 打电话安排了当天的预约。

Vet 询问有没有乱吃东西,但我们并未观察到类似情况。进行身体检查后,说是腹泻导致了脱水,需要注射营养液补充。但腹泻的原因还不清楚,需要继续做血检和 X 光。麻豆以前有过两次膀胱问题,我本来想先做 X 光看看膀胱状态,但 vet 建议先做血检,能全面了解内部情况。当下先抽了血,麻豆平时又胆小又凶,会哈气但没攻击过人,好在这次算配合。

血检结果出来,除了脱水导致其几项指标偏高之外,vet 告诉我另一项和肾有关的指标也超过了正常值。我听到 kidney 这个词时心里一沉:我在国内时家里养的猫大多带着肾脏问题去世,我也知道年老的猫咪很多会有肾的问题,但没想到这么快。由于血检查出了异常,就没有拍 X 光,但需要回家收集尿液样本送去做尿检。

抽完血就给麻豆注射了营养液。我和 Kei 加上助手三个人一起抱住麻豆不让他乱动,vet 负责打针。我对打针完全无感,但看到麻豆被针扎特别特别心疼。平时看上去很大的猫,突然变得小小一只,可怜巴巴的。完事之后,Vet 开了治疗腹泻和呕吐的药,让回家喂了吃。

在家治疗的艰辛尝试

输液之后回家,麻豆的精神好了一些。当天晚上我收集了尿液样本准备第二天送交做尿检。通常 vet 会提供一种特殊猫砂(non-absorbent litter),这种猫砂不吸水且可以重复使用,待猫咪上完厕所,就能用注射器将尿液收集到尿检瓶里了。只是这种猫砂很小一瓶,我家又是多猫家庭,觉得这种方式并不方便,于是我又接下了给麻豆把尿的活,也就是……字面意义的用小碗接尿。这当然不是什么愉悦的体验,但只要是为了猫咪,我做起来倒也毫无心理障碍。

但喂药却没有想象中顺利。这次开了三种药,药片和口服悬液都有。药片捣碎在湿粮里顺利蒙混过关了,但口服液混合后猫不吃,只能通过注射器直接喂。这也不是第一次用注射器,当时的药兴许是口味特别调整过,麻豆很喜欢吃。但这次他的反应特别大,我塞了一点之后猫直接跳走,到处蹦来蹦去,还不断甩头、试图甩掉口里的液体。我从来没见他这样过,一下子两个人都慌了,也不敢再继续尝试,担心应激导致病情加重(注:复盘时觉得这其实是很正常的现象,详见下文经验教训和小 tips )。

后来又陆续做了别的尝试,试图将口服液混合在麻豆爱吃的猫条零食里,奈何猫咪味觉实在太厉害,发现不对后连零食也不肯碰了。不仅如此,连带着对平时吃的湿粮也态度变了,要闻好久才愿意吃。总之,治腹泻的药是一口没动。喂药失败后我还尝试了一些针对猫咪腹泻的常用食疗,比如南瓜泥、清鸡汤煮白米饭、FortiFlora 益生菌等,但都因为猫咪不愿吃东西而失败了。可想而知,拉稀的症状依旧不见好,食欲和精神在逐渐下降。由于吃东西越来越少,混在食物里的治呕吐药也几乎没吃下去。

在这期间也跟 vet 说了情况,我坚持说不能强喂,并询问有无其他的喂药方式。在我的坚持下 vet 后来设法拿到了片剂,但这个时候猫的食欲已经变得很差,药片混合食物的计划也黄了。

急转直下:决定去急诊的心理斗争

到了第四天,麻豆从中午就不吃不喝,晚上又吐了几次,腹泻也没有任何好转。尿检结果出来,vet 通知说在尿液里检查出了蛋白质,我问这代表什么,他说可能是肾功能出了问题,需要对尿液样本做进一步检查,我同意了。

【警告:以下含死亡描写】挂掉电话,我的心沉到了谷底。以前在国内时家里的猫去世,好像就跟肾脏有关,病程非常快。很久以前的记忆又重新出现,我心神不宁,脑中老是浮现那只猫咪在我眼前咽气的样子。大脑已经删掉了图像记忆,但我记得当时发生了什么。那一瞬间我看到它的瞳孔一下子放大,原本应是非常可爱的、大大的黑色瞳孔,没有一丝反射的光芒,我只从中感到了无尽的恐惧。这时我才了解,生命的光亮原来就是字面上的意思。我还看到它的身下出现了尿液的痕迹,就像我听说的那样,人和其他动物在死后会由于括约肌松弛导致失禁。我那时呆呆地想,这就是死啊。【结束】

让我真正担心的是猫的精神。以我不多不少的养猫经验,只要猫还能吃饭且精神尚可,那问题就不算太大。但麻豆的精神看上去特别萎靡,老是躲在纸箱里,偶尔出来就是去猫砂盆。我第一次看到他这么病恹恹的样子,焦虑得不行,再加上以前的经历让我有些心理创伤,非常害怕,脑子里一直在循环可能出现的最坏的结果,一度精神崩溃到大哭。我和 Kei 情绪都很低落,家里气压很低,我们不知道怎么安慰对方,只能无言地抱着流泪。

快到睡觉时间,麻豆依旧不见好。Kei 已经做好了熬夜看护猫的准备,我此时开始犹豫要不要送急诊(emergency vet/ER vet),还是等明天家庭 vet 开门去那里检查输液。因为麻豆胆小,我们担心去趟急诊太折腾猫,反而让情况更糟糕了,更不放心让猫住院。搜了一圈信息,又咨询了一下身边有经验的朋友,最后还是决定:现在就去急诊。

下决定之后我反而异常地冷静,仿佛暂时把恐惧的情感开关关闭了,能够完全用理智处理当下情况。Kei 有些惊慌发作,搜急诊地址时被下面的差评吓到了,不断怀疑说不知道这是不是正确的选择。我安慰他,现在只要做我们能做的事情就好了。安抚完之后,我们又最后做了一次尝试,用注射器喂流食,但麻豆还是不愿意吃东西。稍微整理了下情绪,收拾好东西准备去医院。

在急诊

漫长的等待和不安

我选了家庭 vet 推荐的那家急诊,去之前打了电话,前台告诉我现在人不多,等初步问诊后需要等 1-2 小时。到医院时已经快凌晨了,等待区的人不多,似乎还有一些人带着宠物在自己的车里等。在前台注册填表,很快就有一个护士过来做 Triage,也就是询问具体状况、以判断紧急程度。动物急诊和人类急诊处一样,会优先治疗病情更紧急的病人。

接下来就是漫长的等待。麻豆在猫箱里很乖,我用大披肩盖着,防止他着凉,也不容易被环境吓到、会更有安全感。等了一段时间后,我们发现护士似乎只把宠物带到里面的治疗区,人不会陪着进去。我和 Kei 都有些不安,平时去 vet 我们都一直陪着麻豆,检查时也会帮忙,这样猫没那么紧张,也少一些攻击性行为。前台证实了我的疑虑,一旦 vet 问诊后确定需要到后面的治疗区治疗,宠物父母不能一块进去。我和 Kei 交换了一下意见,给另一家稍远的诊所打了电话。接电话的前台确认过我的住址区域后,直接问我是不是舍近求远。我照实说了情况并表达了无法陪伴猫的担忧,她告诉我这是动物急诊的标准操作,并简单解释了原因:急诊治疗区的节奏非常快,随时会出现危险情况,不能让客人待在那里。我有些放心又有些无奈,最后我问她觉得麻豆的情况到底有多紧急,她人很好,虽然没法直接回答我的问题,但她说“你是最了解情况的人,需要你来做决定”,给了我一些信心。

我猜麻豆的情况不算太紧急。等待途中有只狗狗过来,我听到狗主人提到今天出现了几次 seizure(癫痫?),而且不是第一次来急诊,明显属于比较严重的情况,狗狗很快就被带进去了。Kei 依旧坐立不安,我劝慰说要相信自己的选择,不要美化自己没走过的路。可能无论选择哪个之后都会觉得另一个会更好,也是很正常的。这个时候不要怀疑自己,两个都可能会有不好的结果,相比之下哪个更不能接受,所谓两权相害取其轻,选择那个自己更不会后悔的就好了。

终于看到医生

等了 3 个小时才终于见到急诊的 vet。和人类急诊类似,她要我再次复述麻豆的病况。我在等待时已经将这几天的症状记录成日志,照着手机一句句念给她,也给她看了之前开的药品。急诊 vet 看上去十分有经验,做检查前发现麻豆很紧张,就提出用毛巾包裹住,增加猫的安全感,她再从身后接近做身体检查。这么做麻豆果然很配合,居然都没有哈气。

ER vet 的沟通非常清楚,首先科普了症状背后的潜在原因,再根据这次身体检查以及我口述的血检、尿检结果,讲了她的判断,她认为不太可能是肾脏功能问题,指标异常更可能跟之前腹泻脱水有关,麻豆现在并没有严重脱水,不吃饭则是因为呕吐产生了恶心感。最后她提供了两种方案,一是住院 1-2 天彻查,花费约 $2500,二是开一些治疗恶心和提升食欲的药物,之前 vet 开的药也需要继续吃。针对喂药困难,她建议直接对嘴喂而不是混着食物,猫感觉恶心的时候可能不想吃湿粮。

她说话并不算客气,但语气中的自信让人放心。我和 Kei 对视一眼,选了第二个方案。结账一共 $350,对于急诊来说算是相当低于我预期的价格了。确认情况不严重后,我们心情都轻松了不少。

治疗和喂药后续

回到家已经凌晨 4 点了,疲惫不堪,但还是先遵医嘱喂了治恶心的药。第一次徒手喂药片还算顺利,麻豆挣扎了一下,但没有吐出来。之后几天继续徒手喂药,有几次不太成功,被吐掉了一些,但每次都有学到新的经验,熟练度和成功率慢慢提高,猫的精神和食欲也逐渐好转。

去完急诊第二天,我向家庭 vet 说明了急诊的情况,顺便催了一下之前的蛋白质尿检。隔天结果出来,vet 告知一切正常,之前种种腹泻呕吐症状大概只是因为吃了不该吃的东西,之后只需要按疗程吃完药即可。虚惊一场,我悬着的心总算是放了下来。

经验教训和小 tips

猫咪喂药

猫咪喂药的教学视频网上有很多,我这里不谈具体操作,只聊几点基本原则:

情绪调节

这条值得单独写,请一定一定保持情绪稳定。猫生病时人会产生巨大的压力,而且猫不会说话,病情又比人恶化更快,再加上高额的宠物医疗账单,在急诊处的焦虑情绪也许比人类 ER 更甚。但请记住,我们是猫的监护人,它们需要我们来保护,所以首先要控制情绪,不能自己先乱了阵脚。

这里大大地表扬一下我自己,虽然短暂地崩溃了一下,但后来在重压之下表现出了钢铁般的神经和决断力,不但安抚了伴侣的情绪,也头脑清醒地处理了各种状况,这次事情让我对自己多了很多信心。

和医生的沟通

最后的最后,看紧猫的嘴巴!不光要回想猫咪可能误食的东西,也要考虑食物中毒/过敏的可能,最好在症状出现当天就开始记录猫咪的饮食状况。截止到我写博客时,我家另一只猫也出现了相同的腹泻症状,我十分怀疑是最近吃的罐头批次有问题,已经发邮件问讯,确认之后再更新。

虚宿一|2024年3月小结

2024-03-15 09:44:08

Featured image of post 虚宿一|2024年3月小结

记录时间:2.16 – 3.11
太阳经过星座:宝瓶座|Aquarius
最亮恒星:虚宿一|Sadalsuud

本月事件

博客更新

买了什么/新的尝试

读/听/玩了什么

本文共花了 2 小时 16 分

Photo by Daniel Seßler on Unsplash

垒壁阵四|2024年2月小结

2024-02-17 06:17:56

Featured image of post 垒壁阵四|2024年2月小结

记录时间:1.19 – 2.15
太阳经过星座:摩羯座|Capricornus
最亮恒星:垒壁阵四|Deneb Algedi

写这篇的时候在听:

【English sub 好声音】Aiuta - whiteeeen - 愛唄~since 2007~ 『ストロボ・エッジ』主題歌(Kobasolo & Lefty Hand Cream Cover) - YouTube
Lefty Hand Cream Collection - Lefty Hand Cream スーパーフライ - Lefty Hand Cream おすすめの名曲 2020 - YouTube

本月事件

博客更新

买了什么/新的尝试

读/听/玩了什么

本文共花了 3 小时 9 分

Photo by Glen Carrie on Unsplash

在加拿大的拔智齿经历和费用分享

2024-01-29 13:26:08

Featured image of post 在加拿大的拔智齿经历和费用分享

从四颗智齿说起

这是我第二次在加拿大拔智齿。

在国内时没什么口腔卫生意识,也没正经做过牙医检查。在加拿大生活后开始定期看牙,才知道我长了四颗智齿,其中一颗位置长得不太好,牙医催着我赶紧把这颗拔掉。那是好几年前的事,当时先拔了这颗牙齿的一侧,准备之后再拔另一侧。没想到一拖就拖到现在,实在忍无可忍,决定在新年前把剩下的智齿也解决掉。

手术前:拍片检查

拔智齿算是个小手术,我平时看的牙医做不了,给我推荐(referral)到了口腔外科医师,跟上次拔智齿的是同一个医生,只是换了工作到新诊所。新的诊所装修很豪华,设备看上去也先进不少。依旧是需要先预约拍片检查,我仔细看了看口腔 X 光的图片,不知道是不是错觉,似乎在拔了智齿的那一侧牙齿的位置确实舒展了一些。

检查很快,由于我之前已经有拔过智齿的经验了,医生进来寒暄两句后就开始说明各种术前的注意事项。最重要的是术前 8 小时内不能进食,因为需要全麻。我上次拔牙也是全麻,体验非常好,睡一觉起来什么都弄完了,那一段时间仿佛消失了一样。听说国内拔智齿许多是局部麻醉,眼睁睁看着医生拿锤子和剪刀敲碎牙齿还是有点可怕的。此外,由于全麻之后人会不太清醒,需要由一位成年人监护陪伴回家。最后要注意的是要穿宽松的衣服,最好是短袖,因为需要进行打针注射。

检查完之后前台给了当天检查的收据,以及一个手术的报价单(cost estimate)。接下来就是预约拔牙的时间,我运气还可以,赶在新年前预约到了手术位置。

加拿大生活小知识:在医疗行业(包括牙医和宠物医疗),如果需要做的项目较为昂贵,通常诊所会在预估项目的同时提供一份报价单(cost estimation)。把这份报价提交给保险公司,就知道能够报销多少钱,从而算出自费的价格 (out-of-pocket price)。

手术当天:拔智齿的过程

诊所的拔牙手术通常都安排在早上。虽然之前就拔过一次了,但我这次比上次还要紧张,抱着一种等着上刑场的心情换衣服出门。前台确认了待会接我的人的姓名及联系方式,在牙医等待室的时候我依旧非常紧张,跟 Kei 发信息,他发了好多猫猫图逗我开心,稍微放松了一些。等待的时间里陆续有一两个工作人员出来通知家属说 xx 醒了,我猜应该是安排在我前面手术的病人。

终于叫到了我的名字,接我进手术室的是一位挺年轻的亚裔女性,应该是医师助手。进手术室后,先是确认了一些基础问题,包括术前是否空腹、有没有药物过敏之类。然后她让我带上一个手术帽拢住头发,我躺在牙科手术床上时她开始做各种准备。先是在右手绑上血压计,再在我左手手指夹上血氧夹,又抽出针头在我左手打针,我被刺了好几次才打好。我是属于血管特别明显的人,这种情况还是第一次遇到,有点疑惑但倒也没有不悦。她可能不太好意思,跟我道歉了一声。之后她又将我的两只手轻轻绑在手术台上,解释说这是为了防止手臂在手术过程中滑落。她最后拿出一个有点像是呼吸罩的东西(只是没有面罩的部分),轻轻戴在鼻子前面。

我双手都被绑住,左手还在打点滴,戴着一个不知道是什么的罩子,眼前半米是手术环形灯,这时我真的有点紧张了,跟上次拔智齿很不一样,我记得上次只有血氧和血压计,手术室也跟平时的牙医诊室并无不同,而这次却很像是电视里那种正儿八经的外科手术。

这个时候医生进来了。依旧是开了一两句玩笑,问我今天想被送(麻醉)去哪。我给了一个加拿大人的标准答案:“哪里都好,只要比这里暖就行”。医生问我今天手术后谁来接,我回答说 my husband,他说“可我们要求的是一个 responsible adult!”。我笑了笑,也不知道同样的玩笑他对病人说过多少次了。医生又继续跟我聊了半饷,问到我的职业还顺便叨了几句行业相关的事情。我心里纳闷,怎么医生都到场了还半天不开始,莫非是在等我的指标监测到什么程度了才能开始麻醉吗。没过多久有另一位女性进来,从他们的反应,我才明白过来他们一定是在等这位麻醉师了。麻醉师动作很麻利,三下五除二就开始鼓捣连接我鼻罩的管子,我听到一阵气体的声音,开始几秒还有点想咳嗽,但很快就完全失去意识,陷入了沉睡。

等我醒来之后已经在另一个房间了。我被放在软椅上,意识很涣散。Kei 已经在我边上守着了,助手过来说了一些术后的注意事项,我迷迷糊糊也没怎么听,不过她大部分时候是对着 Kei 在说,估计也知道我这时候不太清醒。

手术后:疼痛和饮食管理

Day 0: 术后当天

回家之后 Kei 就去拿着医生开的处方单(prescription)去 Shoppers Drug Mart 的药房取药。其实早在预约时就开了单子,应该提前去药房取的,还好运气比较好,当天就给了药。大概术后一小时后我清醒了一些,才有空看诊所给我的医嘱,内容很详细:

关于最后一条,处方单一共有三种药:阿莫西林(抗生素),强效布洛芬(止痛药)和类阿片(强效止痛药)。Kei 去帮我取药时才发现处方单里有类阿片(Opioid),通俗地说就是鸦片的现代麻醉药版本,药剂师还给了一个急救包,教了万一过量使用导致昏迷的抢救方法,可把他吓坏了。

手术当天除了有些晕乎乎的其他都还好,主要就是止血,拔牙的部位隔半小时就要换止血的棉花。饮食方面,晚上喝了鸡粥,但烫烫的感觉很不舒服。想起术后 24 小时内应该是敷冰袋的时间,就把鸡粥加冰块弄凉,果然吃起来好受多了。

Day 1

第一天基本没什么感觉。除了不能随便吃东西,没有太多的异样。我开会时还说了挺多话,同事们都惊讶于我的恢复速度(其实只是还没开始罢了)。提前在超市买了流食,除了鸡粥、鸡汤面罐头和酸奶之外,我还尝试了宝宝辅食,当零食吃挺不错的。

Day 2

果然双颊开始肿得明显了。今天右边脸颊越来越难受,肿胀倒没有上次拔牙时那么夸张,但是挺不舒服的,有点想吃强力止痛药了,但出于对类阿片的畏惧,觉得还是能忍就忍吧。食欲不好,自我感觉也还没恢复到能吃固体食物的阶段,还是继续吃跟昨天一样的流食。

Day 3

拔完智齿的第二三天果然才是最难熬的。今天开始出现了下巴肌肉僵硬的症状,有点麻麻的。试着不断用毛巾热敷来缓解,敷的当下有好一些,但由于饥饿和疼痛的双重作用,还是很烦躁。强效布洛芬的效果有限,由于嘴巴很痛,导致食欲不好,没怎么吃东西。疼痛和饥饿让我失去了理智,在外面因为一些小事大发脾气,甚至有直接砸东西的冲动。后来有象友告诉我说这可能是 hangry,专门用来描述饿肚子时候的愤怒。想起之前看哈利·波特第七部,没受过饿的罗恩由于饮食窘迫发脾气,当时还有点看不起这种行为,觉得不就两口吃的嘛。没想到自己也变成这样了,只能说人某种程度上是被身体奴役的呀。

晚饭时我还是吃流食,但盯着 Kei 碗里的馄饨,忍不出吃了一小口,简直要被香晕了。晚上上床时发现肚子是扁的,好饿。食欲倒是恢复了一些,于是实在忍不了了,去泡了一碗韩国乌冬面。底料太甜了不太合我胃口,不过吃完就舒服了,开心了许多。

睡觉前又检查了牙齿,用小棉签跟单簇牙刷轻轻把牙缝间的残渣弄出来了!味道有点恶心,有点像扁桃体结石的味道,但暂时还没法刷牙,难受。

Day 4

早上试着刷了下牙好像 ok,整个人都舒爽了!不能刷牙简直要人命,实在受不了早上起来嘴里臭臭的。牙疼得实在难受,于是在吃午饭时吃了类阿片,出现了强烈的头晕副作用,连毛线都织不下去了,只好去睡觉,睡了一两个小时,感觉倒是没那么疼了。既然昨晚能正常吃乌冬面,决定试着正常饮食。晚上点了米线,吃得好满足呜呜。

照例检查牙齿,嘴巴里吐出来一条短线一样的东西,怀疑就是手术缝线。晚上大概过了类阿片的镇痛期,牙还是有点痛。

Day 5

鉴于昨天吃类阿片的经验,决定把吃药时间放在吃饭之前,这样能保证吃饭时能舒适一些。今天吃完药倒不太晕,效果也很好,正常吃饭也不疼了。遵照药剂师的说明,药片每 4 小时吃一次。今天吃了两片,基本恢复正常了。

Day 6 ~ 至今

这之后就没有再吃任何止痛药。除了依旧要注意口腔清洁,以及不太能吃鸡翅等需要用力咀嚼的食物之外,已经完全恢复成正常饮食,嘴巴也不痛了。术后第八天去做了复查(免费),医生说我恢复得不错。用注射器又冲洗几天后,手术区的洞也愈合了。

意料之外的是,某天我突然发现智齿下牙原本所在的位置跟嘴巴间形成了一个缝隙,大家可以想象成一个迷你的仓鼠颊囊,每次吃完东西后会有一小部分残渣留在这个囊里(……)。说实话让我很困扰,不得不每天用水牙线或注射器仔细冲洗,希望这个缝隙早日合上。

手术费用合计

到了喜闻乐见的算账环节。这次拔牙的费用小计如下:

事项 费用
检查 $190
拍片 $99
首次检查合计 $289
拔牙(上牙) $515
拔牙(下牙) $625
麻醉 $578
注射 $70
手术合计 $1788
总计 $2077

保险方面,我个人的保险有点儿复杂,除了在公司有自己的牙科保险,在 Kei 那边还买了一份配偶险。本来我公司的牙科保险能全额报销拔智齿费用,但由于还有别的牙科保养,快达到了今年的总报销上限,所以大头都由配偶险出。最后算下来,我的个人保险共报销了 33%,配偶险报销了 63%,只剩不到 $80 需要自费。但这一部分费用也可以用于明年 HSA(Health Spending Account)里的 carry-forward 项进行报销,总之四舍五入相当于不用出钱。虽说保险都是羊毛出在羊身上,但该薅的时候还是不能手软嘛~

Photo by Umanoide on Unsplash

箕宿三|2024年1月小结

2024-01-19 22:35:47

Featured image of post 箕宿三|2024年1月小结

记录时间:12.22 – 1.18
太阳经过星座:人马座|Sagittarius
最亮恒星:箕宿三 Kaus Australis

本月事件

博客更新

下厨房/买了什么/新的尝试

读/听/玩了什么

Photo by Walls.io on Unsplash

2023年终总结之人物升级表

2023-12-30 22:23:31

Featured image of post 2023年终总结之人物升级表

我以前是不做年度总结的,因为自己不是一个有仪式感的人,而且我已经有写每月总结了。但转念一想,如果将自己试作 RPG 游戏里的主角,那么以年为单位,自己的属性和技能有什么变化呢?作为一个 TRPG 跑团玩家,当然是以 DnD 和 CoC 的人物属性表为灵感,来写一张属于自己的人物表啦。

力量

运动

我一直不爱锻炼,从没体会过运动带来的多巴胺。今年从 Switch 的拳击游戏逐步入门,意外发现了力量训练的美妙。新手上升期的力量增长飞快,无论是手臂肌肉还是扛重物的能力都有肉眼可见的提升,成就感十足,也越来越会欣赏有肌肉的女性之美。

敏捷

心灵手巧

2023 年一共织了 10 个毛线项目。这是我织毛线 入坑第二年,非常喜欢这个活动,已经成为了日常的一部分。除了不断进步的针法之外,现在织东西会更加关注材质、是否合身,也体会到了羊毛等 natural fibers 的好处。

烹饪

想尽量减少花在做饭上的时间,现在更多的是追求味道和所需时间的平衡。因此中式炒菜几乎不做了,越来越往 fusion 靠拢,不拘泥于某一种菜系或传统做法。

体质

鼻炎、荨麻疹之类时不时发作的慢性问题还是一直有。由于年龄的增大和不爱出门的生活方式,感到体质在缓慢下降,稍微不注意就会腰酸背痛,对情绪的影响甚至比身体不舒服本身更为严重。好的方面是,运动带来的身体素质提升非常显著,尤其是力量训练的肩、背相关动作对于改善我的肩颈疼很有效果。此外,自从改变熬夜作息 之后白天的精神也好了不少。牙齿健康也是我今年开始特别注意保养的一环,年终前把剩下的智齿拔了,以绝后患。

智力

专业知识

一言以蔽之,在躺平中寻求改变。工作职责有一些变化,能学到一些新东西,但仍旧不能满足我的挑战欲。所以有过很迷茫的阶段,不过最终还是确定了自己想要的方向,也断断续续有若干进一步探索领域的尝试,但目前依旧停留在自我学习阶段,没有发挥到实处。

语言写作

新开张了这个博客,跟我原来的工作博客加起来一个月也平均能写个 3、4 篇了。年初建这个博客的初衷是重建表达欲,完全做到了,而且我也很享受写作本身,是意外之喜。写博客对我带来的益处是全方位的,它本身有一定满足感,还帮助我对抗焦虑、思考怎样成为一个好的作者、输出的同时也激励我不断输入、对自己度过的生活有了更深一步的认知。

生产力管理

又称笔记系统和效率工具的进化史。辗转了不少软件之后,最后正视自己是个 power user 的事实,升到了折腾级别最高的一档:org-mode。学习门槛极高,但是是真好用,由于沉没成本过高,也完全不再有迁移的想法。自从建立这套系统之后,不再为日程管理而焦虑,电子日记几乎没有空窗,做笔记也很有动力,带来的生产力提升还是值得的。

感知

观察世界

由于生活方式的原因,观察世界大部分通过线上。每一次社会事件带来的集体讨论和纷争都让我意识到人与人之间确实非常不同,虽然偶尔会刻薄一下,但总体变得更包容了一些。书影音游的输入比较少,倒是织毛线的时候顺便听了 150 多个小时的案件类 podcast。

自我分析

识别情绪的能力更强了,能很快意识到情绪是否是由荷尔蒙上头导致。自我剖析的能力也上升很大,每天写日记复盘对认识自己很有帮助,能以更加客观的角度判断自己。在必要的情况下会求助于伴侣,他会帮我分析我的情况,不断分析的过程也是疗愈的一环,所以也不需要向外寻求心理咨询。

玄学

在 routine 里加入了每日塔罗 ,一日一抽牌。我很少拿它做预测,而是试作梳理内心的一种方式,以随机抽牌来迎接新的一天会让我觉得每天都值得期待。

意志

规划执行

其实这是两部分:首先有规划,然后是执行。我以前认为我是后者弱,今年才发现其实我的执行力很强,没有完成的情况几乎都是因为规划不够细致或者对自己认识不足导致。目前对于短期的规划有所提升,但长期计划的能力依旧需要提高。

时间管理

进行了将近一年的柳比歇夫式 24 小时追踪统计,对时间的利用有了非常直观的认知,也因此对时间的敏感度变得很高。原来日常的生存和家务活动竟然要花费那么多时间,真正可支配的自由时间非常少。对时间的敏感很大程度上影响了我各方面的决策,会以更苛刻的角度判断这件事是否值得去做。

魅力

社交关系

受其他勇敢的 introvert 影响,在社交场合能更加勇于表达自己作为 introvert 的特质和兴趣(又写为“装都不装了”)。在这个被外向型人主导的世界,表达这样的特性一定会有心理压力,但自从意识到这样的行为能鼓舞到更多人之后,我也一直身体力行,在社交场合真诚地表达出自己不同于主流的这方面。感受就是:做自己实在是太爽了。

家庭情感

结婚一周年 ,亲密关系依旧稳定。除了合理的角色分工和良好的交流机制,日常的家庭活动比如一起玩游戏、看帖子也增添了很多乐趣和话题。今年也更加坚定了丁克的想法,除了本身不喜欢小孩之外,更多的是无法接受养育后时间和精力被严重挤占,我对于未来的追求无法容纳小孩的存在。也因此跟父母产生了一些无法调和的矛盾,这依旧是我需要自己面对的课题。

沟通

由于业余写博客的关系,与人的沟通能力增长不少。无论是工作还是生活,现在能够站在对方角度上思考,判断什么才是需要传达的核心信息,并使用对方能理解的语言沟通。对类似错误的敏感度也增加了,观察时会不自觉地下判断,并且告诫自己不要犯同样的错。

外貌

脸没什么大的改变,皮肤状况差一点,时不时长颗痘痘(是谁说年纪变大就不长痘的快过来让我打一顿),不过我也很少花心思在这上面了,比较在意整体的精气神。除了作息之外,心情对我的神态影响是最大的,心情不好就会显得比较憔悴。身材方面,根据运动情况会有 2kg 以内的体重波动,总体依旧稳定,但手臂和背部的肌肉显著增加,不再是原来的白幼瘦了。

Photo Credit: r-n-w

候|2023年12月小结

2023-12-23 12:07:48

Featured image of post 候|2023年12月小结

记录时间:11.30 – 12.21
太阳经过星座:蛇夫座|Ophiuchus
最亮恒星:候|Rasalhague

本月事件

博客更新

买了什么/新的尝试

看了什么/玩了什么

Credit: Photo by Annie Spratt on Unsplash

氐宿四,心宿二|2023年11月小结

2023-12-01 11:30:28

Featured image of post 氐宿四,心宿二|2023年11月小结

记录时间:10.31 – 11.29
太阳经过星座:天秤座,天蝎座|Libra, Scorpius
最亮恒星:氐宿四,心宿二|Zubeneschamali , Antares

写这篇的时候在听:
『オレンジ』を歌わせて頂きました。灯油
Mosawo - 1 Minute 1 Second [Official Video]

本月事件

博客更新

新的尝试

读了什么/听了什么

Photo by Larisa Birta on Unsplash

更改Hugo博客的永久URL链接,并用Netlify实现旧博文跳转

2023-11-27 23:20:36

Featured image of post 更改Hugo博客的永久URL链接,并用Netlify实现旧博文跳转

对于静态博客,有时候会需要更改博文的永久URL链接格式,比如把格式为/blog/xxx的链接改为/post/xxx。有时由于迁移博客,也需要把以前的老博文进行URL重定向跳转,以避免失效链接导致的404。

我以前的博文链接格式是/post/xxx ,每次在社交媒体分享链接的时候都觉得post实在有点多余,想简化一下。所以在本文里,我的目的是让所有格式为https://thirdshire.com/post/xxx 的链接都去掉post,并自动跳转到https://thirdshire.com/xxx/ 。其中跳转规则的设置通过Netlify实现,有两种方法(当然这么做的前提是已经用Netlify部署博客了)。

更新Hugo永久URL链接

以我使用的Hugo博客为例,每个markdown文件的都含有YAML front matter,通过YAML里的slug来定义永久URL,如slug: march-2023-recap

更改Hugo的永久URL链接很简单。对于我使用的Hugo Stack主题,在/config/_default/permalinks.toml里更改即可。Stack主题的博文默认URL格式是post = "post/:slug/",将其改成:

post = "/:slug/"

如果是只有一个config.toml文件,也可以直接在里面更改:

[permalinks]
 post = "/:slug/"

用Netlify实现链接跳转

方法一:在Netlify配置文件内增加重定向规则

更改Netlify配置文件

在博客的根目录文件夹里的netlify.toml文件添加如下代码,如果没有就新建一个。这部分代码即为设置Netlify的重定向规则,它做的事情就是将所有格式为/post/xxx的链接跳转到/xxx。更详细的规则和设置可参见redirects options部分的官方文档

[[redirects]]
from = "/post/*"
to = "/:splat"

有很多老博客都会用包含日期的URL链接如yyyy/mm/dd/my-post,如果迁移到了不含日期的URL,可以在netlify.toml里添加如下跳转规则:

[[redirects]]
from = "/:year/:month/:date/:slug"
to = "/:slug"

方法二:通过创建_redirects文件来添加重定向规则

第二种方法是创建一个重定向文件_redirects(无任何后缀名),里面含有具体需要跳转的新URL和旧URL。_redirects必须放在博客的publish文件夹(通常默认是/public)。关于这部分重定向的规则也可参阅有关官方文档

_redirects的内容格式如下,其中空格前面是旧链接,空格后面是新链接。

/post/my-post /my-post
/post/my-post-2 /my-post-2

用Python自动生成Netlify重定向URL文件

如果博文很少的话可以手动创建,但我是个懒人(),就在ChatGPT的帮助下快速写了(抄了)一个Python script,它的主要目的是:

  1. 在/content/post这个博文文件夹内查找子文件夹内的所有md文件
  2. 在每个md文件中搜索并提取出格式为slug: xxx中的内容,即博文的URL,并将提取出的URL放在名为slug_list的list内
  3. 根据上文提到的格式创建_redirects文件
点我展开Python script
import re
from pathlib import Path

main_folder_path = "/content/post"

def list_md_files(path):
 return [file for file in Path(path).rglob("*.md")]

md_files = list_md_files(main_folder_path)
print(md_files)

slug_list = []

for file_path in md_files:
 with open(file_path, 'r', encoding='utf-8') as file:
 file_content = file.read()

 match = re.search(r"^slug: (.+)", file_content, re.MULTILINE)

 if match:
 slug_value = match.group(1).strip()
 slug_list.append(slug_value)

print(slug_list)

redirects = [f"/post/{slug} /{slug}" for slug in slug_list]
print(redirects)

with open("_redirects", "w", encoding="utf-8") as redirect_file:
 redirect_file.write("\n".join(redirects))

变量可按需更改。运行完后打开博客根目录,确保_redirects已经放在里面就可以了。

_redirects文件放在发布文件夹

这部分取决于部署方式的不同,方法也不一样,最终目的都是让_redirects文件放在发布文件夹(一般默认为/public)。

以我的Stack主题为例,还是在博客根目录文件夹里的netlify.toml文件里添加如下代码。 mv _redirects public这个命令做的其实就是把_redirects文件在hugo build完成后放入public文件夹。

[build]
 publish = "public"
 command = "hugo --gc --minify && mv _redirects public"

如果不用netlify.toml而是用Netlify官网的build command部署,也可以在build command后面加上如上的代码,效果是一样的。

完成后测试一下旧链接,现在应该能跳转到新页面并在浏览器地址栏显示更新后的链接地址了。

测评 | Review

2023-11-23 19:22:42

这是我的安利/踩雷家用产品测评数据库,不定期更新,灵感来自友邻椒盐豆豉的消费主义剁手数据库

每个人的消费观都不太一样,所以先写一下博主的买买买原则:

  • 抠,在满足需求的情况下不会花额外的钱买更高配
  • 喜欢好看的东西,但是功能胜于一切
  • 对于需要维护的东西,愿意花少量溢价购买有保障的品牌;对于门槛和质量要求不高的轻工业产品,不介意买廉价三无
  • 愿意为环保付费但不太愿意牺牲便捷性,太麻烦的话就算了(我懒)
评分标准
★★★★★ 好用,使用频率高,早买早享受系列,可能有缺点但影响不大
★★★★ 还不错,没有功能上的硬伤,但有一些不痛不痒的缺点
★★★ 功能OK但有一些硬伤,或者使用频率太低容易吃灰
★★ 功能勉强够用,低于预期
别买,买了会后悔

声明:本文的Amazon链接为推广链接,对您的购买价格没有影响,在您购买之后我会得到一笔很小的佣金。

便携收纳

Thread Wallets 钱包

★★★★★

容量巨大的钱包

Belkin 三合一无线充电底座

★★★★

IKEA YUPPIENALLE 便携手机架

★★★

淘宝可调节双轴手机架

★★★★★

双轴手机架

解放脖颈的平板可调节支架

★★★★

iPad支架

节省桌面空间的铝制笔记本电脑 Dock

★★★★★

IKEA MÖJLIGHET iPad 支架

★★

Herschel 腰包

★★★

仿皮双面桌垫

★★★★

IKEA VARIERA 厨房置物架

★★★★

实验室风格的酱料挤压瓶

★★★★

料理工具

KitchenAid 迷你料理机

★★★

KitchenAid 手持料理棒

★★★★

华夫饼机

★★★

鸡蛋仔机

★★★★

Starfrit 鸳鸯电火锅炉

★★★★★

珐琅铸铁锅

★★★★

Vitamix 搅拌机

★★★★

KitchenAid 厨师机

★★★★

双立人 Henckels 厨房剪

★★★★★

飞利浦空气炸锅

★★★★★

卫生清洁

戴森吸尘器

★★★★★

iRobot 扫地机器人

★★★★

Swedish dishcloth 替代厨房纸的瑞典洗碗布

★★★★★

马桶清洁胶

★★

Swiffer Wetjet 喷雾拖把

★★★★

OXO 短柄簸箕套装

★★★★

角宿一|2023年10月小结

2023-10-31 19:22:42

Featured image of post 角宿一|2023年10月小结

记录时间:9.16 – 10.30
太阳经过星座:室女座|Virgo
最亮恒星:角宿一|Spica

写这篇的时候在听:
🍃🌿Harutya 春茶 🍃🌿 Collection 2023 - Best Cover Of Harutya 春茶 - Best Japanese Songs 2023 🍃🌿 Ver.256.

本月事件

博客更新

买了什么/新的尝试

读了什么/听了什么

Photo by Debby Hudson on Unsplash

开始学习织毛线Knitting吧

2023-10-13 10:00:00

Featured image of post 开始学习织毛线Knitting吧

注:本文出现的所有中文术语都是我临时查的,如有出入请以英文为准

为什么喜欢织毛线?

  1. 放松大脑。织毛线重复性的动作能帮助大脑放空,让人平静、专注。我是一个时刻绷紧很难放松的人,但专心织毛线时可以达到类似冥想的状态。
  2. 创造性的输出型活动。织毛线是种输出型爱好,从手里一步步制造出东西会很有成就感。而且作为一门工匠型技术,各种技法非常多,不断有新的东西可以挑战(当然也可以不挑战),不会无聊。而且织出来的物品可以当礼物!我送过几次,收到的人都非常开心。
  3. 打发时间。打毛线的场景非常广泛:坐地铁飞机、等公交、排队的时候都可以织。我有时甚至会一边逛超市一边织。
  4. 单线程/多线程皆可。多线程指一心二用,许多人会一边织毛线一边看剧/听书,熟悉了之后甚至还能盲织(类似盲打)。也可以只专心织毛线,织着织着就容易进入冥想状态,参见第一条。
  5. 会更熟悉衣服材质。这条是顺便学习到的技能。各种毛线用得多了,摸一下就大概能感觉到这个线材质如何,看水洗标签也会更清楚其中的弯弯绕绕。
  6. 感觉自己很厉害👻。在公共场合的时候,别人都掏出手机,这时你掏出一个……毛线针,顿时周围的气氛都不一样了起来。 在公共场所织毛线会迎接很多好奇的目光。对一些人来说也许这是个缺点,但大部分人也只会看两眼,少数人可能会来搭话,态度也都很好奇和友好,很好应付。

缺点呢?

  1. 手部劳损。需要自己控制好每次 knitting 的时间,腕管综合征可不是开玩笑的,不小心织太久的话会手酸,有一些毛线的材质也会容易磨手指。如果不注意坐姿的话可能还会对肩颈造成影响。总之长时间(连续一小时以上)织毛线不是特别健康。

  2. 不要妄想通过织毛线来省钱

    首先,这不是一次性投入,会一直有后续支出。织得越多,消耗(买)得越多,而且消耗速度比水彩、手帐之类的快多了。

    其次,毛线比想象中费钱。一开始入门基本都会选便宜一点的毛线,到后面会逐渐想尝试各种材质,然后……就变成买买买的装备坑。

    最后,织一件衣服的成本大概率比买一件成衣更贵。不要小看现代工业的力量,同样是羊毛毛衣,买一件现成的多半比自己手织便宜。当然成衣的毛线材质可能没有自己买的好,但那是另一个话题了。

织毛线的种类:Knitting和 Crochet

手织毛线分两个大类,一种是knitting(棒针),一种是crochet(钩针)。最直接的区别,是knitting用两根针,crochet用一根针,且后者的针头有一个小钩子,很好辨别。

这是Knitting:

Knitting(棒针)

Credit: Better Home and Gardens

这个是crochet:

Crochet(钩针)

Credit: Urbaki Crochet

另外,两者由于技法不同,织出来的作品也有材质区别。Knitting的针法较为疏松,所以织物比较软,一般用来织衣服较多。Crochet出来的东西则会更密更硬挺,容易做造型,所以各种装饰、玩具和包包基本是crochet的天下。当然crochet也可以用来织衣服,出来的效果会比knitting厚很多。

织毛线的双修党非常多,因为学会一门之后再学另一门会比较简单,像knitting里面有一些辅助技巧是直接需要钩针帮助的。我主要还是以knitting为主,crochet的经验不多,所以下面的教程都是针对knitting的资源。

从今天开始学Knitting

终于到最喜闻乐见的“工欲善其事必先利其器”了!需要说明的是以下资源以北美为主,我会尽量补充一些我知道的其他渠道(没有亲身验证过,不保证可靠)。

需要什么材料

新手一开始最大的困扰估计就是材料,因为选择实在太多了,不知道从何入手。

我对新手的建议:找一个自己喜欢的洗碗布(dish cloth)或围巾的新手教程,按照教程买对应的毛线和针(买浅色毛线,不然看不清织法)。没有特别说明的话,买一对US 7(4.5mm)的木质直针(straight needles)和#4 Medium粗细的毛线,就可以开始了下面有关于这些术语的详细说明

选洗碗布/围巾是因为可以快速学习到基础针法,同时又不需要考虑诸如尺寸之类的问题。毯子其实也可以,但耗时过久,不能很快看到成果。

直针的基础织法是一切的基础,学会之后再用别的针能更好地理解其中的区别。

毛线针类型

毛线针(knitting needles)分三种:

knitting needles

Credit: knitsilk

具体选择哪种针要看pattern(图样)的说明。关于pattern,下面会有更详细的解说

毛线针也有不同材质,有木头、有金属、也有塑料的。这个纯粹是个人喜好,挑个自己看得顺眼的就好,之后可以陆续尝试别的。

另外,毛线针的尺寸单位和鞋码一样混乱,有公制(以mm为单位)、美制(US打头,数字越大越粗)、和英制(跟美制相反)。有需要时可以参考这个Knitting needles cheatsheet 来转换单位。

毛线类型

新手一开始不需要太多关注材质,毛线的粗细度比较重要。

毛线(yarn)的标签都会写明yarn weight(粗细度),下面这张图比较直观地说明了#0到#6由细到粗的划分:

yarn weight

Credit: Sheep & Stitch

理论上来说越粗的毛线越好上手,织起来也最快。我建议新手不要选择#4以下的粗细。如果觉得#4也不太好控制,可以试试#5。最粗的#6实际织起来太大团了,所以我也不太建议新手尝试。

很显然,不同物品需要用到的毛线粗细会不一样。Pattern(图样)也会说明建议的毛线粗细,一般按照建议来购买即可。

不同粗细的毛线也会有建议的毛线针尺寸(有对应的Yarn cheatsheet )。例如最粗的#6 Super bulky一般建议用US 11(8mm)的粗针。熟悉了之后可以按需计算调整,为了避免麻烦,新手直接按教程买就好了。

在哪里买毛线和针

新手教程

新手教程有两种手法,有English knitting(右手拿线)和 Continental knitting(左手拿线)的区别。对于零基础的新手,我推荐用English knitting,因为这个手法是以线的走向为核心,对新手来说比较容易观察到。可能教程不会特别说明是哪种,只需要看博主是否用右手拿线就能确认了。如果学了一段时间感觉不喜欢,再换到continental也是可以的。

如果已经有钩针基础,不要犹豫直接学continental。因为拿线手法相似,上手会更自然。

完整的视频教程的话,我觉得这个厚织围巾的How to Knit a Scarf - Step by Step Tutorial for Beginners - YouTube 很不错。从零开始到完成的过程很完整,博主用的线很粗,也很方便观察。

要完成一个knitting project,需要掌握以下知识,这也是一个最基础的、完整的新手教程会覆盖到的技法:

  1. Cast on(起针):如何开始织第一行
  2. Knit(下针):最为基础也最重要的针法
  3. Bind off(收针):如何给最后一行收线
  4. Weave in ends(藏线):把线头藏在针脚里
  5. *有些教程可能还会涉及到purl(上针)的针法

我自己的入门历程:入门学的是iKNITS的HOW TO KNIT - FOR BEGINNERS 教程,只教了如何cast on和knit,但讲解清楚,很容易跟。其他技法参考了上面的围巾视频教程。织的第一个project是这个one row handspun scarf 围巾,但涉及的技巧其实对新手有点多了,我也是反复拆过几次才完成的,所以我觉得最方便的还是跟着一个完整的视频教程。当然自己织也有自己琢磨的乐趣,能从弯路里学到很多。

入门之后

学会了最基础的针法,就可以开始探索各种pattern(图样)了。所谓pattern其实就是一个织东西的说明书,告诉你需要什么材料、一共织多少行、每行怎么织。第一次看pattern可能会感觉像天书,因为pattern基本都长这样:

Cast on 72 sts.
1st row: (RS).*K1. P1. Rep from * to end of row.
2nd row: *P1. K1. Rep from * to end of row.
Rep last 2 rows of Seed St Pat once more.

所以一开始看pattern看不懂很正常,搜索一个pattern科普视频就可以解决,比如这个How to read knitting patterns and follow written instructions [for beginners] 。另外,每个pattern也会附带术语的说明,如果有个别不懂的google即可。

选择pattern的时候需要评估它的难度,虽然有的pattern会附上难度等级,但不一定准确。在萌新时期,最好是选择那些写明对新手友好/beginner friendly的图样。在这之后,我的判断标准是看其中的术语,如果绝大部分连看都看不懂就跳过,如果只有少数几个没学过,那就可以拿来练手。

不谈具体技巧,只看大类的话,我认为织东西的大体难度是:

洗碗布 < 围巾 < 毛毯 ≈ 帽子 < < 手套 ≈ 袜子 < < < 衣物

在哪里找Pattern资源

说到pattern那就不得不提Ravelry 了。Pattern数据量第一,资源非常全面,许多pattern designers也会在上面贩卖他们的设计图样。除了pattern之外还有各类毛线的数据,用户还可以上传自己knitting projects的笔记和图片,查看同一个pattern下其他用户的成果,或者记录自己买了什么毛线。Ravelry本质是个庞大的数据库,有了它根本不需要用其他软件或者app来记录织毛线进度,极其方便。

网络pattern的一大来源是各大毛线品牌的官网。许多毛线品牌比如drops 会定期发布新的pattern,有一些是免费的。还有一个隐藏资源是公共图书馆的pattern books。去图书馆搜索一下,可能资源会超乎想象喔。

毛线针买多少才够用

入门之后,买毛线针曾经是困扰我的一大问题。因为不同的pattern要的毛线针尺寸不同,意味着每织一个新project都需要买新的针,不然还需要根据手头的装备来判断这个东西能不能织。有一种叫interchangeable knitting needles的套装,可以自由组合针体,但价格很贵,前期不太愿意一次花这么多钱。

烦了一段时间之后,我决定一劳永逸解决这个问题:

knitting needles set

里面是单个的针,不需组装。质量普通但也够用,胜在价格便宜,关键是尺寸齐全,再也不用担心“我想织这个pattern但还没有对应的针”了。

写在最后

Knitting越学到后面,越会惊叹于前人发明的各种精巧技法。这门技术也十分多样,实现同一个效果往往有不同的方法,探索解决办法的这个过程非常有趣!互联网的普及和视频教程大大降低了织毛线的门槛,也更方便找到自己心仪的pattern。织毛线不只是老奶奶限定的古早技艺,从今天开始试着织织毛线吧~

最后附一张我织的羊毛袜镇楼:

羊毛袜

Credit: Photo by rocknwool on Unsplash

写在结婚一周年

2023-09-29 10:14:00

Featured image of post 写在结婚一周年

不知不觉结婚已经一周年了。

其实好像一切都没变,毕竟我们已经同居(common-law)很久了,经济也早就绑在了一起。婚礼基本是我们两个人的事情,双方父母都没有参加,更没有彩礼、嫁妆这一说了。

那么为什么要结婚呢?因为我想让自己有一个法律上的代言人,即使我不在了也能以我的名义和意志来继承我的东西。在这个层面上,我对对方是完全信任的。我把Kei看作自己在人间的代理人,某种程度上甚至可以算作我的分身。对于一个十分自恋的人来说,这是我对人类的最高评价了。

结婚当天很美好。我们都喜静不喜闹,只有我们两个人的仪式,阳光、花园、草地、涟漪的水面,简洁而浪漫。我们的生活也真的很简单,平时没什么仪式感,不怎么过节日。疫情之后基本24小时都在一起,一块做饭、收拾家务,偶尔一起玩游戏,每一天都是平淡简单的日常。

我和Kei的兴趣爱好交叉不算多,大部分时间是各做各的,但时不时会分享各自的吐槽。虽然对对方的领域不熟悉,但都会耐心倾听并给予一些回应。也许是我们的深层思考方式很相似,我们总能迅速感知到对方的那个点,即使有一些比较黑暗的吐槽,也可以没有包袱地展示给对方。

因为你,我变成了更好的人。

我想,我最喜欢Kei酱的一点是他总能有办法在困境里拉我起来,每次遇到困难的时候,跟他聊完总有一种拨云见日的感觉。事情我自己会做,情绪我可以自行消化,但在我没有动力、找不到方向原地打转的时候,我真的很需要他在我倒下的时候拉我一把。他不会帮我做决定,但他是在漆黑不见五指的黑暗里的一盏灯,有了这盏灯,我才能看清前面要走的路。他也从来不会安慰我说,没事放弃也可以,他只会帮我达到我想要的目标。

我也从他身上学到了非常多。我出生于典型的东亚家庭,身上有许多传自东亚父母的毛病,有时并不会“爱人”。但从他身上,我逐渐体会到了什么是真正让对方体会到爱的关心。以前如果不小心弄坏了什么东西,我的第一反应是“你怎么这么不小心”,把整件事情弄得很不愉快,宛如我爸妈以前对我那样。但现在,我会先关心对方有没有事,有时我们甚至会把这件事当作一件非常好笑的灾难事件并开怀大笑。我对生活的态度也因此松弛了许多。

我以为我无法再依靠谁,但你证明我是错的。

因为我能把后背交给你了。

读婚礼誓词时,我说到这句话马上就哭了。天知道遇到一个能让我完全信任的人有多难。从很久以前我就知道只有自己才靠得住,连父母都无法完全依靠,十几二十年都是这么过来的。现在我终于不再需要独自承担所有了。

说实话,这其实让我有点害怕。我害怕我习惯了被分担责任后的轻松,之后会失去完全独立的能力。但是转念一想,多少男的被女人照顾了一辈子、连自己的袜子都不知道放哪里,我这才哪到哪呢。于是心安理得。

我们一直是战友一般的伴侣。平时就是分工协作,各自发挥优势。我忘性大不爱弄细节,他就来记每一笔账;他有选择困难,我擅长迅速拍板。在相处的过程中通过一件件小事,逐渐确认了对方是能跟我走下去的人生伴侣,既不需要我等他,也不需要他等我。我们是完全对等的关系,有能把后背交给对方、一往无前并确信对方能跟上的自信。

结婚一周年。我真的很开心。

Photo by Jeremy Wong Weddings on Unsplash

轩辕十四|2023年9月小结

2023-09-18 02:40:33

Featured image of post 轩辕十四|2023年9月小结

记录时间:8.10 – 9.15
太阳经过星座:狮子座|Leo
最亮恒星:轩辕十四|Regulus

写这篇的时候在听:
イデア / 天月-あまつき-【オリジナル】 - YouTube
たばこ / コレサワ(cover) by天月 - YouTube
【Vocaloid Songs Only】Heart Clenching Song Medley Sang it【Amatsuki&ShounenT】 - YouTube

本月事件/折腾清单

博客更新

新的尝试/买了什么

待买心愿单+吐槽

艰难的加拿大路考记录:从G1到G牌的新手司机之路

2023-08-31 03:21:25

Featured image of post 艰难的加拿大路考记录:从G1到G牌的新手司机之路

安省驾照类型

安大略省的普通驾照分三级 ,G1→ G2→G牌。广义上的驾照包含所有三种,且都可以在日常当作ID使用。狭义上的驾照,也即跟中国大陆的驾照相对应的,则是G牌。

安省拿驾照的流程比较长:笔试通过后拿到G1驾照,需要有人陪同下上路开车。约一年后可以考G2路考,考察基本驾驶技能,通过后拿到G2驾照。再过一年后可以考G牌路考,考察上高速等熟练驾驶能力。

G1和G2都算实习驾照,如果没有在驾照过期前通过下一级路考,则需要从头开始重复一遍流程。

G1理论笔试

笔试比较简单,网上有很多题库可以做。当然光看题库只够通过考试,实际补充驾驶知识推荐买一本Driver’s Handbook ,讲解非常详细。各个超市和drugstore都有卖,官方也提供免费online版 查看。

驾校课程

驾校的package一般会至少包含20小时的理论课和10小时的练车。我买的package还包含用教练车路考,等于少了一次租车的价钱。当时的价格是$500+左右,现在几年过去价格已经涨到了$600-1000了。

上驾校不是必须的,理论知识其实仔细读读Driver‘s Handbook也够了,实操的话则可以单找教练/熟人练车。驾校的好处主要是:

  1. 减少新手的心理压力。虽然这套流程不难(再难能难过签证吗),但学车本身就是一件有负担的事情,再加上找教练、租车、预约路考种种杂事,很容易增加新手的心理负担。驾校的打包all-in-one服务可以减少这些压力,让新手只需要专注在学车这一件事上。
  2. 有BDE(Beginner Driver Education)证书,会有车险折扣。具体便宜多少不清楚,但交通部总体上是偏好移民在本地完成驾校、路考这套流程,而不是在母国拿驾照、再到本地路考。

练车、找教练

驾校不是必须,但教练还是要请的。首先教练车自带副驾刹车,从安全性来说能兜底。其次,虽然理论上有G牌的人就能教,但自己会开车不等于会教人开。平时的练习也证明了这一点,Kei酱在我边上会提出很多意见,但开车时语气免不了会很急,两人都容易急躁上头。

我有过两个教练,除驾校教练外还请过一个私教,两位都是印度/南亚人。第一个驾校教练中规中矩,风格按部就班,不算特别有耐心,不会骂人但偶尔在大路遇到紧急情况也会吼我。

后来第一次路考fail后找了第二个教练,非常有耐心,说话也很柔和,还会对我不理解的一些地方解释原因。比如我不懂为什么换道一定要看盲点,他会走到盲点让我发现从后视镜真的看不到。

问题是,不知道是我驾驶没天赋还是记性太差,每次上完课东西就忘光了,那些停车的定位小技巧我也记不住。我也不可能经常租车练习,就在YouTube上看了一些停车的教学视频、甚至还下载了一些开车app。但这些“在xx位置时开始倒”的类似tips对我的帮助十分有限,而且不够灵活,稍微变一下我就不知道怎么办了。后来通过观察Kei酱停车学到的反而更多,观察多几次我就知道怎么调整了,主要还是靠练习带来的肌肉记忆和感觉,一旦我开始回忆“这个时候应该是左打还是右打”,一切就会乱套了。

另外多说一句,好像很多人会偏好找会普通话的华人教练,其实完全没有必要。我一开始也想过会不会听英文一下子反应不过来,但其实根本不会,就那么几个简单的指示词,不至于有语言问题。

G2路考

第一次路考:迷茫的赶鸭子上架

由于严重拖延,我第一次路考跟练车隔了非常久的时间。我平时没有车可以练,最后只在路考前一两周临时抱佛脚练了一会。所以到第一次路考之前,本人的实际上车时间只有驾校的11个小时,而且大部分东西都忘得七七八八,基本上是毫无经验、没准备好就不得不上了。

赶鸭子上架的结果当然是没过,出了停车场就意外不断,还两次撞上路边curb,我觉得考官大概也很崩溃。

fail之后决心好好练习,就找了上文提到的私教,从头开始练。为了防止我又忘光,这次速战速决,在一个多月后进行了第二次G2路考。

猛龙的胜利

我跟驾校argue了一下,争取到了第二次免费租教练车考试。也做了很多准备,避开了通过率最低的几个考场,预约了据说通过率相对高的Oshawa。Kei酱还帮我查了考试路线,提前到考场预习了一下场地(详见下文的小tips )。

没想到一开始就出现了意外。开出几十米后,我发现我竟然忘了系安全带!我只能停下、跟考官说明并系上,当时就觉得完了,这种安全相关的判定从来都是即死,想着就当练习了。巧的是头天晚上我们本地的球队刚获得史上第一个NBA冠军,大家都比较亢奋,考官估计心情也不错,居然在路上开始聊天,还聊得挺好的。好在我除了一开始的意外,路上都开得不错。最后考官居然也让我通过了,我觉得非常幸运。总之这次算是走大运,沾了球队的光。

G牌路考血泪史

考到G2之后我家买了车,跟Kei酱换着开。本来信心满满地准备时间一到就马上考G,但很不幸地由于我的车感不行+倒车依旧捉急+后面有车就很紧张,在自家停车场重重地撞了一次柱子之后就开始PTSD,修好之后再也不愿意开车了。

这一拖几年过去,到驾照最后一年快过期了才不得不考虑考G牌的事情。坏消息是我必须在当年内通过G牌路考,好消息是G牌路考由于covid简化了,不再考察平行停车,所以我稍微练了练高速就去考了。

太慢不等于安全

还是预约了同一个考点,也提前预习了场地和几个高速路口。但很久不开的坏处就是开得畏畏缩缩,最后由于在路口转弯和上高速变道时不够快,被考官判定没跟上traffic speed、会影响交通安全为由fail了。

有点不甘,但我也承认考官说得有道理。可能也是我高速经验太少,这次在我前面的碰巧是个超长卡车,我就过于保守不敢加上速度。好在虽然很久不开但技术问题其实不大,我也勉强克服了一点PTSD,只要不考倒车就没太大的心理压力。

极其不甘心的第二次翻车

有了上次的教训,我开车放得更开一些了。第二次预约了一个临时考场,路线非常简单,回去的路上我觉得已经稳了。可惜最后在停车场的stop sign失误,我没看清这不是个all way stop sign,且没有等另一边的车(以为距离够远),被考官判断为危险驾驶就没有通过。这次fail掉之后我非常伤心生气,也很委屈,在回家路上破防崩溃大哭,觉得路上的车都比我aggressive,凭什么我过不了。总之一百个不甘心,花了很长的时间才把心态调整过来。

Third time‘s the charm

冷静下来之后,痛定思痛好好练习,决心再也不要让考官抓到机会fail掉。有了前两次的经验,我决定好好挑个时间考试,尽量避开车多的时间,免得出现天不时地不利的情况我又不知道如何应对(还是详见下文的小tips )。最后还是选了之前的Oshawa考场,在一个周末清晨第一批考试。

没想到出现了无比神奇的展开。考官照例查验ID的时候,盯着我的驾照看了好久,说今天你生日?我一愣,才想起我ID上的生日是农历,刚好是考试这一天(定日期的时候完全忘了这码事)。当下我也不好否认,就含糊地说是。对方一乐:怎么这人连今天自己生日都不知道。考官又补充说太巧了,他brother也今天生日。我已经完全愣住,这个展开实在是没有想到,但心中暗喜,预感这次有戏。

考官倒也没有继续聊,毕竟考G要上高速,上车了就是公事公办模式。这次我已经对场地比较熟了,一切都很顺利。只是在刚上高速的时候,我一心想跟上traffic speed,不知不觉油门踩得有点重,还是考官在一边提醒我已经快130了(限速100),我才发现速度已经有点离谱(周末大早上大家都开得很快啊!)。当时心里有点打鼓,但心态还是比较自信的。

开回去之后果然考官对我说了congratulation,我终于考过G了!稍微聊了两句,下车后考官还一直念叨太巧了,待会要跟他brother讲这件事。我还是比较幸运的,从之前看帖子的经验,高速超速也是即死的一个大点。也就是考官心情好,加上当时traffic speed确实快,就放了点水让我过了。

总结:路考和平时开车是不一样的

关于路考的(偏方)小tips

下面是干货时间:

选择考点

我第一次路考的时候压根不知道考点之间还有区别,后来才发现多伦多的几个考点都是出了名的难考,failure rate高达50%,车多人多路也不好开。我后来去的Oshawa虽然不说很容易,但路至少好走多了。对这方面很在意的话建议搜索ontario road test failure/pass rate再就近选择。

最重要的考试路线

YouTube搜索G/G2 road test+考点,可以看到考试路线实况视频。YouTube过一遍之后再去场地按路线开两圈基本就差不多了。当然实际考试路线不一定完全一样,但大体是差不多的。有些路没有开过的话容易被坑,预习还是很重要的。

考试时间的玄学

尽量避免工作日高峰期,包括早晚通勤、午餐、以及下午3点之后的放学时间。这些时间段车多,也比较容易出现意外情况,新手可能会手忙脚乱影响状态。

摇头晃脑的演技

路考要求左右看时要摆动头部,Kei酱也说他考G的时候脑袋晃得像个鸭子(笑),总之观察的动作幅度要夸张一点。后来在reddit看到一个小技巧,戴鸭舌帽可以让观察动作更明显,对我这种不习惯夸张的人还挺有用的,不会由于要顾及演技而分心。

心态调整

这条主要是写给跟我一样路考fail之后心态崩掉的人。我是看了一些r/Ontariodrivetest 上的帖子才找到共鸣,其实大家fail掉之后的心理都很像,既觉得不甘心又混合着自我怀疑,还有一些“连驾照都考不过”的羞耻感。我作为一个常年对抗女性刻板印象的人,还带着一点莫名其妙的包袱,觉得自己路考不过好像是坐实了女司机技术差,也加深了羞耻感。还好reddit上的大家都很友善也很有同理心,还会提出一些建议,如果有和我一样处于心态低谷不想开车的人推荐去逛逛。

参考文章:

Best Time to Book Your Driving Test in Canada: Unlocking Success on the Road
Best Time Slots To Increase The Chance of Passing Driving Test

Photo by DriveTest.ca

柳宿增十|2023年8月小结

2023-08-09 12:49:45

Featured image of post 柳宿增十|2023年8月小结

记录时间:7.21 – 8.9
太阳经过星座:巨蟹座|Cancer
最亮恒星:柳宿增十|Tarf - β Cancri

写这篇的时候在听: L’Arc~en~Ciel「花葬」-Music Clip- - YouTube

本月事件

博客更新

看了什么

Ted Lasso

主题是足球教练,但其实跟足球本身关系不大,某些桥段还被Kei酱吐槽说不太现实。剧情上我觉得美式鸡汤太多了,我不吃这一套。笑点都比较含蓄,不是哈哈大笑的那种笑点,而是会心一笑的英式幽默。人物塑造给我的印象比剧情更深,Nate的毒舌吐槽实在太精彩了,难以忘怀。总体还是很轻松的喜剧,不费脑也没有剧情雷点,当作下饭剧还算合格。

织了什么

织了几个月的绿色小背心终于完成了 !线很细,如果不带knitting ring会非常磨手指,但成品还是很柔软的,也很合身,成就感超高!

解决Vercel被墙导致Twikoo无法评论的问题:在Vercel添加子域名

2023-08-02 11:07:16

Featured image of post 解决Vercel被墙导致Twikoo无法评论的问题:在Vercel添加子域名

写在前面

这是《在静态博客里添加Twikoo评论系统,并配置邮箱和TG通知》 的补充教程。由于文中提到的Railway 不再提供免费账户,于是换成了用Vercel 部署。但Vercel的域名被墙,这会导致大陆IP用户无法评论。这篇教程的目的就是解决这个问题。

前提条件

1. 在Vercel添加子域名

进入Vercel的twikoo项目后,点击Settings - Domains,在窗口里输入一个子域名(不要加http前缀)。这里我选择用twikoo.thirdshire.com作为我的子域名。

添加子域名

点击Add添加之后, Vercel会显示配置错误如下,并提示需要在DNS服务商处添加一条DNS记录。

添加DNS记录提示

2. 为域名添加DNS记录

DNS服务商就是给网站添加各种A record/CNAME record的地方。这里以Netlify为例,其他namecheap之类的DNS服务商也是一样的。

找到添加DNS记录的地方,新建一条DNS record,内容就按照上面Vercel提示的添加即可。

在Netlify添加DNS记录

3. 确认配置成功

添加完DNS记录之后,回到Vercel并刷新界面。看到下面这个界面,就显示DNS已经配置成功了。

子域名配置成功

想要进一步确认的话,可以点击进入这个子域名,如果网站显示“Twikoo 云函数运行正常”,就说明这个子域名可以用来当作Twikoo的入口啦。

4. 更新Twikoo设置

进入博客的配置文件,把博客文件的Twikoo设置里envID的链接替换成上面配置好的子域名。具体方法可以参考上篇教程的“设置博客” 一节。

这样配置完之后,国内用户也可以在Twikoo里面评论了~

北河三|2023年7月小结

2023-07-21 06:03:26

Featured image of post 北河三|2023年7月小结

记录时间:6.20 – 7.20
太阳经过星座:双子座|Gemini
最亮恒星:北河三|Pollux

本月庆祝

健身计划继续稳定实行中,我好像开始喜欢上力量训练了!两个月下来,肩膀和手臂的变化是最明显的,再也不是平整的一片,开始有了凹凸的线条,肌肉也逐渐明显。最让我惊喜的是搬重物的能力也变强了,以前搬一箱厨房纸走个50米就开始手酸,现在搬两箱也没什么感觉。我可是个实用主义者,不仅感叹怎么没早开发出这个能力,手臂也是我的工具,有力量很实用啊!

其他一些让人开心的事:

不那么开心的事:

博客更新

看了什么

BattleBots Season 4

看完第三季之后继续看第四季。第四季的参赛bot越来越多,一集也变长了。但不得不吐槽的是这个比赛的黑箱赛制,可操作空间太大了。bot比赛很吃对手,很多厉害的bot遇到相克的也没什么办法,所以看到有些被淘汰了的真是相当可惜。

Minions: The Rise of Gru

我和Kei酱都是小黄人粉丝,对2015年的那部小黄人电影Minions就很喜欢,这部片也不例外,明显小黄人承担了大量卖萌任务,不过我们看小黄人主题的电影不就是想看这个嘛(笑)。小Gru也很有意思,不走寻常路,不知道小孩们看了这部电影会不会就梦想变成超级大坏蛋呢,毕竟成为坏人的话就可能俘获minions的心哦~

不知道为何这两部评分都偏低。第一部Despicable Me似乎是评价最高的,但我对里面的温情戏码不太感冒,可能是因为我不喜欢小孩吧。

听了什么

最近听了好多Vocaloid系的新歌,像YOASOBI之类的。YOASOBI的旋律和声音都比较活泼,不过我还是更喜欢春茶Haruta的整体风格。

织毛线 Knitting

亚麻/棉混纺小背心织了一个月了还没织完= = 毛线比较细,感觉特别磨手,不带knitting ring的话我最多能坚持半小时,不然手指真的很痛啊。于是进度很缓慢,但织毛线本来就是耐心活,急不得,慢慢来吧~

伴侣间花销如何公平?你可能没想过的家庭支出里的性别因素

2023-07-11 18:44:30

Featured image of post 伴侣间花销如何公平?你可能没想过的家庭支出里的性别因素

本文的“伴侣”主要指婚后或Common-law。
婚姻本质上是经济契约,没有签这份契约的话就也不会产生法律上的共同财产,所以对于非法律绑定的伴侣可能本文提到的情况并不适用,请自行斟酌参考。

伴侣间的分摊模式

大概总结一下,伴侣间有以下几种分摊模式:

共享类:钱放在一起花,不分你我。根据财权不同还可以细分为两类:

AA类:有很多变种,且每种方式的具体执行方式因人而异。

以上模式各有千秋。重点是,无论你选择哪种模式,都需要面对一个问题:

什么是真正的家庭开销?

有人可能说,这还不简单?不就是房租水电,再加日常吃喝玩乐的钱。

但是很多支出虽然不是双方分享,却是双方都需要花费的,例如看病、剪头发。当然,每个人每年是否生病是不固定的,那如果有一方看病次数较多,那从个人资金里出这一部分钱,是否是对ta不公平呢?毕竟,这些都算是必需支出。

这就是我的家庭预算原则第一条:双方都可能用到的必需性支出均算作家庭开销,无论对方是否共享

此外,异性伴侣间还经常会有另一个问题:即使双方的收入一样也绝对AA,但女生往往由于要定期添置护肤品、化妆品而存不下多少钱。除了像卫生棉这样显而易见的女性必需品,还有很多支出其实是带性别化的(对女性而言俗称“粉红税”)。即使有些支出看上去并不那么“必要”(如化妆品),但由于社会期望的存在,很多时候我们并无法把这些花费完全精简掉。这就是标题说的性别因素。

所以第二条预算原则是:将个人开销去性别化,并入家庭开销

这两条其实最终要达到的是同一个目的:尽量消除对个人的支出歧视

去性别化的家庭开销分类

可能上面说得比较抽象,下面将以我家具体预算类别为例,说明什么是我认为的真正的家庭开销。

我的家庭预算是这么分类的(需要强调的类别将以粗体标记):

这一项无论在哪种模式下基本不会出现什么争议。重点是以下类别:

其中“个人护理”不仅包括两人都需要用到的沐浴露等日化用品,还包括了我的护肤及化妆品。我的护肤化妆流程都很简单所以需要购买的也不算太多。如果是有美妆的爱好,我会先分清多少是正常范围内的美妆花销,又有多少是由于对美妆的兴趣而额外产生的兴趣型花销,详情见下文零花钱制度

你没看错,礼物费用也记在家庭开销里,这符合第一条原则“都可能用到的必需性支出”。这也很方便地将礼物的预算圈在一个大致范围,避免出现双方送礼价值过于不对等的情况。P.S.我家其实有一个礼物心愿单,每年各自往里面添加心愿,对方从里面挑选购买即可。这样大家都不用为买礼物而操心,既避免了惊吓又能保留一定的惊喜感。

像PS5这样的大件购买也被划成家庭开销,因为我们两个人都会享受到。但游戏盘则要根据情况看是否归入家庭花销,具体见下文

以上所说的全部算是家庭预算。那么个人的消费,比如各种为兴趣爱好花的钱怎么办呢?这就引入了“零花钱制度”。

个人零花钱制度

零花钱制度,如字面所言就是专门分配一笔钱给双方,用于各自的私人消费。之所以上面的家庭预算要那么划分,是因为去掉个人必需+性别化支出之后剩下的,才是反映你真实私人消费的金额

至于要怎么执行,根据分配模式的不同具体方法也不一样。我家的分摊模式,之前在《记账软件YNAB:为什么它是最强的记账app》 里提到过,以前都是糊涂账,因为当时用的是懒人型AA,用YNAB记账之后则改成了共享类别里的合资型。共享型理财的一大缺点是容易为个人支出扯皮,但通过记账来合理规划预算则能很好地解决这个问题。

具体而言,我家的零花钱分配大概是这样运行的:

个人零花钱制度

  1. 拿到工资后,双方存入共同账户。这样我们就有了一个资金池
  2. 用YNAB为这笔钱制定预算,包括家庭消费、家庭储蓄和个人零花钱
  3. 家庭消费的时候,从最优的那张信用卡付款(比如在超市就用食品返现高的卡)。除了非正常支出,基本不需双方讨论
  4. 个人消费时,根据在YNAB的零花钱余额自行决定购买与否,另一方没有决策权。依旧选择最优信用卡付款
  5. 快到信用卡还款日时,用共同账户给以上所有消费还款

这其中零花钱也可以做细分。以我的零花钱分类为例,分了以下几种:

例如我想买钢笔墨水的时候,先看YNAB的零花钱单项余额够不够,余额充足就直接买。如果余额吃紧,看能不能把“游戏”的部分余额挪到这项(但这样游戏的预算就变少了),或者选择不买。

我把小金库单独立项,目的是把平时的支出跟真正想存钱买的物品区别开来。有时忽然对某个东西上头,价格也不算贵,但每个月加下来其实不少。如果把小金库跟平时支出全部混在一起,可能就会在平时消费时给自己一种“我还有很多钱可以用”的错觉,导致最后真正想买的东西买不起。

上文还提到了游戏盘需要具体分析,因为我们俩喜欢的游戏类型不一样,很多我玩的游戏对方并不喜欢,这个时候消费就应归入我的零花钱。但如果是两个人都会玩的游戏比如双人成行、或者对方突然对我的游戏感兴趣了,这时就会归入家庭开销。

此外,还有一种折中方式是将部分归入个人零花钱、部分归入家庭支出。例如Kei的婚礼西服,不能完全归入家庭预算(已经有很多套西装了,另买一套只是为了更好看合身),但完全由零花钱支出也不太公平。最后选择按4:6的比例分别归入家庭和个人零花钱,选择40%家庭预算是因为这个数额大致match我的婚纱费用。

所以,究竟是归为零花钱消费亦或是家庭消费,取决于双方是否都享受到了这项消费带来的价值。有时候可能会出现争议,这个时候就需要双方进行讨论,看能不能说(xi)服(nao)另一方把这一项算作家庭消费了。

  • 错误示范:“我要买的最新Apple Watch因为xx功能可以提升我的效率所以也能给家里带来收益啊”
  • ✅ 正确示范:“我织的毛线毯子是给猫咪用的,四舍五入家庭也享用了!所以家庭应该支付我的毛线费(^-^)~”

写在最后

每个家庭由于分摊方式不同,执行方式也会不一样。比如绝对AA的伴侣就没有零花钱制度,但可以重新考虑一下个人支出,将歧视性的支出也放在家庭开销内。

尽量消除对个人的支出歧视,才是相对的公平(Equity),而不是一味要求绝对平等(Equality)。

名图镇楼:

平等Equality vs 公平Equity

零成本、不需自建搭建Umami:开源易用的网站访问量统计工具

2023-07-04 02:30:07

Featured image of post 零成本、不需自建搭建Umami:开源易用的网站访问量统计工具

为什么不用Google Analytics

因为难用。

大多数博客都自带Google Analytics支持,但它实在太、难、用、了!界面不友好不说,加一个内部流量过滤(Internal traffic filter)都相当麻烦。它的隐私问题也是个焦点,由于追踪过于有侵略性,很多ad block会把Google Analytics屏蔽,导致无法准确反应游客访问量。

Umami 是个不错的精简版替代,开源,界面也很好看。

Umami访问量主界面

(几乎不需要的)准备工作

这是一篇新手也可以跟的、不需要自建的教程。你只需要:

如果要求不高的话可以直接用Umami官方提供的云服务Umami Cloud ,即插即用,可以直接跳到第三步 。缺点是有一些限制,比如无法过滤内部访问量、只能添加最多三个网站、数据仅保存半年等。

(已过期)第一步:用PlanetScale建立数据库

2024-04-16 更新

很遗憾,PlanetScale 已经取消免费账户。我厌烦了找免费羊毛所以已经转移到自建的服务器上了。如果有需要的话,以下服务商有免费账户可以建立数据库,仅供参考:
Supabase
Neon
Turso
AWS RDS
CockroachDB

  1. 注册完账户后,点击New database,起名为umami-db
  2. 等待一段时间,直到页面右边的Get connection strings不再是灰色的时候,点击此按钮

点击Get connection strings

  1. 在弹出的页面里,在Connect with后的下拉菜单里选择Prisma,再复制下方窗口显示的DATABASE_URL='xxx'那一大串代码,存起来待用

数据库链接

第二步:用Vercel连接数据库并部署

  1. 进入Umami官网的Running on vercel页面 ,直接点击里面的Vercel按钮
  2. 进入Vercel后,点击GitHub按钮来创建一个Github repo,名字随便
  3. 它会要求输入填入名为DATABASE_URL的Environment variables,这时找到第一步存好的代码,把引号内的内容填入进去,格式为mysql://xxx
  4. 填好之后点击Deploy进行部署,等完成之后会生成一个格式为xxx.vercel.app的链接,这个就是我们的Umami dashboard啦

添加内部访问过滤

流量过滤器很有用,尤其是如果一篇文章需要预览又经常改了又改,这时就需要让访问统计过滤掉这些内部流量。

在Umami里,内部访问量过滤可以通过设置环境变量IGNORE_IPIGNORE_HOSTNAME实现。方法为:

  1. 进入刚才创建的Vercel项目,Settings - Environment Variables,在输入变量的地方输入:

内部访问量过滤的环境变量

  1. 点击Deployments,在最上方的活动日志右边点击三个点按钮(那个东西到底叫什么……),选择Redeploy重新部署

重新部署

(可选)自定义脚本名称

这一步是为了防止部分ad blockers屏蔽Umami。同样也是进入环境变量设置里面添加TRACKER_SCRIPT_NAME这个变量:

TRACKER_SCRIPT_NAMEcustom(或任何除了script/umami/track以外的名字)

依旧是跟上一步一样点击Redeploy重新部署。等待完成后,再进入更新后的xxx.vercel.app链接就完成所有的部署设置啦!

第三步:设置Umami

第一次进入Umami的时候需要输入用户名密码。根据官网文档 ,默认的用户名是admin,密码是umami。登录之后可以进Profile更改密码。

添加网站非常简单,点击Add website,输入网站名称和地址即可,注意网址Domain这里不需要包括https,格式为mywebsite.com

第四步:把代码嵌入到博客

添加完网站之后,点击Edit,进入Tracking code界面并复制窗口内的代码。

Tracking code

现在需要做的就是把这行代码粘贴到博客<head></head>之间。取决于博客的不同,嵌入代码的文件也会不一样。对于静态博客一般是header.html或者其他包含<head>的html文件,可以参考博客文档或者全局搜索<head>。最终格式为:

<head>
 <script async src="https://xxxxxxxxx.vercel.app/script.js" data-website-id="xxxxxxx"></script>
</head>

对于我的Hugo Stack主题,更改的是layouts/partials/head/custom.html这个文件,直接将复制的代码粘贴到custom.html即可。

大功告成!Umami真的很好看又极简呀,该有的功能比如单个页面统计、地理图啥的都有,filter也很简单直观。非常推荐给个人网站使用~

第一次投出选票是什么样的体验?

2023-07-01 20:36:19

Featured image of post 第一次投出选票是什么样的体验?

加拿大的三类选举

加拿大一共有三个选举,都是四年一次:

其中只有市政选举是直接选举,也就是像台湾那样直接统计每个候选人的获选票数。而联邦跟省选均为间接选举,即通过投给所在选区的国会议员(MP)/省议员(MPP)来投给自己支持的执政党/省长。

小知识:一些跟美国的区别

都知道联邦大选是选总理(Prime Minister),但加拿大的选票里并不会像美国那样出现总理候选人的名字,而是通过投给所在选区的议员(Member of Parliament)来间接投票。而选区通常比较小,在大城市也就几个街区的面积。每个议员都代表一个党派,最终哪个党赢得的选区多,他们的党魁也就是总理了。

另外一点跟美国非常不同的就是选区计票制度。加拿大是所有选区直接加起来,看哪个党赢的区多则胜。美国则是“选举人团(Electoral College)+赢家通吃制”(the winner-takes-all),简单来说,就是计算选区的时候多了一层,即先计算每个州内的选区,看各州是哪个党赢,再通过计算党派赢得的州来判断联邦选举的结果。这种算法会导致无法准确反映摇摆州的选区比例,这也是最近几次美国大选饱受诟病的原因。

我入籍的时间十分不巧,2022年有两次选举,一次省选一次市选,都错过了,联邦大选也是2021年才举行完。本来以为要等到2025年才能第一次看到选票,没想到今年初多伦多市长John Tory由于办公室丑闻辞职,触发了这次市长选举。

投票前还是得注册

其实在入籍仪式举行完的当天我就火速去了Elections Canada Elections Ontario 完成了网站上的选民注册。一直以为在Elections Ontario注册过之后就算登记完成了,能直接在信箱收到选票。但不知道是不是数据不通,我并没有收到,查了市政厅网站发现还是需要在选举日当天去投票站登记。

投票有两种方式,一种是邮寄选票(Mail-in ballot),可以在选举日之前提前寄出,另一种就是传统的去投票站投票。选举日在6月下旬,从6月中起就已经开始有人陆续寄选票了。在这期间候选人之争也愈演愈烈,民调显示Olivia Chow支持率遥遥领先,但后来前任市长给另一位候选人Ana Bailão公开背书,支持率也一路飙升,颇有后来居上的势头。

耐着性子等到了选举日当天。这是个周一,经理一大早就在工作群里表示今天要投票的赶紧出门投票别管工作了(笑)。我和Kei酱早早就查好了最近的投票点,带上驾照就出发了。说到ID也挺好笑,在网上看到要带ID登记时的第一反应是带护照或者公民证件,不然人家怎么知道自己有资格投票呢?事实证明我又老中思维了。网站上写明了不收护照,因为护照上没有地址,无法验证是不是居住在当前选区。我事后还琢磨,那万一有不是公民的人投票了那怎么办呢?但想了一想,大约没人愿意冒这个风险去投一个不一定能左右结果的票。所以投票站的人员全都默认你有投票权,只需确认是在相应的选区就行。这也算是信用社会的又一例证吧。

投票站离我家很近,是一个社区活动中心之类的地方。进去之后跟着“VOTE”字样的黄标指引牌到了内部的一个门厅,开始有工作人员打招呼进行人工指引。投票点是一个大厅,里面人不多,放了几张桌子供工作人员处理投票流程。

注册过程很简单。工作人员先核对我的名字有没有在他们的表格里(大概是Voters’ list),确认不在之后递给我一张表让我填写,里面也就是最简单的姓名和住址。填完之后看了ID确认无误,就转接给另一位大概是负责发选票的工作人员。我有些紧张地表示这是我第一次投票,她再次核对了我ID上的住址,然后一脸笑容地递给我一个纸质文件夹,指着后面一排带屏障(screen)的桌子,说我可以去那个后面投票,投完后交给出口附近的工作人员就好了。

简单异常的选票

走到简易屏障的桌子后面坐下,才有机会好好地看看手里刚拿到的这个东西。它是一个很长的白色纸质文件夹,比A4纸甚至Legal size还要长得多,上面简单地印着“Secrecy Folder”,最底下是多伦多的市标。标题下还印有如何投票的示意图,用法和以前涂的答题卡一模一样。

打开文件夹,里面只有一张纸,除了再次出现的市标和示意图之外,剩下的就是长长的市长候选人名单了,一共有102名候选人。大概是因为在处理完全没见过的东西,我脑子好像有些宕机,明明是按照姓氏首字母排序,我来回扫了两三遍才找到我想要投的名字。用桌上附带的笔在名字右边的圈圈里仔细涂好,确认没错后合上文件夹。

离开投票区,出口边上的工作人员已经准备好了。我把文件夹递给他之后就要走,没想到他还叫住我,让我看着他把文件夹里的选票正面朝下放进一个机器里,等机器屏幕显示扫描完成之后他才笑着说这才算完成了呢,我也打趣说这还挺智能的嘛(后来想一想我好像在说废话……都答题卡了当然有机器扫描啦)。

和我一起来的Kei酱已经投完了,他还开玩笑说看我花了那么长时间,没有投错人吧?我笑着怼回去,但还是一块回忆了候选人的名字位置,然后一起大笑说没有投错没有投错。

总而言之,第一次投票体验就是这么平淡无奇~ 全程大概半小时不到吧。

选举结果发表

晚上8点投票正式截止,之后各个媒体都在直播计票统计。我之前也看过好几次选举直播,但几十万票里有我的一份这还是头一次,感觉真的非常奇妙。嘉宾们都在谈论着Olivia Chow的票数逐渐上升,说她的香港移民身份、她的带口音的英语是如何让大家有共鸣,如果胜选,她将是第一位racialized的市长(不知道怎么措词才合适,非白人种族?)。看到这里我有点想哭又有点生气。是啊,多伦多是如此多样(diversity),以至于一半以上的居民都是海外出生。然而这样一个城市,到现在居然还没有一位非白人的市长,不是很讽刺吗。

到9点的时候,媒体宣布Olivia Chow获胜了。虽然是意想之中,但还是很激动。获胜的选票里有我的一票耶!而且票数差距其实很小,还好这是直选,如果是按照各选区计票的间接选举,好几个区的票数相差只有十位甚至个位数,结果如何还不好说。

她的获胜演讲也让我非常有共鸣:

If you ever doubted what’s possible together, if you ever questioned your faith in a better future, and what we can do with each other, for each other, tonight is your answer.

我想我知道的。这就是多伦多应该有的样子:永远给人希望,给人第二次机会,即使口袋窘迫也能好好生活下去。她的目标就是确保这些的延续。

加拿大的政治分布

最后再聊聊我印象中加拿大的政治分布吧。其实从历届联邦选举中就能发现加拿大各省的政治倾向很明显,像草原三省(Alberta,Saskatchewan,Manitoba)都偏Conservative,而安省以及大西洋区偏Liberal,BC则是三分天下,至于魁省吗……那当然是要独立的魁党了(笑)。以及无论是哪个地方都是越downtown的区域越liberal。

2021年联邦大选的选区结果分布

图注1

至于省选和市选,政治观的影响相对会小很多。省选的候选人虽然也是党内代表,但毕竟选上去的人很可能会对口袋里的钱有实际影响,很多人会变成墙头草,谁提的政策有利就投谁。这大概也是安省作为一个liberal大后方,却连续几届选出了conservative派省长的原因之一。市选就更不用提了,候选人甚至都不代表自己党派,大家关心的也都是建多少公寓、公共交通怎么提高这种影响生活方方面面的话题。

应该和人聊政治吗?

出国之前大家都说不要跟人聊政治,但实际生活在这里发现完全不是这么回事……尤其是在选举前后,前前后后总会聊到各个候选人的政策,许多人都会或明或暗地表示自己的倾向。对移民来说,地理位置这时就尤为重要了。在多伦多尤其是downtown,基本可以安心发表各种liberal言论。可以想象如果是一位conservative,在同样地点的办公室听到周围铺天盖地的liberal讨论大约会气到自闭。相对的,如果是liberal铁杆支持者居住在草原三省,大概在聊政治时也得斟字酌句吧。

最后插播一个culture shock回忆

写到这里又想起一个人。我当时刚来多伦多不久,还没有PR身份,也不知道那时在进行省选。有一天选区的市议员(City Councillor)敲了我家门,说她要参加省选,希望我们能看看她的campaign。我和Kei酱听了来意后,歉意地表示我们还只是在申请PR不是公民,但她并没有马上走人,而是询问我们愿不愿意入党,说党内投票即使是非公民也可以参与。我们都被她的诚恳和坚持感动到了,不但入了党还捐了一点点钱。

后来有一天早上我照例去坐地铁上班,惊讶地发现她在早上六点的地铁站口一个人发传单。没有助手,没有摄影,只有她一个人拿着一叠宣传单在跟地铁通勤的人群打招呼。她当了挺久的市议员,大概很多人也认识她了,时不时有人喊她名字。我接了她的传单,祝她日安。她可能早就不记得我了,但我看到她的那一刻觉得特别震撼。在我认知里市议员怎么也算是一个“xx区长”之类的“官”了,一个“官”居然起早贪黑到地铁站独自给自己打广告,在当时的我看来实在是难以想象。

每次聊选举时都会想起这件事。大概是到加拿大以来印象最深的一次culture shock了吧。

Photo by City of Toronto


  1. 之所以不用普通地图是因为地理面积容易造成误导。很多地广人稀的地方看着面积大但其实只有一个选区,对结果影响力很小。图中的Cartogram是根据选区的比例划分面积,更加合理。 ↩︎

Hugo Stack主题装修笔记Part 2

2023-06-25 10:28:11

Featured image of post Hugo Stack主题装修笔记Part 2

没想到这么快就有part 2了……上篇装修笔记 越写越长,索性再开一篇好了。按照这个倒腾的速度,大概今年还会出现part 3(不要再立flag了!)

给首页的分类卡增加对应的颜色条

最终效果:

分类卡片

前情提要:准备工作在上篇装修笔记 - 调整分类样式并在首页显示分类的条目数量) 里。

首先需要在分类卡的_index.md文件里定义每个类别的背景色,这个之后会用到。好看的配色我一般会去Color Hunt 找找灵感,需要微调的话可以参考Color Hex

格式如下:

---
# content/categories/life/_index.md
title: 生活日常
# Badge style
style:
 background: "#d09daa"
 color: "#fff"
---

之后再去assets/scss/partials/widgets.scss找到.category-label并在如下位置增加border-left设置。

.category-label {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;

 a {
 border-left: 6px solid; // Set border for category widget
 background: var(--card-background);

最后去layouts/partials/widget/categories.html找到category-label,修改代码如下:

 <div class="category-label">
 {{ range first $limit $context.Site.Taxonomies.categories.ByCount }}
 <a href="{{ .Page.RelPermalink }}" class="font_size_{{ .Count }}"
 style="border-left-color: {{ .Page.Params.style.background }}; filter:saturate(1.7);">
 {{ .Page.Title }}<span class="category-count">{{ .Count }}</span>
 </a>
 {{ end }}

由于我设置的背景色都偏灰,但颜色条我想让它亮眼一些,所以这里加了个让颜色饱和度更高的filter:saturate(1.7);,不需要的话可以删掉。

双栏友情链接,并增加博主备注

代码参考了Bore’s Notes的博客 ,我做了以下修改和优化。

具体过程如下:

创建友链layout

新建文件layouts/page/links.html

点我展开代码
{{ define "body-class" }}article-page keep-sidebar{{ end }}
{{ define "main" }}
 {{ partial "article/article.html" . }}

 <div class="article-list--compact links">
 {{ $siteResources := resources }}
 {{ range $i, $link := $.Site.Data.links }}
 <article>
 <a href="{{ $link.website }}" target="_blank" rel="noopener">
 <div class="article-details">
 <h2 class="article-title">
 {{- $link.title -}}
 </h2>

 {{ with $link.description }}
 <footer class="article-time">
 {{ . }}
 </footer>
 {{ end }}
 {{ with $link.notes }}
 <footer class="article-link">
 {{ . }}
 </footer>
 {{ end }}
 </div>

 {{ with $link.image }}
 <div class="article-image">
 <img src="{{ . }}" loading="lazy">
 </div>
 {{ end }}
 </a>
 </article>
 {{ end }}
 </div>

 {{ if not (eq .Params.comments false) }}
 {{ partial "comments/include" . }}
 {{ end }}

 {{ partialCached "footer/footer" . }}

{{ end }}

添加友链数据

新建文件data/links.json,如果没有data文件夹的话就自己建一个。这个是用来存友链数据的文件,image,description和notes是可选项。格式如下:

[
 {
 "title": "Github",
 "website": "http://github.com",
 "image": "https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png",
 "description": "Something",
 "notes": "我的备注"
 },
 {
 "title": "Google",
 "website": "http://google.com",
 "image": "link-img/google.png",
 "description": "Something",
 "notes": "我的备注"
 }
]

其中第二个示例的图片储存在assets/link-img/google.png。

Mount本地友链图片位置

由于本地图片存在assets/link-img下,还需要额外mount到static文件夹(原理我也只懂个大概,总之这样就对了!)。在config/_default/config.toml文件增加以下代码1

[module]
[[module.mounts]]
 source = 'content'
 target = 'content'
[[module.mounts]]
 source = 'static'
 target = 'static'
[[module.mounts]]
 source = 'layouts'
 target = 'layouts'
[[module.mounts]]
 source = 'data'
 target = 'data'
[[module.mounts]]
 source = 'assets'
 target = 'assets'
[[module.mounts]]
 source = 'i18n'
 target = 'i18n'
[[module.mounts]]
 source = 'archetypes'
 target = 'archetypes'
[[module.mounts]]
 source = "assets/link-img"
 target = "static/link-img"

添加双栏样式

修改css为双栏。这里直接用了上面教程里的代码,在assets/scss/custom.scss里加上:

点我展开代码
//友情链接双栏
@media (min-width: 1024px) {
 .article-list--compact.links {
 display: grid;
 grid-template-columns: 1fr 1fr;
 background: none;
 box-shadow: none;

 article {
 background: var(--card-background);
 border: none;
 box-shadow: var(--shadow-l2);
 margin-bottom: 8px;
 border-radius: 10px;
 &:nth-child(odd) {
 margin-right: 8px;
 }
 }
 }
}

设置友链md文件

在友链文件(我的放在content/page/friends/index.md)里设置layout为links

title: 友链 | Friends
slug: "friends"
layout: "links"

调整备注格式

在assets/scss/partials/article.scss里找到.article-list--compact并增加.article-link样式。这里的颜色变量--emphasize-text-color用的是上篇装修笔记 设置过的样式,没有的话你可以设成自己喜欢的。

// .article-list--compact

 .article-time {
 font-size: 1.4rem;
 }

 .article-link {
 color: var(--emphasize-text-color);
 font-size: 1.3rem;
 font-style: italic;
 }

给友情链接增加休眠区并改为三栏

效果如图:

三栏的友链休眠舱

具体步骤如下:

添加冷冻舱数据

新建data/frozenlinks.json。这个跟上面的双栏友链的link.json一样,是存放休眠/失效友链的数据文件,格式跟link.json相同。

[
 {
 "title": "",
 "website": "",
 "image": "/link-img/some_picture.png",
 "description": "",
 "notes": "沉睡的博客们会被放在这里喔~"
 },
 {
 "title": "Github",
 "website": "http://github.com",
 "image": "https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png",
 "description": "Something",
 "notes": "我的备注"
 }
]

添加三栏样式

三栏样式来自SIAE.SAUCE的博客 。由于我们同时使用了双栏和三栏样式,还需要额外定义变量article-list--extra-compact。在assets/scss/custom.scss里添加如下代码:

/* Extra compact style article list for frozen links */
.article-list--extra-compact {
 border-radius: var(--card-border-radius);
 box-shadow: var(--shadow-l1);
 background-color: var(--card-background);
 --image-size: 50px;

 @include respond(md) {
 --image-size: 60px;
 }

 article {
 & > a {
 display: flex;
 align-items: center;
 padding: var(--small-card-padding);
 gap: 15px;
 }

 &:not(:last-of-type) {
 border-bottom: 1.5px solid var(--card-separator-color);
 }

 .article-details {
 flex-grow: 1;
 padding: 0;
 min-height: var(--image-size);
 gap: 10px;
 }

 .article-title {
 margin: 0;
 font-size: 1.4rem;

 @include respond(md) {
 font-size: 1.6rem;
 }
 }

 .article-image {
 img {
 width: var(--image-size);
 height: var(--image-size);
 object-fit: cover;
 }
 }

 .article-time {
 font-size: 1.3rem;
 }

 .article-link {
 color: var(--emphasize-text-color);
 font-size: 1.3rem;
 font-style: italic;
 }
 }
}

/* 冷冻舱友情链接修改为三栏 */
@media (min-width: 1024px) {
 .article-list--extra-compact.links {
 display: grid;
 grid-template-columns: 1fr 1fr 1fr;
 background: none;
 box-shadow: none;
 gap: 1rem;

 article {
 background: var(--card-background);
 border: none;
 box-shadow: var(--shadow-l2);
 margin-bottom: 8px;
 border-radius: var(--card-border-radius);
 &:nth-child(odd) {
 margin-right: 8px;
 }
 }
 }
}

创建友链layout

在layouts/page/links.html里,在双栏友链的后面添加代码:

<!-- 添加三栏冷冻休眠仓 -->
<h3>冷冻休眠舱</h3>

 <div class="article-list--extra-compact links">
 {{ $siteResources := resources }}
 {{ range $i, $link := $.Site.Data.frozenlinks }}
 <article>
 <a href="{{ $link.website }}" target="_blank" rel="noopener">
 <div class="article-details">
 <h2 class="article-title">
 {{- $link.title -}}
 </h2>

 {{ with $link.description }}
 <footer class="article-time">
 {{ . }}
 </footer>
 {{ end }}
 {{ with $link.notes }}
 <footer class="article-link">
 {{ . }}
 </footer>
 {{ end }}
 </div>

 {{ with $link.image }}
 <div class="article-image">
 <img src="{{ . }}" loading="lazy">
 </div>
 {{ end }}
 </a>
 </article>
 {{ end }}
 </div>

这样双栏友链+三栏冷冻休眠舱的设计就完成了。以后有失效或者休眠的友链,把对应的博客从data/links.json移动到data/frozenlinks.json即可。

用不蒜子显示网站总访问量和总访问数,并初始化

不蒜子 是一个极简网页计数器,可以在网页下面显示网站总访问量和访客人数,效果如图:

不蒜子统计

由于我网站已经运行了一段时间了,需要初始化访问次数。试用了多个教程,发现调整数值后不蒜子很容易出现显示bug,包括且不限于:网页需要二次刷新才能看到正确数值;拖到底发现数值还未更新。最后比较满意的实现办法如下:

首先在layouts/partials/footer/footer.html的适当位置添加不蒜子代码

<!-- Add busuanzi不蒜子 count -->
 <span id="busuanzi_container_site_pv" style='display:none'> 本站总访问量 <span id="busuanzi_value_site_pv"></span></span>·
 <span id="busuanzi_container_site_uv" style='display:none'> 总访客数 <span id="busuanzi_value_site_uv"></span></span>

在config/_default/params.toml文件里定义初始化数值,site_offset是网站访问量,visitor_offset是访客人数。我之前用Google Anlaytics,这些可以从历史数据里查到。示例如下:

[busuanzi]
enabled = true
site_offset = 10000
visitor_offset = 5000

在layouts/partials/head/script.html添加如下代码。之所以放在head里是因为这样加载最快,如果图省事一起放在上面的footer里就会遇到我之前所说的显示bug。

代码来自始终的博客 ,我做了一点修改:

<!-- Add busuanzi -->
{{- if .Site.Params.busuanzi.enabled -}}
<script async src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
<meta name="referrer" content="no-referrer-when-downgrade">
<!-- Add busuanzi initialization count -->
<!-- 不蒜子计数初始值纠正 -->
<script src="//cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script>
 $(document).ready(function () {
 var int = setInterval(fixCount, 100);
 var busuanziSiteOffset = {{ .Site.Params.busuanzi.site_offset }
 }
 var busuanziVisitorOffset = {{ .Site.Params.busuanzi.visitor_offset }}
 function fixCount() {
 if ($("#busuanzi_container_site_pv").css("display") != "none") {
 clearInterval(int);
 $("#busuanzi_value_site_pv").html(parseInt($("#busuanzi_value_site_pv").html()) + busuanziSiteOffset);
 $("#busuanzi_value_site_uv").html(parseInt($("#busuanzi_value_site_uv").html()) + busuanziVisitorOffset);
 }
 }
 });
</script>
{{- end -}}

当然,由于没有本地过滤,不蒜子的计数肯定没有我之前推荐的umami网站访问统计工具 那么准确,不过这就是看个乐乎嘛。

P.S. 在本地预览网页时,不蒜子的访问量显示会异常高,这是正常的,因为localhost在测试博客时已经被访问过很~多~次,等push之后就会显示正常的访问量了。

参考文章:

Hugo Stack主题配置与使用 | Bore’s Notes
Being able to reference image files from assets - #2 by bep - support - HUGO
Configure Modules | Hugo
Hugo Stack 主题折腾笔记
[不蒜子 - 极简网页计数器
JQuery实现“不蒜子”初始化首次数据 - 国际哥的独立博客
不蒜子计数器初始化的非官方办法 | 始终

Photo by Huy Phan on Unsplash


  1. 我测试过只mount assets/link-img好像也没有问题。前面要加一串根目录的mount是来自这个回答 但没说为什么,Hugo相关文档 写得也语焉不详,以防万一还是加上了。如果有谁知道原理的话还烦请赐教。 ↩︎

毕宿五|2023年6月小结

2023-06-21 23:41:05

Featured image of post 毕宿五|2023年6月小结

从本月开始用黄道十三星座作为月小结的更新时间点啦!在“关于”页面里 可以看到详细的介绍。

灵感是源自二十四节气,看到有博主用它来标记周记博文,觉得很有意思。但我写的是每月小结,用二十四节气无疑会浪费掉一半的好名字。

然后灵光一现,不是有黄道十二宫吗,跟十二宫同气连枝的黄道星座也算是正儿八经的天文历法,十三星座也差不多跟月总结对应。那我就用每个星座最亮的星作为月标记好了。不直接用星座名纯属不想被认为是神棍(⬅️等等你难道不是吗)。

所以本月是毕宿五(金牛座α)。为了方便起见,更新时还是继续沿用公历“x月小结”的标题。

记录时间:5.14 – 6.19
太阳经过星座:金牛座|Taurus
最亮恒星:毕宿五|Aldebaran “The Follower”

写这篇的时候在听:
春茶メドレー2020春49曲 作業用BGM Harutya best songs 2020 Spring - YouTube
Yuja Wang: Rachmaninov Piano Concerto No. 2 in C minor Op. 18 [HD] - YouTube
Horowitz plays Rachmaninoff Concerto No 3 NYP Ormandy 2012 Remastering - YouTube

本月庆祝

30天的健身计划执行了大半啦! 除了第二个周末用园艺劳作替代了拳击,其他全部都照计划练习了!

上个月打了一个月的有氧拳击2 ,感觉身体适应得不错,再加上我也不追求减脂,就想着加点力量训练。我练的是Caroline Girvan的IRON系列 ,再加上一点有氧拳击作为缓冲。前两天练IRON,第三天打拳,第四天休息,四天一个循环。这个安排对我来说刚刚好,训练部位在练完力量之后的一两天经常会延迟酸痛,这个循环刚好可以错开酸痛的部位,留足时间休息。

最开始几天是在家举5磅的小哑铃,后来就(第一次)去健身房了。目前上肢只能举10磅左右,不过能坚持我已经非常满意了。

30天训练表

给植物们换盆、驱虫。不得不说养绿植可能是我近年做过的最错误的决定。我完全低估了养植物需要的精力,无事发生的时候还可以应付,麻烦的是时不时就出现的各种问题。我家植物受thrips虫害很久了,这个月我抱着死马当活马医和不成功便成(diu)仁(diao)的心态,买了一种叫Diatomaceous earth的粉来驱虫,总归暂时得到了控制。但即使没有虫害,要定期检查、按时浇水也很累。以后应该不会再买植物了,就算买也只会买特别皮实好养的。

新的尝试

我单方面决定把 什么值得买 单独拿出来写推荐总结,混在每月小结里实在不好找。估计攒个半年或一年能写个购物剁手推荐吧。

夏日刨冰

天气热了就天天想吃冰。用刨冰机做了好几款夏日刨冰,还挺成功的。我觉得比冰淇淋好,北美的冰淇淋总是太甜也很负担,而且一罐分量足,我家只有我一个人吃就总是吃不完。刨冰虽然上面也一堆小料,但随吃随做不会剩下,总体而言也还好。

米线麻辣烫meal prep

起因是看到了象友的这条嘟嘟 ,作为米线爱好者,必须马上准备起来了!把各种冷冻竹笋、藕片和蟹柳全都分装好,第二天中午煮煮食材再自己调个简易汤底就是超级豪华的一餐了。工作日午餐能吃这么丰盛,顿时感觉打工也没那么难熬了。

感恩长毛象,为象友的创意深深折服。

时间管理App 3X3

本来不想再折腾这类app的,毕竟ATracker用得意外地顺手,但偶然看到这款又心动了。我很喜欢它的理念:“connect the dot”,算是把双链笔记应用在了时间管理上。简单来说,就是把月目标甚至年目标跟每日待办之间进行关联,这样能很方便地看出自己在项目x总共花了多少时间,也能进一步看到相关的技能y花的时间总数。

学习成本还是挺高的,花了半天看教程和建立自己的系统。好在有ATracker的经验在前,现在对自己想要的功能有一个比较清晰的认识,不需要的功能坚决不折腾。对于这类app,一定要让工具适应我,而不是我去适应工具。买了一个月的pro版试试,如果我能用超过三个月再回来写repo吧。

博客装修和更新

一句话概括,总之是个灵感井喷和使劲折腾的状态。

看了什么

BattleBots Season 3

BattleBots实在太下饭了!这是个机器人版的格斗比赛,连赛制都跟拳击一样是三分钟一回合。最好笑的是其中一个主持人是个拳击格斗比赛冠军,退役后转行当机器人格斗解说就……莫名地喜感。大部分机器人长得差不多这样⬇️:

Witch Doctor

偶尔也会混入这样的长相:

大眼睛大睫毛

不要被它们的外表蒙蔽了,看上去没多大威胁,但这毫无疑问是个极其暴力的游戏。我之前看过几季,一季比一季暴力,机器人的毁灭程度也随着技术更新逐渐进化。是个很轻松的娱乐节目,不知为何就很下饭,还能随看随停,非常推荐。

听了什么

拉赫曼尼诺夫第三钢琴协奏曲 by 王羽佳

去本地音乐会听的,同场还有Shostakovich Symphony 1,但我对这首不是太感冒。拉赫曼尼诺夫的第二钢协实在太有名了,相比之下第三钢协的讨论不是很多,但这首真是很棒的曲子。起承转合十分流畅,主题贯穿三个乐章,从头到尾都透露着一股纠结,十分有整体感。之所以被拉二掩盖了光辉,大概是拉二开头的那几个和弦和第二乐章的婉转如诗过于惊艳了吧。

王羽佳的演奏十分忘我,我本来由于一些场外插曲有些心不在焉,但她完全把我吸引住了。她好有力量,瘦弱的手臂,却有着把钢琴弹出定音鼓的能量。曲终,周围的观众起立热情鼓掌,我还在被震在原地擦眼泪。

大概上天还是眷顾我的吧,让我一个没有任何乐理基础的人也能欣赏到古典音乐的美。我也曾有疑问,为什么在生活中极少共情,却会在音乐厅潸然泪下?我感受到的音乐,难道真的和别人不一样吗?后来看到Quora的一篇回答 就释然了,也很开心。原来这是赐予我的礼物,果然有失必有得。

织毛线 Knitting

前几周开工了一个苔藓绿的棉/亚麻背心,目前最复杂的部分已经完成了,只需要无脑重复剩下的图样就行。但还是有一些对手艺不太满意的地方,说不定哪天一个看不顺眼就拆掉重织了……望天。实在织不完就放到明年夏天穿吧!


Photo by Glen Carrie on Unsplash

Hugo Stack主题装修笔记

2023-06-18 06:20:45

Featured image of post Hugo Stack主题装修笔记

这篇笔记写太长了,之后会继续在Hugo Stack主题装修笔记Part 2 里更新


在归档页增加标签云Tags

显示效果:

归档页的标签们

在layouts/_default/archives.html里的</header>后面加上如下代码:

{{- $taxonomy := $.Site.GetPage "taxonomyTerm" "tags" -}}
{{- $terms := $taxonomy.Pages -}}
{{ if $terms }}
<section class="widget tagCloud">
<h2 class="section-title">{{ $taxonomy.Title }}</h2>

 <div class="tagCloud-tags">
 {{ if ne (len $.Site.Taxonomies.tags) 0 }}
 {{ range $name, $taxonomy := $.Site.Taxonomies.tags }}
 {{ $tagCount := len $taxonomy.Pages }}
 <a href="{{ "/tags/" | relURL }}{{ $name | urlize }}" class="tagCloud-tags">
 {{ $name }}<span class="tagCloud-count">{{ $tagCount }}</span>
 </a>
 {{ end }}
 {{ end }}
 </div>
<section>
{{ end }}

以上代码用了tagCloud-count来修饰tag后面的数字,所以还需要在assets/scss/partials/widgets.scss里面加上如下代码,让数字变成浅灰:

.tagCloud {
 .tagCloud-count {
 color: var(--body-text-color);
 }
}

圆角标签

在assets/scss/variables.scss做如下修改:

--tag-border-radius: 24px; // Change from 4px to make it round corner
--category-border-radius: 4px; // Add category border setting

其实改了--tag-border-radius圆角标签就已经完成了。但由于Stack主题的“分类”也跟标签共用css,所以首页的分类也会变成圆角。要想维持分类的原样,还需要做以下改动。

调整分类样式并在首页显示分类的条目数量

首先在assets/scss/partials/article.scss里找到.article-category并替换成以下代码:

点我展开
.article-category {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;

 a {
 background: var(--card-background);
 box-shadow: var(--shadow-l1);
 border-radius: var(--category-border-radius);
 padding: 8px 20px;
 color: var(--card-text-color-main);
 font-size: 1.4rem;
 transition: box-shadow 0.3s ease;

 &:hover {
 box-shadow: var(--shadow-l2);
 }
 }
 }

在assets/scss/partials/widgets.scss增加如下代码:

点我展开
/* Category widget */
.category {
 .category-label {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;

 a {
 background: var(--card-background);
 box-shadow: var(--shadow-l1);
 border-radius: var(--category-border-radius);
 padding: 8px 20px;
 color: var(--card-text-color-main);
 font-size: 1.4rem;
 transition: box-shadow 0.3s ease;

 &:hover {
 box-shadow: var(--shadow-l2);
 }
 }
 }
 .category-count {
 margin-left: 7px;
 color: var(--body-text-color);
 }
}

最后在layouts/partials/widget/categories.html作如下修改。其中我加上了{{ .Count }}来显示分类的条目数量。

<section class="widget category">
 <div class="widget-icon">
 {{ partial "helper/icon" "categories" }}
 </div>
 <h2 class="widget-title section-title">{{ T "widget.categoriesCloud.title" }}</h2>

 <div class="category-label">
 {{ range first $limit $context.Site.Taxonomies.categories.ByCount }}
 <a href="{{ .Page.RelPermalink }}" class="font_size_{{ .Count }}">
 {{ .Page.Title }}<span class="category-count">{{ .Count }}</span>
 </a>
 {{ end }}
 </div>
</section>

修正受影响的代码块样式

默认的代码Copy按钮也跟标签共用一个css设定,所以要保留方形Copy键也需要做相应改动。在assets/scss/partials/layout/article.scss找到下列项并修改:

.copyCodeButton {
 border-radius: var(--category-border-radius);
}

同理,文内的inline代码也需要修正,依旧是在article.scss里修改:

code {
 border-radius: var(--category-border-radius);
}

“博客已运行x天x小时x分钟”字样

显示效果:

博客已运行x天x小时x分钟

在layouts/partials/footer/custom.html里添加以下JS代码,其中s1是网站创建日期。代码参考自这里 ,我加上了小时和分钟的计算。

<!-- Add blog running time -->
<script>
 let s1 = '2023-3-18'; //website start date
 s1 = new Date(s1.replace(/-/g, "/"));
 let s2 = new Date();
 let timeDifference = s2.getTime() - s1.getTime();

 let days = Math.floor(timeDifference / (1000 * 60 * 60 * 24));
 let hours = Math.floor((timeDifference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
 let minutes = Math.floor((timeDifference % (1000 * 60 * 60)) / (1000 * 60));

 let result = days + "天" + hours + "小时" + minutes + "分钟";
 document.getElementById('runningdays').innerHTML = result;
</script>

再在layouts/partials/footer/footer.html里添加以下代码:

<!-- Add blog running time -->
<section class="running-time">
本博客已稳定运行
<span id="runningdays" class="running-days"></span>
</section>

在assets/scss/partials/footer.scss里添加风格样式,这里我单独把计时的部分加粗,并改了颜色。

.running-time {
 color: var(--card-text-color-secondary);
 font-weight: normal;

 .running-days {
 font-weight:bold;
 color: var(--emphasize-text-color);
 }
}

上面的计时部分设置成var(--emphasize-text-color),这样能比较方便地在assets/scss/variables.scss里设置暗色模式的颜色:

 --accent-color-text: #fff;
 --body-text-color: #b0b0b0;
 --emphasize-text-color: #9e8f9f; // Add emphasize font color

 &[data-scheme="dark"] {
 --emphasize-text-color: #d5cfc4; // Add emphasize font color for dark scheme
 }

总字数统计:“发表了x篇文章,共计x字”

显示效果:

博客总文章和字数统计

在layouts/partials/footer/footer.html里增加以下代码,其中文章篇数统计参考了这篇 ,字数统计的展示方式参考了小球飞鱼的博客

<!-- Add total page and word count time -->
<section class="totalcount">
 {{$scratch := newScratch}}
 {{ range (where .Site.Pages "Kind" "page" )}}
 {{$scratch.Add "total" .WordCount}}
 {{ end }}
 发表了{{ len (where .Site.RegularPages "Section" "post") }}篇文章 ·
 总计{{ div ($scratch.Get "total") 1000.0 | lang.FormatNumber 2 }}k字
</section>

在assets/scss/partials/footer.scss里修改风格:

.totalcount {
 color: var(--card-text-color-secondary);
 font-weight: normal;
 margin-bottom: 5px;
 }

外部链接后面会显示图标

显示效果:

外部链接图标

在layouts/_default/_markup/render-link.html里{{ .Text | safeHTML }}之后增加如下代码,代码源自这篇

{{ if strings.HasPrefix .Destination "http" }}
<span style="white-space: nowrap;"><svg width=".7em"
 height=".7em" viewBox="0 0 21 21" xmlns="http://www.w3.org/2000/svg">
 <path d="m13 3l3.293 3.293l-7 7l1.414 1.414l7-7L21 11V3z" fill="currentColor" />
 <path d="M19 19H5V5h7l-2-2H5c-1.103 0-2 .897-2 2v14c0 1.103.897 2 2 2h14c1.103 0 2-.897 2-2v-5l-2-2v7z"
 fill="currentColor">
</svg></span>
{{ end }}

缩小归档页的分类卡片尺寸

显示效果:

缩小分类卡片

默认的卡片有些太大了。在assets/scss/partials/layout/list.scss更改样式:

 .article-list--tile {
 display: flex;
 padding-bottom: 0px; // Narrow the spacing

 article {
 width: 150px; // Make category cards smaller
 height: 90px;
 margin-right: 5px; // Make cards spacing narrower
 flex-shrink: 0;

缩小代码块的字体大小

默认的代码字体在移动端显示有点大了。在assets/scss/partials/article.scss内加上font-size设定:

code {
 border-radius: var(--tag-border-radius);
 font-size: 14px; // Add font size setting for code block
 font-family: var(--code-font-family);
}

在移动端显示目录TOC

代码全部抄自主题repo的这个PR 。作者没有采用,似乎是因为结构有一些问题。我测试了下反正功能是没问题的,就凑合用着吧。

增加返回顶部按钮

代码抄自Rubber Duck博客的笔记 ,我把JS的部分放在layouts/partials/footer/components/script.html里了,本来想把css也拿出来放在scss,但试了一下不成功就懒得折腾了。

改了一下按钮的颜色,跟主题色系统一:

#back-to-top {
 background-color: var(--body-background);
 }

 #back-to-top:hover:before {
 border-color: var(--accent-color);
 }

实现内容折叠

解决办法来自Stackoverflow

显示效果: 我被折叠啦(*≧▽≦*)

更改暗色模式颜色

在assets/scss/variables.scss按需更改,在此就不放代码了。

在归档列表里面显示文章副标题/简介

显示效果:

在归档页显示文章副标题

在assets/scss/partials/article.scss里找到.article-list--compact,在里面添加如下css设置:

.article-subtitle {
 margin-top: -5px;
 font-size: 1.5rem;

 @include respond(md) {
 font-size: 1.6rem;
 }
}

再在layouts/partials/article-list/compact.html添加如下代码:

<h2 class="article-title">
 {{- .Title -}}
</h2>
{{ with .Params.description }}
<div class="article-subtitle">
 {{ . }}
</div>
{{ end }}

私信联系气泡

显示效果如下:

私信留言入口

山茶花舍的博客 知道了这个好玩的小插件,是一个日本公司提供的服务Channel.io ,网页气泡是个入口,实际聊天可以在它们的App里完成。配置过程和山茶花舍说的一样,在官网注册完之后,点击小齿轮 – General – Manage Plug-in – Install plug-in – 点击JavaScript并复制框里的代码,粘贴到layouts/partials/footer/custom.html就可以啦。附个图:

Channel.io设置

内容也能自行定制,可以自己多玩一下各种设置~

Hugo使用小Tips

用Shortcode在博文之间Cross references引用

读了半天难读得要命的hugo官方文档 ,终于弄清一点了。Stack主题的博客内容结构是这样的:

.
└── content
 ├── post
 | ├── first-post
 | | └── index.md
 | | └── image1.jpg
 | └── second-post
 | | └── index.md

在文章内引用另一篇博文的时候,可以使用hugo自带的shortcode。格式如下所示,其中first-post为博文所在的文件夹名字。

[some text]({{< relref "first-post#heading" >}})

<!-- Example: -->
[上个月打了一个月的有氧拳击2]({{< relref "2023-05-31-may-2023-recap#本月庆祝" >}})

显示效果为: 上个月打了一个月的有氧拳击2

在代码块内书写Shortcodes

如果直接在代码块写shortcodes,hugo会解析这部分代码。要跳过解析的话需要在<>符号之前分别加上/**/

Shortcodes写作方法

<!-- 显示效果 -->
{{< ref "something" >}}

勘误

参考文章:

代码实现给个人博客增加“本站已稳定运行xx天”效果 - 二歪同学
Hugo 总文章数和总字数 :: 木木木木木
Hugo | 第三篇Stack主题装修记录,堂堂再临! | 小球飞鱼
Extrenal Link Icon in Hugo Natively, Markdown Render Hooks | Ion Orion
Feature/add inline toc by MikDal002 · Pull Request #615 · CaiJimmy/hugo-theme-stack · GitHub
Hugo|自定义 hugo-theme-Stack
markdown - Add collapsible section in hugo - Stack Overflow
给Hugo加一点好玩的功能
Channel.io - A CRM based Live Chat, Team Chat & Chatbot
Links and Cross References | Hugo

Photo by Spacejoy on Unsplash

记账软件YNAB:为什么它是最强的记账app

2023-06-07 02:22:57

Featured image of post 记账软件YNAB:为什么它是最强的记账app

YNAB 全名为You Need A Budget,是一款全平台的记账软件。本文主要讨论YNAB的理念、它能带来的实际价值以及跟其他记账软件的区别。具体使用教程见文末推荐。

如果你还需要考虑与另一半的花销分配,也许你会对我写的另一篇理财博文感兴趣:《伴侣间花销如何公平?你可能没想过的家庭支出里的性别因素》

为什么要记账

先说结果。我家从三年前开始使用YNAB记账,从一堆算不清的糊涂账,到现在两人对各个家庭预算和支出都了如指掌。期间家庭净资产翻了五倍(我的工资可没涨这么多),至于节省下的冲动消费,不说几万少说也上千刀了,完全对得起YNAB的保护费年费。在去年疯狂通胀近10%的情况下,依旧能做到跟前年储蓄率持平,YNAB功不可没。

记账的目的,总结起来也就两大类:

如果你只需要上述第一点需求,那么绝大部分软件都能做到。YNAB核心竞争力在于第二点,即规划、掌控,而不像普通软件在于记录和生成漂亮的图表。原因在于:光知道自己钱花在哪里了,是无法让你控制自己少消费的!至少影响力相当有限。

使用好YNAB这个工具,不光能有效控制自己的消费,还能带来强大的财务掌控感。

普通预算法 vs YNAB预算法

在用YNAB之前,我的记账方法和大多数人是一样的:纯“记录”的流水账,即统计每个月的支出,看都花在哪里了。后来也会做预算,在月初定下每项支出的额度,Mint等大多数记账软件的逻辑也是如此。画个图来看,大概是这样的:

普通预算法-月初 普通预算法-月末

计划很美好,但往往结果是:看报表的时候发现某项超支,但这个事情已经发生了,给人感觉非常挫败(“怎么这个月又超支了?哎呀没办法下个月少花点吧”),且有一种无法控制自己花销的感觉。

YNAB是什么样的呢?它做预算之前有一个前提:首先你得有钱花。这个让YNAB和其他软件有了本质的区别。如果进账为零,YNAB是不允许做预算的。比如上个月月光了,即使我们知道过两天就会发工资,但在这笔钱到手之前,YNAB不让做预算,直到这笔钱真正进帐了,我们才能把这笔钱分配给每一项,且我们的预算不能超出这笔工资。这个原则在YNAB官网被称为"Give every dollar a job(让每一块钱都各司其职)"。

YNAB预算-有钱了才能做预算

看上去好像差不多,但为什么这两种预算在结果上会有区别呢?打个比方,同样是为了减少卡路里摄入,普通的预算方式相当于我们给自己制定了一周的健康食谱,但还没购买食材;YNAB预算法则像是meal prep,食材已经买好(收入),并根据食谱分装在各个小盒里(预算),做菜时拿出来即可(消费)。普通预算法的计划(食谱)是虚空的,因为做预算的钱不是已到手的收入,所以即使你花超支了(吃太多),是可以随意提高预算余额(食谱怎么写都行反正又不用跟食材一一对上)而无需付出任何代价的!也就是说它没有一个take action的机制来反制我们超支的行为!而YNAB做预算用的是真正到手的东西,结果就是,只有YNAB的预算余额才是我们实实在在的钱。至于哪种更容易达到健康饮食的目标,不言自明吧。

没有实际用过的话可能还是很难理解这一点。但只要记住:YNAB的余额代表你实际上真的有这么多钱就够了。

YNAB的精髓及核心:预算

我们现在知道了YNAB的预算余额代表的是真正的钱,那么下一个问题就是分配。在各项都未超支的情况下可能看不出来区别,但在消费超支时就显现出了这个特点的优势:我们需要考虑钱的分配优先级了。

假如月末时发现“娱乐”项目超支$20了,那怎么办?YNAB预算余额是不能为负的(好比你没法在信封里装负数的现金)。这时我们需要做的是调整预算,花超支的钱要从其他地方匀出来。

YNAB预算法-灵活调整预算

在上面这个例子里,“外食”和“食品”都还有余额的情况下,我们选择从“外食”这一项挪了$20给超支的“娱乐”。这样一来,我们这个月“外食”的预算就少了,本来可以吃两顿,现在可能只能吃一顿。换句话说,我们需要为自己的超支行为买单(take action)。这个预算方式帮助我们思考花钱的优先级:鱼和熊掌不可得兼,在消费超支的时候,你愿意选择优先削减哪一项?假如哪项都不愿意妥协,是不是在行为上就更有动力控制自己不去消费了?

这是YNAB最强大之处:它能够通过预算来影响我们的消费行为

由于我们需要为超支行为付出代价(trade-off),这个机制对那些“可有可无”的消费影响巨大。比如我有个游戏很想买,但看一下YNAB发现一旦买了“娱乐”就会超支,而同时这个月还要给“外食”留出钱跟朋友吃大餐,那么我很可能就忍忍等下个月再说了。所以很多YNAB教程都会提到它是looking forward(看向未来),而不像一般软件是looking backwards(检查过去)。

为未来准备专项资金

由于YNAB的余额是实际的钱(重复三遍),所以余额自然也能够累积,这点让我们建立专项资金变得很容易。像保险、旅游、家电这种以年为单位的大件支出,一般做法是单独分一个帐户出来,每个月存钱在里面。但在YNAB里面不需要这么干,我们只需要为其建立专项预算,等发钱后分配给这项预算即可。钱放在具体哪个帐户不重要,重要的是它已经有了任务、被分配给了专项资金。我家两个人一共有五六个chequing account、十几张信用卡,从来没有抓瞎过,全靠YNAB管理。已经养成了不看银行账户余额的习惯,要看旅游资金够不够,只需看YNAB对应“旅游”预算就知道攒没攒够、不够的话大概还需要攒多久。

在上面提到的例子里,“食品”和“外食”的预算分别剩下$50和$30,那在月初预算不变的情况下,上个月花剩下的这些会自动累计到本月预算里。

YNAB预算法-余额累积至下月

换成旅游这种年度支出也是一个道理,假如每个月都累积$100,一年之后就是$1200。这能帮助我们建立未雨绸缪的用钱习惯,而且也有足够影响力来控制冲动消费。假设本月我们“娱乐”又即将超支,你真的确定要从“旅游”里削减预算给当前消费吗?当购物欲望上头的时候,YNAB的预算系统让我们“看”到冲动消费对未来的影响,鼓励我们向自己提问来做出更加理性的消费决策,从而做到不那么短视,真正掌控自己的花销,而不是被花销掌控

开始学习用YNAB吧!

百闻不如一见,开始试用YNAB吧!YNAB提供34天的免费试用,之后是$99/年或者$14.99/月。YNAB的费用和学习曲线的确高,但如开头所言,它带来的价值远远超出了这些成本。除了官网的文字教程 免费workshop ,我推荐Youtube博主Nick True的教程系列 ,手把手教你设定自己的预算。再推荐一个网页浏览器插件YNAB Toolkit ,能帮助生成更详细的图表。即使不愿意长期订阅,我也推荐尝试至少半年到一年,就当作理财的学费。等彻底理解这套理念之后,再用别的工具建立类似的系统。

有被这篇安利到的话,可以使用我的推荐码链接(referral)。如果最终决定订阅,我们都会得到免费一个月的使用额度。或者也欢迎请我喝杯奶茶 (◍˃ ᵕ ˂◍)
https://ynab.com/referral/?ref=jGfCI1EqHRIIuM2D

更新:有象友提醒YNAB还有一年的学生优惠 !根据官网的说明 ,在美学生填表验证即可,非美国学校或者已有账号的可以联系客服。

祝大家早日财务自由!

更新:YNAB的市场替代品/竞品比较

有友友提到了某些地区YNAB不支持银行自动导入明细,就顺便看了一圈市场上的替代品。结论先放在前头:截止至目前,还没有同等的产品可以替代YNAB。但如果YNAB不支持同步你的所在地银行(印象里YNAB只支持欧洲和北美银行),可以考虑试试下面提到的选项。如果所在地是欧美,YNAB依旧是最佳选择,毕竟有银行自动同步还是很香的~

YNAB实质上是个Zero-based budgeting/信封记账法 系统,可能是由于这样设计较为复杂,市面上用这套系统的记账软件非常少,比较有名的软件如Mint和MoneyWiz全是Forecast-based,也即本文提到的普通预算法的逻辑。目前我知道的跟YNAB系统相同的只有以下几个软件:

注:我没有在实际理财中使用过以下app,从各种评测来看相比YNAB都多少缺一些细节上的特性(feature),此外它们的资源教程都没有YNAB丰富。我只能确定他们跟YNAB理念大致相同,评价仅供参考。

Actual Budget

结论:门槛较高,坐标非欧美地区+会自建服务且能接受没有移动App的可以一试

Buckets

结论:坐标非欧美的可以试试

Goodbudget

结论:不建议购买付费服务,但对非欧美地区+只有一个账户的人可以尝试免费版

YNAB Google Sheet模板

结论:只建议已经非常熟悉YNAB且能接受全程手操的用户尝试。非常不建议新手使用,不然可能会非常迷惑且get不到它的好处

还有两个看上去像是替代,但其实并不属于同一套系统的:

2023年5月小结

2023-05-31 23:01:58

Featured image of post 2023年5月小结

本月庆祝

《Fitness Boxing 2》第一个月打卡完成上个月买了二手Switch卡带 ,到现在差不多刚好一个月。中文翻译叫"有氧拳击",但其实名字有些误导,因为拳击算是混合类运动。打拳真的很棒很解压,难得遇到一项能跟我擦出火花的运动,顿时觉得坚持锻炼也容易了许多。我的主要目标是提升心肺能力(苹果的健康app显示我的VO2 max值低于正常水平),减脂(肚子)倒是次要目标。平均一周五次,每次30分钟,体重倒是一斤没降,但腰腹部的线条肉眼可见地明显了。

拳击五月记录

换下雪胎啦。加拿大一年两次换胎:冬天换雪胎,冬天过完后换成四季胎。其实也不是强制要换,但雪胎在冬天的确好开很多,而且车险会便宜一些。依旧是家属完成了绝大部(quan)份(bu)的工作,但出现了一些意外:换胎时被告知要换的四季胎已经磨损太严重、需要更换了,于是本月临时多出一笔$1000的轮胎费用。

卸下雪胎后,才真正感觉冬天结束了。

新的尝试

电子衣橱

试着整理了一下衣橱,并拍照记录在Acloset这个app里面。目前整理了约三分之一,预计衣服鞋子总数大概在150件左右(不包括lo裙)。在整理中也挑出了不少打算捐掉的衣物,也算是个清理过程。

衣橱app最大的作用是帮我意识到某类衣物过剩,以及清理过多的替代品。清衣柜时最难对付的就是那些"不上不下"的衣服:还算喜欢,也能想出配套的搭配,但不知为何平时穿得很少。通常这种情况是由于衣橱里还同时存在优于它的替代品,即在相同情景下,我大概率会选择穿那件最优的替代品,而不是这件不上不下的衣服。

Acloset作为一个衣橱app相当不错,照片上传之后支持智能去除背景,挺省事的,UI也直观。价格完全免费,至于为什么免费嘛……当然是因为我们的衣橱数据就是它的产品呀!

Acloset界面

玩了什么

上古卷轴5:天际

没错,在全球都在沉迷《塞尔达:王国之泪》的五月,我兴致勃勃地打开了十年前的这款游戏。

倒也不是不喜欢塞尔达。《旷野之息》头一次让我理解到什么是游戏性的极致,甚至可以让我无视极弱的故事情节。但我骨子里是个剧情党,最吸引我的是游戏里的"烟火气":我沉浸于破落小村和大城镇的反差,享受无意中发现NPC秘密时的惊喜,对于不能两全的任务选择更加无法自拔。所以上古卷轴对我来说依旧是开放世界的天花板。

让我惊喜的是,PS5上的天际居然也支持mod了。虽然我以前在PC上只玩了原版,对各种捏人mod也没什么兴趣,但现在有不少游戏性和画面的加强mod,有选择总是好的。十年后重开新档+mod,几乎可以当个新游戏玩了。

至于为什么在现实中大门不出、二门不迈的我,会喜欢在RPG里寻找"人气"……这是个谜。

Overcooked 2 DLC

四月已经通关了本体 ,这个月开始玩Carnival of Chaos以及Surf ’n’ Turf这两个DLC。前者的难度还可以接受,属于有挑战但不会感觉挫败。我和家属大概每关复盘个两三局就能三星通过;后者明显难度更高,找不到解决思路的时候还挺恼火的。

另外提一下版本区别:

虽说游戏和电子产品一样买新不买旧,但我已经有1代且当时Gourmet Edition打折价格更加诱人,所以最终还是入手了Gourmet Edition。

看了什么

超级马里奥大电影

马里奥系列我玩得不多,算是个路人粉丝。近年来的Switch作品玩了几个,发现这依旧是个硬核横版过关游戏,也因此游戏时间都不长。凑热闹去看了这部,发现里面居然塞了不少只有玩家才知道的设定彩蛋,核心粉丝肯定能发现更多。看近几年的趋势,似乎厂商终于发现了老玩家的消费能力,愿意花时间在改编作品里打磨各种细节了,为粉丝们感到开心。

织毛线 Knitting

买了几卷亚麻和棉的毛线,准备用来织一两件夏天的衣服。图样是最纠结的,每次要想很久才能决定织哪个。在五月的最后几天终于看中了一个小背心的图案,目前进度还不错,希望能在夏天结束前织完穿上。

毛线的颜色很春天

暂时搁置

罪案类Podcast。本月没怎么动毛线,因此失去了听播客的场景。前几个月听了不少,根据notion的记录已经有100+小时了。还好年初时设置播客挑战时只设了50个案件,虽然夏天进度缓慢,但看上去依旧是个能达到的目标。


Photo by Yoksel 🌿 Zok on Unsplash

在静态博客里添加Twikoo评论系统,并配置邮箱和TG通知

2023-05-22 02:21:10

Featured image of post 在静态博客里添加Twikoo评论系统,并配置邮箱和TG通知

本文指的博客为静态博客,例如Hugo,Hexo,Jekyll这样完全由用户掌控内容的静态博客生成器

‼️ 2023年8月更新:由于Railway现在取消了免费账户,建议跳过第二步的部分,用Vercel进行部署(下面有视频教程链接),再按照这篇补充教程《解决Vercel被墙导致Twikoo无法评论的问题》 进行修改。

为什么选择Twikoo

总之其他评论系统有的它都有,且更加灵活。

Twikoo官网

大致流程

不想知其所以然的话,可以跳过这一段

以下是我作为一个非程序员的浅显理解:

配置分三部分:数据库(后端),deploy平台(后端),博客网页(客户端/前端)。
这类web app的配置思路大致是:数据库负责储存数据,deploy平台来执行代码、将其变为app,最后连接到博客,从而在网页显示出来。所以必须按顺序操作,每一步都需要前一步得到的信息从而连接到一起。

1. 设置数据库MongoDB

数据库的设置比较难找,具体请参考B站这个【Twikoo Vercel 部署教程】 的第一部分“部署数据库”进行设置。设置的时候,把里面提到的用户名、密码以及长长的那串链接记录下来待用。

2. Deploy平台:Vercel/Railway部署

除了手动档外,Twikoo文档里提供了以下几个服务选择。

以下来自Twikoo官网文档:
Vercel 部署 [ 建议 ] 适用于想要免费部署的用户,在中国大陆访问速度较慢甚至无法访问。
Railway 部署 [ 建议 ] 有充足的免费额度,部署简单,适合全球访问。
Zeabur 部署 [ 建议 ] 有充足的免费额度,部署简单,适合中国大陆访问。

Vercel完全免费,但目前在大陆境内已经被封,意味着非翻墙用户无法评论。Railway每个月有$5的免费额度,用来托管评论服务够用了。需要注意的是免费tier有每月500小时的运行限制,每个月有几天评论服务会被暂停,需要下月登录Railway重新激活。嫌麻烦的话建议绑定信用卡来激活开发者tier,这样在$5的额度内依旧免费,但是运行时间无限制。

‼️ 2023年8月更新:Railway修改了他们的收费模式,现在已经没有免费账户了(T▽T)。建议按照上面的视频教程使用Vercel进行部署,再跳到第三步 。完成之后按照这篇补充教程 就可以让国内用户不翻墙也能评论了。

以下将以Railway为例。如果选择Vercel,按照上面的视频教程继续操作就行,可以跳到第三步

  1. Railway 申请账号,登录后点New Project - Provision MongoDB。这时页面里会出现一张名为MongoDB的卡片
  2. 去Twikoo的这个repo imaegoo/twikoo-zeabur ,fork到自己的账号下
  3. 回到Railway刚才的页面,右上角New - GitHub Repo - Configure GitHub App - 登录并授权 GitHub - 选择上一步fork的repo。成功后页面里会有第二张卡片twikoo-zeabur
  4. 点击twikoo-zeabur卡片,在右边栏里选择Variables - New Variable,添加以下变量:

PORT: 8080
MONGO_URL: MongoDB得到的长链接
MONGOUSER: MongoDB用户名
MONGOPASSWORD: MongoDB密码
MONGOHOST: 长链接“@”之后的部分,以.net结尾,如cluster0.xxx.mongodb.net

Railway内的环境变量设置

其中MongoDB的长链接里包含了MONGOUSERMONGOPASSWORDMONGOHOST,格式如下。<my_name>即为用户名,<my_password>为密码,"@“之后的网址为MONGOHOST地址。

mongodb+srv://<my_name>:<my_password>@cluster0.xxx.mongodb.net/xxx
  1. 在右边栏里点Settings - Environment - Domains选项下选择Generate a Domain,会生成一个格式为xxx.up.railway.app的URL,记下备用

3. 设置博客

查看主题是否支持Twikoo

Twikoo文档里附有支持Twikoo的主题列表 ,大部分是Hexo主题。

本网站主题的评论设置文件

<div id="tcomment"></div>
<script src="https://cdn.staticfile.org/twikoo/1.6.16/twikoo.all.min.js"></script>
<script>
twikoo.init({
 envId: '您的环境id', // 腾讯云环境填 envId;Vercel 环境填地址(https://xxx.vercel.app)
 el: '#tcomment', // 容器元素
 // region: 'ap-guangzhou', // 环境地域,默认为 ap-shanghai,腾讯云环境填 ap-shanghai 或 ap-guangzhou;Vercel 环境不填
 // path: location.pathname, // 用于区分不同文章的自定义 js 路径,如果您的文章路径不是 location.pathname,需传此参数
 // lang: 'zh-CN', // 用于手动设定评论区语言,支持的语言列表 https://github.com/imaegoo/twikoo/blob/main/src/client/utils/i18n/index.js
})
</script>

这样博客设置就完成了。

可能会遇到的问题

评论页面显示前端和后端版本不一致

可能是由于主题内置的Twikoo版本没有更新,可在博客文件夹内全文搜索"twikoo”(请善用VS Code的全局搜索)并找到这一行代码:

<script src="//cdn.jsdelivr.net/npm/[email protected]/dist/twikoo.all.min.js"></script>

将里面的[email protected]替换成上文提示内的最新版本号[email protected]即可,如下图:

我的主题内Twikoo前端版本更新示例

4. Twikoo管理设置

现在博客里应该能看到Twikoo界面了。点击右下角的蓝色小齿轮进入管理员界面,第一次需要设置管理密码,进入后可在“配置管理”里更改选项。

一定要把这个密码记好‼️ 不然忘记密码会非常麻烦,需要从第一步从头开始(别问我是怎么知道的(T▽T)。)

除了通常的博客名称、站点URL之外,以下几个隐私安全选项建议注意一下:

通用
REQUIRED_FIELDS: 默认昵称和邮箱为必填项。我修改成了nick,也即邮箱变为选填,游客能够完全匿名(当然不留邮箱就收不到回复提醒了)

隐私
SHOW UA: 默认会显示用户系统和浏览器,处于隐私因素我修改成了false

反垃圾
AKISMET_KEY:垃圾过滤器,可以帮忙过滤spam。设置也很简单,只需去Akismet官网 弄一个API key就可以了,选择Personal并把价格调到$0,下单之后把得到的Akismet API key填在这里

(可选)配置Telegram机器人提醒

通过设置Telegram机器人提醒,站长能够在新评论时得到Telegram消息提示。创建telegram机器人的教程网上挺多的(比如z-lib telegram bot),以下是精简无图版本:

  1. 获取API Token 在Telegram@BotFather 的聊天界面输入 /newbot - 创建机器人名称 - 创建机器人用户名 - 得到一长串的API token

  2. 获取chat id@userinfobot 内输入/start- 获得的id即为自己的chat_id。把从两个bot得到的东西拼到一起,中间用 “#” 号分隔,即api_token#chat_id。示例:5262***170:AAEzkaMjOayU13fFzcg9PI7_7*****p1iAs#11111111

  3. 设置Twikoo 在Twikoo设置的“即时消息”选项下填入以下信息:
    PUSHOO_CHANNEL: telegram
    PUSHOO_TOKEN: api_token#chat_id

(可选)配置邮件通知提醒(Gmail邮箱示例)

配置邮箱通知提醒后,每当游客被博主或其他人回复时,他们就会收到邮箱提示。

在Twikoo设置的“邮件通知”选项下填入邮箱信息。以Gmail邮箱为例,以下为必填项:

SENDER_EMAIL: Gmail邮箱地址
SMTP_SERVICE: Gmail
SMTP_USER: Gmail邮箱地址
SMTP_PASS: Gmail应用专用密码

注意SMTP_PASS这里不是填写自己的邮箱密码,而是应用专用密码(App password)。Google现在做了调整,必须要先开启邮箱的手机两步验证才能使用App password。入口比较隐蔽,我建议开启两步验证之后直接在设置里搜索关键词App password或应用密码。具体教程可参考官方问答

进入App password界面后,点Select app - Other,取个名字后就能得到16位的应用专用密码了。

黄色部分为16位应用专用密码

Twikoo的邮箱设置保存后,可以点击设置最下方的“邮件通知测试”并输入测试邮箱的地址,能收到邮件的话,那就算成功啦。

2023年4月小结

2023-04-29 10:44:15

Featured image of post 2023年4月小结

多伦多的四月仿佛是夏天和冬天的决战,互相在追逐抢夺最后的位置。明明前一周温度升到了历史最高温,下一周就迎来了春雪。公寓管理处也开与不开空调之间摇摆,留我在30度的室内温度下挣扎。

本月小确幸

上个月提到的机械键盘 到啦。这套的轴体是Durock L2线性轴,手感意外地很不错,也相对静音。机械键盘,尤其轴体,果然还是要上手试过才知道自己喜欢什么。这套置换的是一个用Gateron茶轴的键盘(Keychron K4),虽然茶轴号称万金油,但我越用越不喜欢它的手感。结合试用过的其他几款,最后总结出我喜欢压感轻的线性轴打字。但所有的评测文章都会告诉你Clicky轴最适合码字,线性轴易误触、更适合玩游戏。然而我的实际体验完全不同。由于我打字力度很轻,用Clicky轴会非常累,反倒是线性轴,几乎从未误触。

Keyboard

买到了乔治·马丁的Dreamsongs: Volume I。偶然经过二手书店就进去逛了逛,意外发现了马丁这本短篇小说集。实体书店总是能给人惊喜,其实就算不买,随便翻翻书也很开心!

终于报完税了! 今年依旧是用Wealthsimple完成了报税。虽然我没做多少事(家属做了绝大部分),但报税本身就是相当累。想到还要交钱也很累,不过我对税收的心态比较平和。高税收是社会正常运转需要付出的代价,若没有这部分代价,那它的结果也会以各种各样的形式反映到生活里面。

玩了什么

Hogwarts: Legacy

这部作品是给书粉的礼物。开场的夜骐马车就惊为天人,不是骨灰级哈迷写不出这种细节。城堡设计极其出色,从画像的还原程度,我几乎可以肯定制作组把原书所有跟城堡有关的描写都搬到游戏场景里面了。

差不多花了60小时通关。主线表现平平,倒是支线同伴Sebastian的任务线,光芒完全盖过了主剧情。出现了一些争议,但人物塑造依旧十分出彩,我和姬友甚至久违地磕起了CP。

翻一翻Tumblr,AI时代的同人已经完全不似往日,不但有AI生成语音,还有人用语料做出了聊天机器人。作为当代同人女实在是太幸福了。

Overcooked 2

很久以前通关了一代,直到上个月才想起来没玩过2代,刚好本月打折到15刀,迅速入手。

虽然号称是《分手厨房》,但我和家属在游戏里合作不错,不会推锅,做砸了也都是以爆笑收场。

啊啊啊上错菜了!客人点了一个肉酱意面🍝一个蘑菇意面🍜,结果我上了一盘蘑菇炒肉🥗!
(T▽T)

于是花了两晚三星通关了本篇,我和家属正在“不愧是我、超有默契、天作之合”的互吹中得意忘形,没想到结局后还有隐藏四星,而四星的分数是三星的几倍。还有几个DLC,加入了新的菜谱,难度也比本篇更高。这下又能好好玩一阵了。

看了什么

The Lord of the Rings: The Rings of Power

看完后终于知道了为什么风评很低。我期望也不高,毕竟没有《精灵宝钻》的版权,电视剧只是采用了一些原世界观设定。但即使当成《魔戒》的同人作品来看,也很难算是一部好的作品。凑数的地方太多,有些情节大概三流编剧都不会这么写。

House of Dragon

除了不下饭,其他都很好。基本忠于原著《血与火》,毕竟马丁也参与了制作。《血与火》我一直没看,可能跟《公主与王后》、 《游侠王子》内容重复太多,所以吸引力对我不够高。但血龙狂舞这段历史还是很有意思的,黑绿两党冲突激烈,也很血腥,想来确实很适合拍成HBO电视剧。在已经知道最终结局的前提下也依旧期待电视剧的视觉展现。看完电视剧,好像又有读原著的热情了。

至于未完结的《冰与火之歌》,对它抱有很复杂的情绪。既怀有希望,又告诉自己不要心存幻想。看到卷五还在不停铺陈发散的时候,我就隐隐感觉这书估计是写不完了。但即使没有完结,也不妨碍它在我心中的地位。场景描写像诗一样,语言简练优美,好多时候都能读到潸然泪下。

The Lord of the Rings: The Return of the King 二十周年重映

虽然每几年都要来一次《魔戒》+《霍比特人》电影马拉松,但实际上我从未在影院看过《魔戒》三部曲。今年是第三部的20周年,北美的影院上映了4小时的加长版。除了最喜欢的"I am no man",第二个印象很深的场景就是Rohirrim骑兵冲刺了。大屏幕加上环绕音响,我第一次感受到了骑兵的震慑力,也瞬间明白了为何《文明》里面骑兵对步兵是全方位压制。不出意料地我又激动到几度洒泪。

什么值得买

小甜酒

虽然之前说不喝酒了,但还是禁不住象友安利,买了著名的百利甜和Malibu Coconut Rum Liqueur。四个字:相见恨晚。

百利甜和咖啡绝配,尤其冰拿铁 ,又香又浓郁。唯一需要担心的是早上不小心放太多会不会影响工作。

Malibu Coconut Rum Liqueur加菠萝汁就是简单版piña colada,夏天来一杯太爽了。难怪LCBO网站上有近四千多评分,大家还是很有眼光的。

一个新发现的冰咖喝法:事先把咖啡冻成冰块,第二天加入冰牛奶。这样的冰咖啡会越喝到后面越香浓喔~

织毛线 Knitting

织了一件夏天穿的小背心!图样挺简单的,织得很快,差不多四五天就织完了。线是100%亚麻,所以穿起来也足够凉爽。线有一点儿粗糙,织太久会磨手,但亚麻的特点是越洗越软,期待一个夏天之后的效果。

天气渐渐热了,可以暂时把冬天没织完的厚重毛线休眠,是时候物色(买买买)一些夏季的新毛线了。

新的尝试

Fitness Boxing 2 有氧拳击

尝试了试玩版本后,在二手市场以半价买入了卡带。打拳很能解压,我久违地体会到了运动的快乐。听说拳击的健身效果也很好,希望多多坚持打拳。

Photo by Evgeny Lazarenko on Unsplash

2023年3月小结

2023-03-30 00:27:23

Featured image of post 2023年3月小结

开始的最好时间是现在

中文博客开张才一周,起初还在纠结:到底是写每月小结还是每周小结?还是不写总结,想到什么写什么?

后来索性懒得想了,这样下去只会陷入无尽的计划陷阱之中 (get organized trap,我自创的)。

前几个月在学习使用Obsidian的时候从一个YouTube 视频里学到了一个词,叫做avoid front loading。大意是不要总想着一开始就想着把所有的东西弄得井井有条,比如文件层级怎么分类、标签要怎么命名等等。因为系统总会随着想法改变而更新,如果老是强迫症一样想把所有东西都统一到这个系统里,会把很多时间浪费在无尽的“变得更有条理"上,但这件事本身并不会带来太多收益。

所以虽然这篇叫月度总结,很多都是最近的事情~

一些小确幸

最近猫咪养成了睡觉前要来床上撸一撸的习惯。虽然呼噜声像小马达一样响、还在身上到处乱踩,我倒没有感觉很困扰。不如说晚睡十分钟换得回血一百分,猫和人都开心,双赢~

终于入了新出的游戏《Hogwarts: Legacy》。才开始玩没多久,但作为熟读原著N遍的书粉已经从人名里找到了好多个彩蛋。近年来我对所谓的开放世界越来越不买帐,觉得RPG游戏能把剧情和故事讲好就已经很出众了。动不动就100+小时的游戏时长我也承受不了,很容易变成坑,现在觉得RPG游戏40~60小时左右的时长比较理想。从短短的几个小时来看,霍格沃茨游戏做得还是很让人沉浸的,这点十分难得。

用Hugo搞了这个中文博客,还顺便把自己的另一个博客也迁移了。虽然两个博客的目的完全不同,但核心都是通过写作来探索自我。写作这个事情,就是不写也不会意识到什么,一旦开始就好像有点停不下来。虽然我的中英文写作风格完全不同,但无论哪种语言,在写的过程中似乎都会刺激大脑表达的那一部分。就像我在思考写每月总结的时候,也会同时源源不断激发出英文写作的灵感。

下单了新的机械键盘。这套客制化机械键盘在我购物车里躺了好久了,趁打折把键帽、轴体和壳子一口气全部下单,好爽。买这套是想替换手里的Keychron K4。K4是我的第一个机械键盘,当时选了据说万金油的茶轴,到手后感觉无功无过,说不上讨厌,但也没那么喜欢。等自己配了一套机械键盘后,逐渐发现我喜欢触发压力轻的轴体,所以这次挑了个线性轴(Tiffany轴)和蓝黄色的键帽颜色搭配。期待收货~

连续用ATracker记录时间块达到一个月。除了睡觉的任何时间都在用这个app记录,我把生活中的事情分成了图中的五个大类,在每一类下面才是我记录的小项。比如Downtime里面包括Survival(生存必须的吃喝拉撒)以及Home(打扫、去超市等家务)。记录时间的目的是1)看看时间都去哪儿了;2)在此基础上有没有可以提升的空间。我觉得这个app非常好用,是少有的直接击中痛点的app,也许过一阵专门写个总结吧。

最近的买买买

什么值得买

牛腩替代Boneless Cross Rib Pot Roast

做中式牛腩的绝佳替代品!我一直分不清各种牛肉部位,查了牛腩对应的英文是brisket,但本地超市都找不到,据说是因为中西式切割方法不同。后来看到北美博主的菜谱用了short ribs,最近终于有机会尝试一下,结果十分成功,软儒Q弹堪比专业餐馆的程度。

之前要买牛腩只能去中超买,选择十分有限。我还尝试过那种切好的stew beef,肉质非常柴,一点都不适合长时间慢炖。Short ribs的脂肪都很均匀,怎么炖都好吃。我挑的这块牛肉如名字所示,是不带骨的,我看到博主用过带骨的小块short ribs,看上去也很香~ 另外还有一种韩式烧烤的那种片状牛肉,虽然也叫short ribs但肉太薄了,感觉只适合烧烤不适合慢炖。

这是用牛肉和炖的牛肉汤做的卤蛋牛肉面:

Chick-fil-A的饮料Frosted Lemonade

Chick-fil-A在我这开了好几年了,这个月第一次去。不知道点什么,就试了网上推荐的套餐。豪华香辣汉堡的肉很入味、多汁,但饮料Frosted Lemonade给我印象更深。似乎是由柠檬水和香草冰淇淋一起打成的奶昔,味道很像是三得利乳酸菌的冰沙版本。推荐!

大统华的台湾香肠

这个完全就是小时候街边报刊亭2块钱一根的烤肠味道。刷一层油,进空气炸锅中低温烤熟,简直不要太香了!需要注意的时温度不能太高,我第一次烤的时候和平时烤肉一样用的350度,结果左一的烤肠肠衣就爆了。

要说缺点的话就是有点咸,不太适合干吃(也可能我年纪大了口淡😄)。以及价格不太美好,5个烤肠要8刀,以淀粉肠来说属实有点儿贵了吧。

宜家鲨鲨

几个月前买了鲸鱼,最近终于也入手了人见人爱的鲨鲨!在长毛象上我也发过鲸鱼🐳和鲨鱼🦈的对比:

买了之后终于知道为什么看似普通的玩偶这么流行。因为真的很疗愈耶!我会把这项购物归类为“心理健康”旗下而不是“玩具”。

什么不值得买

大统华的芋泥盒子

我是真心想给大统华甜品一个机会,但它还是让我失望了(T▽T)。能吃,但是奶油口感不好。我不知道是不是混了植物奶油进去,但和自己做的打发淡奶油完全不是一个味道。以后应该不会再尝试大统华任何带奶油的甜品了。

大统华的抹茶慕斯白玉卷

抹茶慕斯馅味道挺好的,但是外面包裹的那层卷毫无味道,和橡胶一样味同嚼蜡。在意的话慎入。

织毛线 Knitting

月初开坑要给猫咪织个新的小毛毯。我不喜欢重复性太高的图样,就选了个复杂一点的。织出来的效果很好看,就是实在太!慢!了!这个图样相当于织了两行才显示出一行的效果,换句话说就是效果延迟到普通的50%。我倒也不急着织完,但图案复杂到无法一边听podcast一边织,就有点崩溃。

颜色方面也踩了坑。我用的毛线是自带换色的(self-striping),但是我对效果不太满意。最终还是手动把毛线分出几大卷不同的颜色。以后切记谨慎购买自换色毛线,因为你永远不知道它会不会在完成一个图案的中途变色……

听了什么 Podcast

除了一些零碎的新闻类podcast,主要听了两个案子:

Uncover S3: The Village

Uncover这个系列不太偏向调查,更注重故事本身,以及与过去、现在的联系,所以经常能了解到很多背景故事。

第三季讲的是一个针对Gay群体的连环谋杀案,里面提到了非常多针对LGBTQ的歧视。以现在的眼光来看还挺让人大跌眼镜的,毕竟近十几年多伦多一直是LGBTQ先锋的城市形象,很难想象在60~90年代竟然如此保守落后。警察系统内的歧视就不提了,连普通人在大街上接受采访都明目张胆地说”觉得Gay就是有问题、就应该被监视“。

案件本身(时间线、手法等等)没有讲得特别详细。想要了解多伦多LGBTQ历史的可以听一下。

Your Own Backyard

发生在美国加州一所大学的女生失踪案。

超级精彩的案件!不能讲太细,一讲就会剧透。调查的节奏把握得非常好,有一直吸引人听下去的冲动。主持人主业其实是音乐人,做的背景音乐相当不错,悬疑风格很强。

如果要推荐罪案类podcast的话,这个案子绝对能进前三。

继续加油

依旧捉急的拿铁拉花(T▽T)。同样是乞丐版设备(宜家的10刀法压壶),为什么YouTube博主就能那么流畅!也终于明白了为什么会存在Barista competition这个东西。这门技术会衍生出一项比赛,是有一定道理的。

虽然还没卖出去,但总算把旧电脑备份、清空了。许久没有重装系统,我仿佛变成了电脑白痴,连开机按哪个键进入哪个恢复程序都忘了,为此浪费了好多时间。果然一件事很久不做就会忘得干干净净啊。

Photo by Glen Carrie on Unsplash

博客之旅:找回初心

2023-03-20 01:31:22

Featured image of post 博客之旅:找回初心

论博客的生产力曲线

blogging curve

这张图真的让人很有共鸣。

博客写的多的人,都不太在乎工具;而很多爱折腾网站的人,文章数量却很少,而且很多博文本身就是建站有关的内容:

《从零开始配置一个xx静态博客》……

《好看实用的xx主题插件分享》……

(以及现在正在看的这篇)

简中博客的逃难之旅

我自己算是曲线右边的那一拨。

最初大概是2004年左右在MSN Space写博客,后来很长一段时间都用纸笔记录,直到2010年开始用新浪博客,后来也陆续尝试过Wordpress、简书等等,后来偶然知道了静态博客(static site)的存在,开始自己学习建站。

我的第一个静态博客是实名的。实名博客在欧美比较流行,主要目的是个人的portfolio,写一些技术向文章用来打造人设给未来雇主看。

但是思前想后,我依旧缺乏一个能够匿名表达日常的出口。而在逛象友的博客途中,她们几乎都提到了一个关键词:

"逃离"

简中平台上的表达环境,有目共睹地越来越差。无论是由于审查而逃离豆瓣、微博、微信,还是由于平台关闭而被迫迁移,似乎简中人注定只能像难民一样逃离一个个曾经记录过自己的地方。

几年前开始,我选择拒绝使用这些平台。不让我说话,那我就走,用脚投票。只是缺点也很明显:时间一长,我好像也没有想法写文章了。偶尔有灵感,也因为没有地方发表而仅仅停留了一瞬间。

到现在为止,肉身已经逃离,但精神上还需要疗愈。

希望以这个博客为基点,一点点找回自己的表达欲。

Photo by Sincerely Media on Unsplash

关于站名

2023-03-17 08:00:00

Featured image of post 关于站名

我非常喜欢魔戒,尤其是里面的夏尔(Shire),是我梦想中的田园生活了。

虽然目前住的是典型的城市公寓,还是买了一套绘本准备给自己增加农场小知识。

但是现实总是很骨感。我的种田热情在屡战屡败的室内植物虫害中已经快消失殆尽。如果有谁知道靠谱的去除thrips的方法,麻烦您好心告诉我~

于是给网站起名叫第三夏尔。这辈子过上想像中的田园生活不太现实,其他宇宙还能梦想一下。

毕竟梦里啥都有~


Credit: Photo by Thandy Yung on Unsplash

博文 | Archives

0001-01-01 08:00:00

关于 | About

0001-01-01 08:00:00

Featured image of post 关于 | About

这大概是个生活向的博客,建立它的原因是想要重建自己的表达欲。目前主要是写自己在加拿大的生活日常,辅以一些安利分享和少量技术(踩坑)文。喜欢的话可以通过RSS订阅我的博客

语言上有轻度强迫症,除了专业术语/特殊词汇/本人不认可的翻译词,我会尽量避免中英文混杂写作。如果发现错别字,请不要犹豫地指出来~

如果很喜欢我的博客,欢迎请我喝杯奶茶‎ (◍˃ ᵕ ˂◍)


关于我

关于本博客

博客的由来 —— 详见《博客之旅:找回初心》

站名的由来 —— 当然因为我是魔戒粉。详见《关于站名》

博客是怎么建的?

博客由Hugo + Netlify 生成,主题来自Jimmy Cai的Hugo-Stack 。建站教程可参考这个教程Blogging with Hugo 系列,以及Hugo-Stack的文档 进行主题设置。另外Hugo的官网教程写得很烂,十分新手不友好,看不懂是正常的,有问题直接Google比较快。

『每日塔罗』版块

这是我的塔罗牌笔记,每日更新。我每天早上会抽牌并进行解读,作为自我探索、梳理内心的一种方式。有时候我会询问一些特定的问题或是建议,也会放在这个页面里,用不同的标签表示。

其实这算是一个独立的Hugo博客,用了另一个非常适合短博文的主题Moments

『测评』版块

一个安利/踩雷测评数据库,内含我对各类家用产品的(主观)打分、优缺点评价以及购买链接。不定期更新。

关于历法

本博客使用黄道十三星座作为每月小结的更新节点。

古巴比伦发明了黄道带这个概念,他们将太阳经过的天空带等分成十二分,并将其中的星座赋名为“黄道十二宫”,即我们通常所说的十二星座1

但是,黄道十二宫的划分并不严谨,因为星座面积不等分,而且太阳也不只经过这十二个星座。因此在现代,十二宫已经变成了占星(Astrology)的一部分。与之相对的,“黄道星座”是个天文学(Astronomy)的概念,太阳每年随着地球的季节变化穿过十三个星座:摩羯座、宝瓶座、双鱼座、白羊座、金牛座、双子座、巨蟹座、狮子座、室女座、天秤座、天蝎座、蛇夫座和人马座。

黄道十三星座

按照国际天文学联合会(IAU)的划分,太阳经过每个星座的时间大致如下2

黄道星座 太阳所在时间 最亮星名
白羊座 4.19 – 5.13 娄宿三
金牛座 5.14 – 6.19 毕宿五
双子座 6.20 – 7.20 北河三
巨蟹座 7.21 – 8.9 柳宿增十
狮子座 8.10 – 9.15 轩辕十四
室女座 9.16 – 10.30 角宿一
天秤座 10.31 – 11.22 氐宿四
天蝎座 11.23 – 11.29 心宿二
蛇夫座 11.30 – 12.17
人马座 12.18 – 1.18 箕宿三
摩羯座 1.19 – 2.15 垒壁阵四
宝瓶座 2.16 – 3.11 虚宿一
双鱼座 3.12 – 4.18 右更二

为了避免被误认为神棍 本站采用黄道星座最亮的恒星名为标题。为方便起见,标题依旧包含当月公历,如2023年白羊座小结记作《娄宿三|2023年5月小结》。


Credit

头像:adnan roesdi on Vecteezy
好物分享:Photo by Lucrezia Carnelos on Unsplash
想法碎屑:Photo by Thought Catalog on Unsplash
生活日常:Photo by Kyle Glenn on Unsplash
技术工具:Photo by Jexo on Unsplash


  1. All zodiac constellations | Who invented the zodiac | Are the zodiac signs changing | Star Walk  ↩︎

  2. The Real Constellations of the Zodiac . Lee T. Shapiro, director of Morehead Planetarium University of North Carolina (Spring 1977) ↩︎

搜索 | Search

0001-01-01 08:00:00

友链 | Friends

0001-01-01 08:00:00

Let’s make blogging great again~

欢迎在博客评论区/私信气泡留言或者用长毛象私信 交换友链喔,留言时请注明以下信息:

博客名称:
博客简介:
博客网址:
博客头像(如果有的话):

我想让这个友链页面更个人化一些,所以可能还会根据对你博客内容的了解写一条小备注^ ^ 但如果写错得很离谱可以戳我修改!

出于众所周知的原因,婉拒在中国大陆境内备案的博客。

以下是本站的信息:

博客名称:第三夏尔
博客简介:认真生活,积极摸鱼
博客网址:https://thirdshire.com
博客头像:https://thirdshire.com/blackcat_avatar.jpg

我会时不时串门,如果发现链接失效且无法联系,或者博客超过两年没有更新的话会被放进冷冻休眠舱喔!

冷冻舱头像Credit:Sleeping icons created by Freepik - Flaticon