写作热力图 加载中...
加载中...
少
多

2026

微信读书会员到期,我给自己写了个墨水屏阅读器

微信读书会员到期,我给自己写了个墨水屏阅读器

10 月 2 日,我的微信读书会员到期了,我没续。 不是舍不得那点钱,而是我在墨水屏上用它的每一次,都在跟它较劲:想划线,得跟两个小圆点手柄打架;想知道自己读了多少,它连个数据页都没有。 会员到期的第二天,我把攒了半个月的念头落了地——给自己写了个墨水屏阅读器。 微信读书在我的汉王上难用在哪我的阅...

用 unidbg 摸清一个加固客户端的请求签名(学习笔记)

用 unidbg 摸清一个加固客户端的请求签名(学习笔记)

起因某个 App 的接口里带着一组长得很像签名的参数(kps_wg、sign_wg、vcode 这一类,阿里系客户端常见风格)。我最初的直觉是: 这些都是”客户端身份校验”,换个 UA 假装成官方客户端,是不是就能绕过限速? 花了两天把链路摸了一遍,结论完全相反。这篇只记方法和踩坑,不点名具体 ...

大厂商和流氓没什么区别:我把手机和电脑都换成了自己编译的

大厂商和流氓没什么区别:我把手机和电脑都换成了自己编译的

我现在这部手机,系统是自己编的,上面装的 App 也基本都是自己编的;电脑上跑的是 Linux。 不是折腾,是一件很朴素的事:文件在本机,要不要让人拿走、给谁看、留多久,这个决定权得在我手上。 先把话放在这儿:这些大厂商跟流氓是没什么区别的。 一、ZCode 干的事,和十五年前的 3Q 大战是同一...

连电诈园区都嫌 35 岁:这道线到底在筛什么

连电诈园区都嫌 35 岁:这道线到底在筛什么

一个 38 岁的中国人,被人拿枪抵着后背押过河,卖进了缅甸的电诈园区。关了 79 天,姐姐花了三十多万,才把他弄回来。 按说,这该是一个关于绑架、贩卖、暴力和救援的故事。可我把报道翻完,记住的却是另一个细节:园区里 35 岁以下的人更好卖,他 38 岁,已经超了线,属于”不好卖”的那一类,最后是被人...

领克车机改造记:自己写个音乐 App 装进车里

领克车机改造记:自己写个音乐 App 装进车里

我对领克这套车机的语音和播放器都不满意,最直接的原因是:听我自己的歌,还要我买它的会员。 所以我自己写了个车机版音乐 App,装进车里:曲库在我自己的服务器上,方向盘上的语音键说一句”播放稻香”,它就去我的曲库里找,然后放出来。 后来这事就不只是”放歌”了:地图换成了高德、导航和歌名都能上仪表盘、...

别再追捧宗教品牌:消费的是智商税,透支的是判断力

别再追捧宗教品牌:消费的是智商税,透支的是判断力

消费市场里最深的坑,从来不是粗制滥造的廉价假货。 假货至少诚实:它便宜,你心里也有数,坏了就扔,不上心。真正让人吃闷亏的,是那些被无数人捧成”信仰”的品牌。它们不靠产品立身,靠造神、靠情绪绑架、靠圈层洗脑。它们收割的也不只是你的钱包,而是一点一点把你的判断力也拿走。

vibe coding 的感悟

vibe coding 的感悟

从去年至今,我持续投入在 VibeCoding 上的 Token 开销,累计超过 2300 多元,折算下来月均成本约 281.88 元,数据统计截止到 2026 年 9 月 16 日。日常我主要使用 Kimi Code 和 Deepseek 两大模型服务商,依托 AI 辅助完成了大量项目开发与实践。...

全面从阿里云迁移

全面从阿里云迁移

阿里云的 CDN 和对象存储,我用了差不多十年。博客的图片、视频,还有攒了多年的音乐,都放在那个存储桶里——八万多个对象,六十多 GB。 今年四月,我面试了阿里云一个和 CDN 相关的岗位,最后对方给出的理由是:年龄。 两件事凑在一起,我把用了十年的东西整体迁走了:域名全部从他们的 CDN 切走,对...

