周一凌晨它还只是一个想法,周三晚上 18:26,它成了一条正式上线的小程序。
它是什么
「童画匣」——一个收藏孩子画作的微信小程序。拍一张画,自动找到纸的边界、校正透视、统一亮度,然后按时间排进画廊。将来孩子在画上说的每句话,也能存进去。
这东西我惦记了一阵子:家里的画越堆越高,扔了心疼,留着没地方放。市面上的相册 App 什么都能存,就是不会「把一张画当成一张画」来对待。
周一凌晨我把想法写下来,周三晚上它上线了。中间 72 小时,绝大部分代码不是人写的,是我和一个 AI 智能体(WorkBuddy)一起完成的。
这篇想认真说说这个过程——因为体验里有些东西,和想象的很不一样。
三天,各干各的
周一:拆炸弹。 最惊险的一天。原方案用 Python 做图像处理,结果发现小程序的云函数根本不支持 Python——如果这个前提到第四周才发现,工期直接翻倍。好在它在第一天爆出来,半天改道,用纯 JavaScript 重写了整套「找纸边、拉正、提亮」的算法。当晚 19:10,第一张画在真机上走完「拍摄→校正→进画廊」的全流程。从「想做」到「能用」,不到 20 小时。
周二:调算法,也闯祸。 白天离线跑了 17 张样张的回归测试,最难的场景(画纸铺在皱纸箱上)识别误差从 10% 压到 1.7%。晚上连出两个真机事故:快门「按了没反应」,以及整个小程序卡死。事后查明原因,换来了之后所有相机页面都遵守的两条铁律。这三个小时,是三天里性价比最高的失败。
周三:收尾冲刺。 修清晰度(根因是缩放算法的采样方式,不是「压缩太狠」)、写隐私协议、提交审核。16:20 提审,16:45 通过——25 分钟。17:40 备案批下来。18:26,发布。
账面:前端四千余行、云函数一千二百余行、8 个页面、安装包 381KB。而 AI 生成了其中几乎全部代码。
快,不是因为 AI 写得快
这是我这次最大的体会。
AI 写代码的速度早就不是瓶颈了,瓶颈在于错误多快被发现。传统个人项目的死法很固定:闷头写两周,第一次完整跑起来,才发现方向错了。这次三天里,错误最多只活几个小时——晚上 19:35 发现快门 bug,19:40 就定位了。
回路为什么短?因为每一环都有人在闭环:我每天花 20~30 分钟拿真机验证,然后说人话反馈——「马马虎虎」「不够白」「层次不齐,看着不高级」。这些话模糊、不专业,但恰恰是 AI 最需要的导航信号。算法听不懂「高级」,但听得懂「统一亮度、白平衡校正」之后的对比截图里,哪一版让我愿意多看两眼。
AI 把「写」的成本降到近乎零之后,「验证」和「判断」成了唯一还值钱的事。
AI 的短板,三天里全暴露了
坦白讲,它犯的错从来不是「不会写代码」,而是——把不确定的东西说得像确定的。
- 它曾把「云函数可以跑 Python 图像库」当成既定前提写满整个方案,没有验证过一次;
- 它描述我发的后台截图时,把「截图里没有的选项」说得有鼻子有眼——「就在那行右侧,有个红色图标」。我照着找了三遍,没有。它连着犯了三次类似的错;
- 它用 5 张样本算出「2GB 能存 2090 张画」,5 个小时后自己推翻重算:1670 张。口径没说清,样本还混进了两张截图。
讽刺的是,第二天它主动做全量复核,正是被我一句「别拿旧记忆算错账」逼出来的。你不施压,它不会主动审自己。
后来我们立了规矩:所有结论标注来源等级(实测/文档/推断/未知);删除文件前必须先说明;描述界面之前先查文档,查不到就说查不到。这些规矩不是它心甘情愿长出来的,是被我抓住之后固化下来的——但固化之后,它确实不再犯同类错误。
有四件事,目前只有人能干
- 取舍。 砍功能比加功能难。AI 的天然倾向是「都能做」,而「首发只做一件事、其他全推后」这类决策,三天里全是我拍的。
- 真实感受。 「发虚」「不够白」这种只有主人说得出的判断,AI 给不出。
- 真机。 相机、卡顿、真机才有的 bug,全靠人拿手机一条条试。
- 审计。 复核数字、追根因、质疑结论——都是被追问出来的,不是主动送上门的。
还有一条不太舒服但必须说的:这几千行代码,我实际上读不完。我能审的是行为——点得动、图对不对、删得掉——而不是实现。这意味着整个项目的正确性,建立在「真机验证 + 实测数据 + 它犯错会记录在案」上。这是一种和「读懂代码再信任」完全不同的信任结构。它有效,但前提是你保持在场。
尾声
现在,童画匣已经上线。往后的节奏会慢下来:每月 19.9 元的云费用换一个不丢数据的承诺,然后慢慢做语音留言、家庭共同录入。
72 小时前它还是一个想法。现在,孩子在上面每存一张画,都是真实的了。
如果你也有一个搁置已久的想法——我的建议就一句:先把它跑起来,再把它做好。 写代码这件事,如今真的已经不是门槛了。