手记

开发记录、产品想法和生活随笔。完整文章用大字和摘要,生长中的短记录一行带过。

N.01 — N.15 · 15 篇

2026

  1. N.1510.23

    为什么个人网站从一张照片开始

    一个真实的地方,一张留下来的照片,一个做出来的产品,最后是记录。

    开发
  2. N.1407.24

    我给 MeetingRelay 跑了一场 61 分钟的真实会议

    一次真实设备长会验收:我看着本地 ASR、SQLite/WAL、导出和重开链路一起跑完,也把还没通过的边界留在记录里。

    随笔
  3. N.1307.24

    两张一模一样的照片,帮我守住了 Retake Coach 的边界

    一次 PicSpeak Retake Coach 的开发复盘:为什么重拍进步必须来自同一次成对评估,以及我怎么用边界测试守住这条线。

    产品
  4. N.1207.24

    一个很小的竞态,差点让 TokSync 吞掉同步事件

    TokSync v0.5 的一次代码审查,把一个本地 JSON store 里的读-改-写窗口翻了出来。

    开发
  5. N.1107.24

    一个 Prompt 插件被 Code Review 打回之后

    测试、类型检查和构建都已经通过,代码审查却给了 REQUEST CHANGES。接下来的一天,我才真正处理完这个浏览器插件的发布边角。

    开发
  6. N.1007.24

    我给学习资料设了一个入口门槛

    我开始减少收藏资料,把每个资料源都放进练习、输出和复盘的闭环里。

    随笔
  7. N.0907.08

    我写个人项目页时,会先把使用场景讲清楚

    我写项目页时,会先交代谁会遇到这个问题,再讲项目做了什么。功能列表放得太早,读者很难判断要不要继续看。

    产品
  8. N.0807.03

    我给数字花园分了 3 层,先让内容各自有地方放

    我的笔记库里同时有完整文章、半成型想法和项目材料。把它们分成三层后,我写东西时少了很多犹豫。

    随笔
  9. N.0706.28

    从 0 搭一个个人博客:我希望它首先是一个能长期写下去的地方

    我搭这个博客时先压低写作阻力:页面少一点,路径稳定一点,发布流程简单一点。能长期写下去,比第一版做得多更重要。

    随笔
  10. N.0606.15

    给一个 prompt 插件取名,先划掉了五个名字

    产品
  11. N.0505.25

    给 PicSpeak 做第二轮审查:一个竞态、一个关不干净的线程和一份 20MB 的审计日志

    距离上一轮审查一个月,上一轮的问题都已闭环。这一轮按后端、前端、基础设施和测试四个方向重新看了一遍,又找出了几个藏在正常运行背后的问题。

    开发
  12. N.0405.18

    做 TokSync 之前,我先决定了它不同步什么

    一份可行性分析的结论:AI 编程会话里藏着源码、密钥和内部路径,所以第一版只同步用量数字,会话全文留给以后、而且必须主动开启。

    产品
  13. N.0305.07

    第一次给 OpenClaw 提 PR:别直接相信 localStorage 里的 JSON

    QA Lab 的保存视图把浏览器存储里的 JSON 直接当成界面状态。修复本身不大,难的是用真实环境证明它修好了。

    开发
  14. N.0204.26

    把散在各处的项目文档,搬进一个笔记库

    随笔
  15. N.0103.23

    把 OfferNow 改名成 OfferWave,我改了多少地方

    一次后端项目改名:Maven 坐标、包名、配置前缀、环境变量、数据库名、脚本和文档,最后用一次全局扫描确认没有残留。

    开发