克制

这周我砍掉了 20% 的功能。不是因为那些想法不好,而是地基比天际线更重要。

Product

这一个礼拜我在准备其他的代码,没怎么碰这个项目。等我回来重新打开它的时候,看到的东西不太一样了。

每天都在做的时候,你会觉得每个功能都很有粘性——毕竟是你投了大量时间开发出来的,每一块都觉得不可或缺。但放下一个礼拜,没有了那种粘着感,事情反而清晰了。

距离让我看见了什么

少了每天的惯性投入,一些现实的考量浮了上来。

我之前设计了特别多工作流,想法很 ambitious——多步骤、多分支、深度可配置。想象很兴奋,但换了双眼睛再看,我看到的是认知负担。到底有多少人会真的走完那些流程?这不是一个确定的数字。

更诚实的做法是回到那句老话:基础功能能不能跑通,能不能做到最好用?

先打地基,再盖楼

有一个宏大的蓝图我是同意的。但第一周就要建摩天大楼,那是另一回事。先把地基打好,顶层的事可以之后再来。

这不是在说投入够不够,也不是在质疑想象力。而是关于"有的放矢"——分清楚什么是紧迫的,什么是愿景。

这个阶段真正要权衡的是:我是花时间打磨已有的功能、形成产品闭环?还是开更多线程、做横向扩张?确实有很多可以做得很惊艳的东西,但每做一个,都在挤压打磨基础场景的时间,也在拉长开发周期。

第一个月和第六个月

重新审视的时候,我发现有些功能像是这个产品六个月以后的样子,有些则是第一个月就该想清楚的。

所以我把几乎所有属于第六个月甚至第一年的东西,从当前版本里拿掉了。不是删掉,是存起来。这样做是为了留出空间,去思考怎么把最基础的东西表达清楚。

过度解释的倾向

有一件事是我在构建过程中发现的:虽然我每天都在用这个产品,但我一直在担心自己有没有交代清楚它到底是做什么的。会不自觉地加更多引导、做更多解释、试图挡住所有可能的困惑。

根源在于我不知道别人会不会用它。而真相是,没有进入市场就不会知道。最好的反馈永远是用户反馈。没有它,就容易陷入一种在真空里打磨的状态——被自己的投入感动,而不是被真实信号驱动。

所以这周我砍掉了 20% 的功能。我觉得还是要把这个做得更具体一些。

一个月前的我不会这么做

一个月前如果有人跟我说砍功能、少做一点,我大概会觉得:凭什么要限制自己?那样感觉想象力受到了束缚,想得不够远。

但后来我在想,很多想法虽然好,并不意味着一次就要把功能仓库塞满。一口吃不成胖子。有些想法需要放一放,关键是它们现在是不是被需要的。

西瓜和芝麻

当面对越来越多的问题和 task 时,核心问题会反复浮现:你到底想做什么?一个什么都想做的产品,最后什么都做不好,精力会很分散。

觉得疲劳的时候,答案不是花更多时间把所有事情都做完。有时候你需要跳出来,站在更高的地方看一看:关于这一切,我到底在做什么?

关键不是你有十个还是一百个 agent skill,而是弄清楚这十个到底发挥了多大作用。三个月以后它应该是什么样?六个月以后呢?

这不是要从每天挤出更多 productivity,而是在时间维度上去看这个产品怎么演化——从自己的 ecosystem 出发,找到它的生态位。

写软件也是在练习表达

这个产品以什么方式和人交互?在这个交互里,什么是最重要的?

就像和人说话一样。语速快不代表你要说的更多。恰恰是在你有大量信息要传达的时候,更要想清楚什么是最重要的,然后说那个。

不是把所有东西一股脑列出来,而是抓双方都能有效沟通的东西说。

写软件会倒逼你想清楚这件事:你到底想说什么?什么是最重要的?

说到底,写代码也是在练习如何清晰地表达自己。

这不是营销,是我们自己踩过的坑。

下载 macOS 版 Reso

阅读更多 Reso 构建日志