手表离线也能秒定位?从卫星导航科普到我的智能手表星历改造实录

手表离线也能秒定位?从卫星导航科普到我的智能手表星历改造实录

上个月我干了件有点疯的事:把我那块运动手表的 GPS 辅助定位数据链路完整逆向了一遍,然后用公开的卫星数据自己”造”了一份同样格式的数据,搭了自己的服务器,让我自己的 App 替代官方应用给手表下发星历。 折腾了两周多,最终手表在脱离官方 App 的情况下依然秒级定位。这篇文章把整个过程讲清楚,顺带...

成年人的职场清醒:所有拖薪的温柔,都是跑路的铺垫

成年人的职场清醒:所有拖薪的温柔,都是跑路的铺垫

2026 年,大概是我们小家庭最难熬、也最清醒的一年。 上半年,我失业;下半年,做了快十年老员工的老婆,被迫离职。我们一个接一个地从职场退场,才彻底想明白一件事:所有长期拖薪、无底线的消耗,从来不是暂时的难关,而是跑路和摆烂的铺垫。 打工养家,本就是等价交换,一旦规则被打破,最优解永远是及时止损,绝...

把 ConnectBot 改造成"远程 Agent 聊天室":一个移动端操控 Codex 的实战记录
从 1Password 到 OnePass:我自己撸了一个密码管理器

从 1Password 到 OnePass:我自己撸了一个密码管理器

AI 时代真正做到了让技术平权,也可能是唯一一次可以把主动权掌握在自己手上的时代——过去”自己造一个密码管理器”是少数工程师的奢侈,现在,这可以是你的答案。 最近几年,我对「订阅制」越来越没耐心。不是说订阅这种模式本身有问题,而是当几乎所有工具都想按月、按年从我钱包里刮一层时,我会本能地反问一句...

ESP32 连接 HC-SR04 超声波测距模块与蜂鸣器报警实验

ESP32 连接 HC-SR04 超声波测距模块与蜂鸣器报警实验

最近用 ESP32 接了一个 HC-SR04 超声波测距模块,再加一个有源蜂鸣器,做了一个”距离小于 10 cm 就报警”的小实验。记录下接线、代码和踩过的坑。 实验目标 用 ESP32 读取 HC-SR04 超声波模块测得的距离。 当距离小于 10 cm 时,蜂鸣器每 3 秒响一次,每次响 200...

AI 时代我的去 SaaS 化之路

AI 时代我的去 SaaS 化之路

