这个博客放了很多年,旧东西散在各种地方,有些链接也早就不能看了。现在想重新把它收拾一下:过去写过的东西慢慢挑着整理,最近在做、在研究、在路上看到的事也放进来。

中文还是原始版本。英文等中文稿真的写明白了再补,不急着机器翻一份上去。

先把问题说清楚

这次重建里,最先讨论的不是首页要长什么样,而是:它究竟要服务什么。旧站更像一个停在某个年份的博客快照;如果只是把旧文章和旧样式搬到新框架里,问题依然会在——新内容没有合适的位置,读者也分不清一篇随手记、一项持续项目和一份研究材料之间的关系。

所以最后没有把它做成简历式的作品集,也没有追求一个把所有事情都塞进去的「个人品牌主页」。它更接近一份可以持续编辑的个人出版物:写作是对经验的整理,项目保留从问题到产物的过程,研究放置尚未收束的问题,影像则给屏幕之外的观察留一个位置。分类不是为了显得完整,而是为了让不同密度的内容各自有一个诚实的入口。

首页因此只承担导航和引导阅读的职责,而不是一张信息密度很高的履历表。视觉上也刻意收住:让标题、摘要、时间和链接把文章说清楚,少一点装饰性的干扰;归档按创作时间组织,让内容可以被慢慢补回去,而不假装它们都是刚刚发生的事。

迁移不是搬家

旧站会保留为可回看的历史版本,但新站不会把所有旧内容不加区分地复制过来。迁移时需要重新判断:哪些文章仍然能代表现在的观点,哪些只适合提炼出一个新的题目,哪些涉及旧链接、内部信息、他人隐私或已经失效的上下文,就留在私档里。

这个判断很慢,但比「全部恢复」更重要。公开写作并不是资料堆放;发布意味着愿意在今天继续为文字承担责任。旧文会逐篇处理,必要时补充当时的背景和现在的注记,而不是用一次性清仓来制造一种虚假的繁荣。

补上来的,和补不回来的

真正动起来才发现,工作量的重心不在搭站,而在内容。旧文大约有一百二十篇,要一篇篇重新分级:能迁移的、能拆开改写的、只能提炼观点的、只能留在私档的。每一篇都要把公司名、内部链接、他人隐私和过时的上下文剥掉,再决定它今天还愿不愿意被自己承认。

更费力的,是过去很多做过、想过,却从没系统写下来的东西。它们散在文档、聊天记录和记忆里,这次被重新组织成可以单独成立的篇目。这些不是找回旧文,而是把一直不成文的东西补出来。

也有补不回来的。有些上下文没有被任何备份覆盖:当时为什么那么写、一段对话的前因后果,只能靠回忆一点点想回来。所以这次整理,一半是搬运,一半是重写,剩下的,是承认有些东西就是丢了。

让以后写作更轻一点

技术上的设计也尽量围绕这个目的。内容以 Markdown 保存,日期、主题和标签用明确的元数据描述;页面、归档和 RSS 从这些内容生成。这样新增一篇文章不需要重新摆版,也不依赖某个后台或平台。站点仍然可以有自己的外观,但写作不应该被外观绑住。

中文优先也是同一个考虑。中文稿是思考和修改发生的地方;英文版若要出现,应当是经过单独审阅的文本,而不是发布时顺手生成的副产品。宁可暂时只有一个语言版本,也不想让两份看似对应、实际语气和判断都没有对齐的文字同时存在。

这套架构以后也许会被整理成一个可参考的 demo:不只是展示页面的代码,而是把内容模型、迁移取舍、发布流程和维护习惯一并说清楚。不过那应该发生在它真正经受过一段时间的写作和维护之后。现在先把它当作一套正在使用的工作方法;等实践足够完整,再回头整理哪些设计经得住考验,哪些地方需要推翻重来。

工具做了什么,我做了什么

这次整理里,AI 承担的是量大、机械、需要对照的部分:把一百多篇旧文通读一遍、按「能迁移 / 能改写 / 只能提炼 / 不迁移」分好类,给每一篇列出要删掉的内部信息,再起草脱敏后的公开版。研究稿里的版本记录和引用核验,脚本和测试,也大多由它先搭出骨架。

但「能不能公开」「今天的我愿不愿意为这篇负责」,这些关口一直是我自己拍板。工具能给建议,却不知道哪句话背后是隐私、哪段往事不该被陌生人读到;它写出的初稿再顺,语气对不对、取舍重不重,最后还是要我逐句过一遍。

包括上面这些字——从致谢到「补不回来」的那几段,也是先有我的感受,再由它组织成文,我再改回来。这大概就是这次重建里人和工具的关系:它负责把一百篇变成清单和初稿,我负责判断哪些值得留下,以及承认哪些已经找不回来。

这次做到后来其实挺带劲——分类、脱敏、写脚本、核引用、起初稿,几乎每一步都有 AI 搭把手,我像个赛博义体,一个人顶得上一个团队。整个重建前后只用了两三天,还都是不断抽空确认思路的空档;放以前,这个工作量怎么也得折腾个把月。

工具也换了几茬。最后的工作量基本切到 DeepSeek Harness 上跑——它还很简单,但确实好用。之前 codex 和 claude 也各跑过一阵,试下来,反而是 DeepSeek 最能把一段工程稳定地撑到最后。这几个项目顺手也验证了不少「怎么长时间跑稳定工程」的路子:怎么拆任务、怎么留上下文、怎么在它跑飞的时候把它拽回来。

当然也沾了框架的光:结构被约束住,验收又不复杂,少了很多来回返工,才显得轻松。只是工作流被强化到这种程度,也许才是以后真正要面对的问题——人和它之间,最后还差在哪一点。这个答案我还没想清楚。

所以这次更新不是一次完成的「改版上线」,更像重新建立一套可以长期使用的编辑习惯。先把容器做得安静、边界做得清楚,剩下的内容就交给时间和持续的判断。

致谢

这次能完成重建,要谢的人不多,但都很关键。感谢杰哥送的 DeepSeek,让天才程序员活出第二世;也谢谢我老婆的 GPT 和 Claude——过去这些年工作的笔记和思路,要一点点整理出来,工作量实在不小,没有它们,这个站点今天未必能立起来。