“设计工程”的诱惑
这一切讽刺地始于 Andrej Karpathy。我在他的博客上翻阅,欣赏那种“内容优先”的哲学。这让我发现了 Bear Blog——干净、极简、不废话。我很喜欢这个理念。但当我碰到免费版的媒体上传限制时,我犹豫了。我想要那种极简主义,但不想要那些限制。
然后我掉进了兔子洞。
我试了 Hugo 搭配 PaperMod 主题(就是 Lilian Weng 用的那个)。功能上没问题,但它缺少……灵魂。感觉就像一个默认设置。然后,我看到了 Paco Coursey 的博客。
那是一次顿悟。极致的性能、优雅的排版、恰到好处的细微动画,以及那种扑面而来的“静奢感”(Quiet Luxury)。我被迷住了。我不只是想要一个博客——我想要的是那种东西。我开始痴迷于“设计工程”这个概念。
五天的 Vibe Coding 冲刺
接下来的五天,我一个字的内容都没写。取而代之的是,我陷入了一种“氛围编程”(vibe coding)的恍惚状态。
那几天晚上我都在调 CSS、和 Hugo 模板搏斗,试图复现 Paco 的美学。由于我缺乏从零搭建的前端能力,我重度依赖 AI 工具,不断提示它们修复布局偏移和动画 bug。这是一个令人沮丧的循环:AI 修好了一个问题,又弄坏了两个。
但最终,我做到了——一个定制的、高性能的、Paco 风格的 Hugo 博客。它看起来近乎完美。我感觉自己效率爆表。
文件系统的摩擦
生产力的幻觉在我真正尝试写作的那一刻就破灭了。
迁移旧笔记暴露了这套工作流的残酷。在 Hugo/Markdown 的世界里,每篇文章都变成了一个文件管理项目:
- 命名规范:我必须把中文标题翻译成英文,格式化为 kebab-case,确保对 SEO 友好。
- index.md 陷阱:为了正确管理图片,我不能只有一个 Markdown 文件。我需要一个文件夹,文件夹必须以文章命名,里面的文件必须叫 index.md。
- 盲人编辑器:在 VS Code 中插入图片意味着写一个路径字符串。我看不到图片本身。要检查它是否正常工作,我得构建站点并检查本地服务器。
- 依赖地狱:视频插入会报错,frontmatter 格式必须精确无误。
我意识到我不是在写作——我是在维护一个数据库。我把 90% 的精力花在了容器上,只有 10% 花在了内容上。
虚荣指标 vs. 分布式队列
转折点来自一个意想不到的地方。我当时正在做一个复杂的后端项目——一个分布式延迟队列系统。那是高难度的、逻辑密集型的工程工作。在那个项目期间,我偶然发现了 Ivan Zhao(Notion 创始人)的个人网站。它……就是一个 Notion 页面。没有自定义字体,没有花哨的动画,没有“设计工程”。
我突然意识到:我一直在优化错误的东西。
那五天的 CSS 调优是一个虚荣指标。我想要一个炫酷的网站,好让潜在读者进来后觉得:“哇,这个人真厉害。”我是在表演能力,而非展示能力。 我的后端项目需要深度专注,我没有多余的心智带宽去和博客的文件系统搏斗。我需要一个写作摩擦为零的工具。
拥抱“无聊”的技术栈
所以,我转向了 Notion。
它的可定制性不高,没有 60fps 的动画,也不能彰显“我是前端大师”的信号。
但写作体验堪称完美。我可以拖拽上传图片、在手机上写作,不需要给文件命名为 index.md。
最终我意识到,“公开学习”(Learning in Public)的核心不在于平台,而在于思考的透明度。说实话,现在根本没人在看我的博客。但这反而是一种解放——既然我是唯一的用户,我不如为我自己的用户体验做优化。
产出内容,而非容器。