独立开发者

现在我的一周,更多花在取舍而不是写代码上

如果一个人同时做产品、工程、内容和发布,真正稀缺的不是体力,而是高质量的取舍能力。很多周的核心工作,其实不是再写多少代码,而是持续砍掉会拖慢主线的东西。

我以前很容易把“有产出”理解成“写了很多代码”

独立开发早期时,这种衡量方式很自然:这一周做了几个页面、补了多少功能、修了多少 bug、加了哪些能直接看见的东西。代码会给人一种很直观的进度感,因为它有明显的完成形态,也容易让人相信项目确实在往前走。

但项目一旦进入产品、工程、内容和发布同时存在的阶段,真正最耗精力的工作就开始变化了。你不再只是在实现某个功能,而是在同时处理很多互相影响的线:公共博客 taxonomy 要不要继续收口,homepage 和 about 页要不要再对齐,support pages 是否已经足够统一,内容系统要不要继续上更重的栈,Cloudflare 构建问题要不要优先于别的优化,哪些文章应该补厚,哪些文章应该合并,release gate 和文档到底要不要继续细化。到了这个阶段,一周里最重的工作经常不是再写多少代码,而是不断决定什么该优先,什么该延后,什么应该直接砍掉。

取舍开始变成主要工作,是因为系统已经不止一条线了

如果项目只有一条主线,执行几乎天然就是最重要的;但当你同时维护产品、内容、公共站、运行页和发布链路时,问题就不再是“有没有事做”,而是“现在最值得做的到底是哪一件”。你很容易每天都很忙,也确实每天都在推进,可只要顺序错了,主线就会被稀释。

这段时间我最明显的感受就是,一周里最消耗脑力的时刻,往往不是写实现,而是排优先级。是先补 support pages regression,还是先继续重写薄文章?是先修 Cloudflare / OpenNext 的正式发布阻塞,还是先继续调公共博客视觉?是先把 homepage 从文章流升级成真正 front page,还是先追求更多内容数量?这些问题如果处理得不好,你表面上完成了很多动作,系统却仍然没有更清楚。

很多高质量的一周,本质上都在做减法

以前如果一周写代码不多,我会隐约觉得这周“不够像在工作”。现在我越来越接受另一种现实:很多真正高质量的周,看上去并不热闹。它们可能没有新增几个大页面,也没有上很多新能力,甚至没有太多显眼的功能增长;但它们完成了更重要的事,比如把站点主线说清、把首页从“只有文章流”改成更诚实的工作入口、把 support pages 拉回同一语言、把 Cloudflare 发布风险写进真实门槛、把内容系统的护栏补齐、把几篇最薄却最重要的文章压回真实项目现场。

这种周的共同特征是,你做完之后系统会更清楚,未来几周的误判成本会明显下降。它们不像交付清单那么显眼,但往往比继续堆东西更值钱。独立开发最稀缺的不是把自己塞满,而是让每一周的工作都更接近主线,而不是更远离主线。

我现在更重视“减少未来判断成本”这件事

回头看,我现在衡量一周质量时,会更常问一些以前不会问的问题:这周有没有把一个模糊边界讲清楚?有没有把一个会反复消耗注意力的问题提前收口?有没有减少下周重新理解系统现状的成本?有没有让产品、工程和内容这几条线更统一,而不是更分散?

如果这些问题的答案是肯定的,那这周大概率就是有价值的。因为真正拖慢独立开发的,很多时候不是实现本身,而是项目越来越难被自己快速解释。你一旦需要反复花力气“重新辨认当前项目是什么”,说明系统已经开始吞掉你的判断力了。相反,只要每周都能让主线更准确一点,后面的实现反而会更顺。

这也是为什么我现在更能接受“写得少”甚至“做得少”

如果这周主要完成的是 release gate 收口、Cloudflare blocker 修复路径厘清、taxonomy 回归补齐、旧内容合并判断这些事情,它们表面上没有那么像产出,但它们很可能比“又加了几个功能”更重要。因为这些动作在帮我减少未来几周的犹豫和误判,而不是继续制造更多待解释对象。

代码依然重要,只是它不再自动等于最重要的工作

我并没有因此轻视代码。相反,我越来越确认,代码之所以重要,是因为它承载了前面那些取舍之后留下来的结构。只是当一个项目进入更成熟阶段时,代码不再自动等于最重要的工作。很多时候,真正决定项目走向的那一步,发生在代码之前:决定不做什么,决定哪条线先停,决定哪些页面要说同一种话,决定哪些问题必须写进测试和 runbook,而不是继续留在脑子里。

对我来说,这种变化其实也是一种成熟。它意味着我不再只用“做了多少”来安慰自己,而开始更严肃地看待“做的这些是不是在把系统推向更清楚的方向”。独立开发做到后面,真正稳定项目的往往不是每周都拼命增加,而是每周都让主线更集中一些。