这几年各类 SaaS 产品和商业 App 的体验越来越离谱:开屏广告、信息流广告、弹窗广告轮番轰炸,后台权限要了一大堆,通讯录、位置、相册、剪贴板恨不得全读一遍。更烦的是,很多功能明明可以本地完成,却非要联网上传个人信息才能用。 什么是 SaaS,为什么要去 SaaS 化SaaS(Software...

血酬定律:读懂历史潜规则,看透当代职场生存博弈

血酬定律:读懂历史潜规则,看透当代职场生存博弈

一、核心立论:血酬定律与社会运行的元规则吴思在《血酬定律:中国历史中的生存游戏》中,彻底撕开了中国传统历史叙事里温情的儒家外衣,跳出道德评判的浅层视角,挖掘出贯穿千年社会、支配阶层博弈、资源分配的底层真相,提出了颠覆常规认知的核心理论:暴力最强者说了算,这是决定一切规则的元规则。这是凌驾于所有律法、...

35 岁的处境和思考

35 岁的处境和思考

从一张截图说起早上刷到一条视频截图: 画面里是一家科技公司的前台,配文写得很重:”13 年的坚持努力和奋斗一场空”、”去他喵的 H100 千卡集群”、”去他喵的风改液”、”中国人坑中国人”。 我看着这张图愣了很久。发视频的人是这家公司的运维负责人,在社区和互联网圈也算是小有名气的人了。你想能把一个...

FFmpeg 9.0.1 代号 Lei:怀念我的 FFmpeg 领路人雷霄骅

FFmpeg 9.0.1 代号 Lei:怀念我的 FFmpeg 领路人雷霄骅

一张截图带来的停顿早上刷到 FFmpeg 官网的 Releases 页面,看到 9.0 分支的最新稳定版已经标出来了: 页面上写着 FFmpeg 9.0.1 “Lei”,2026-08-12 发布。这个代号不是随便起的——它是为了纪念已故中国青年开发者、中国传媒大学博士生雷霄骅。更广为人知的称呼是...

ESP32 连接 HC-SR04 超声波测距模块

ESP32 连接 HC-SR04 超声波测距模块

最近想把家里吃灰的 ESP32 利用起来,顺手接了一个 HC-SR04 超声波测距模块,用来做一些简单的距离检测。整个过程比想象中顺利,记录一下接线、代码和踩过的一个小坑。 HC-SR04 模块简介HC-SR04 是最常见的超声波测距模块之一,价格几块钱,测距范围约 2cm ~ 400cm,精度在 ...

ESP32 连接 DS18B20 温度传感器

ESP32 连接 DS18B20 温度传感器

上一篇把 ESP32 连上 WiFi 和蓝牙之后,接下来想接点传感器玩玩。先从最常见的温度传感器 DS18B20 开始,它的优点是数字输出、一根总线可以挂多个设备、精度也还不错。 1. 所需材料 ESP32 开发板一块 DS18B20 温度传感器模块(或裸传感器) 4.7kΩ 电阻一个(上拉用) 杜...

ESP32 刷入 MicroPython 并点亮板载 LED

ESP32 刷入 MicroPython 并点亮板载 LED

今天买了一套学习嵌入式的设备,准备学学新东西。一来是有兴趣,单纯捣鼓软件我觉得腻了,有了 AI 之后,软件前端、后端、App 开发都被干趴下了,我想看看 AI 操纵硬件已经支持到什么程度了。第二,带着孩子一起玩,小孩动手能力强,喜欢搭乐高,准备和孩子一起学习嵌入式开发,做做简单的能读蓝牙、联网的小硬...

2026

WeChat Reading Membership Expired, So I Built My Own E-Ink Reader
Reverse-Engineering a Hardened Client's Request Signing with unidbg (Study Notes)
Big Tech Is No Different from Thugs: I Replaced Both My Phone and Computer with Self-Compiled Software
Even Scam Compounds Reject 35: What Is That Line Really Screening For
Lynk & Co Head Unit Mod: Writing My Own Music App for the Car
Stop Worshipping Cult Brands: You're Paying a Fool Tax and Burning Through Your Judgment
Reflections on Vibe Coding

Reflections on Vibe Coding

From last year until now, my cumulative token spending on Vibe Coding has exceeded 2,300 yuan, which works out to a monthly average of about 281.88 yu...

Migrating Away from Alibaba Cloud

Migrating Away from Alibaba Cloud

I used Alibaba Cloud’s CDN and object storage for roughly ten years. My blog images, videos, and music accumulated over the years all lived in that st...

Can Your Watch Get a Fix in Seconds While Offline? From Satellite Navigation Basics to My Smartwatch Ephemeris Mod
Adult Clarity in the Workplace: Every Gentle Act of Wage Delay Is Groundwork for Walking Away
Turning ConnectBot Into a 'Remote Agent Chat Room': A Hands-On Record of Controlling Codex From a Phone
From 1Password to OnePass: I Built My Own Password Manager
Connecting an HC-SR04 Ultrasonic Ranging Module and Buzzer Alarm to the ESP32
My Road to De-SaaS-ification in the AI Era
The Law of Blood Pay: Reading History's Hidden Rules, Seeing Through the Survival Game of the Modern Workplace
Situation and Reflections at 35

Situation and Reflections at 35

Starting From a ScreenshotThis morning I came across a video screenshot: The image shows the front desk of a tech company, and the caption is written...

FFmpeg 9.0.1 Codename Lei: Remembering Lei Xiaohua, the Man Who Led Me Into FFmpeg
Connecting an HC-SR04 Ultrasonic Ranging Module to the ESP32
Connecting a DS18B20 Temperature Sensor to the ESP32
Flashing MicroPython onto an ESP32 and Blinking the Onboard LED
1234…43