2026-10-07
成长认知:从券商到全栈的三年
我写代码最值钱的习惯,跟哪个框架用得熟没关系,是在券商那几年被逼出来的一个条件反射:钱花出去之前,先问这笔钱能不能回来。
这话听着像废话。但我见过不少写代码的朋友在这上面栽跟头,包括刚开始做独立项目的我自己,而且栽得还挺体面——代码漂亮、架构干净、测试写得整整齐齐,就是没人用。
那会儿我对一个功能特别上头,具体是什么就不说了,反正是那种"我觉得用户一定需要"的东西。我花了差不多两周,数据结构推翻重来两次,交互抠到每个按钮的动效,上线那天还挺得意。然后盯着后台看了一周,几乎没人点。
那种感觉与其说是失落,更像是月底对账对不平。在券商的时候,一个项目要过会,材料第一页永远是:市场多大、谁买单、凭什么是我们、多久回本。没人会因为模型做得好看就批钱。可轮到自己写代码,我居然直接跳过了这一页,因为写代码太爽了,爽到让人忘了它也是一笔投入。
开发的成本特别容易被低估,因为它不走账。你花两周写一个功能,银行卡余额一分没少,所以不心疼。但时间是本金。
从那以后我给自己定了个有点土的规矩:任何超过三天的开发,动手前先写一页"立项说明"。不用正式,就回答几个问题——谁会用,他现在怎么凑合,他凭什么换成我的,我怎么知道他真的想要。这一问最狠,因为"我觉得"不算答案。
"我怎么知道他真的想要",在金融里对应的东西叫尽调。你不能听管理层讲故事就下判断,得去看现金流、看客户、看渠道。放到独立开发上,尽调的办法其实很朴素:去用户待的地方看他们在骂什么,发个帖子问一句,做个只有一屏说明的落地页看有没有人留邮箱,或者干脆先用最笨的办法手工帮几个人把事办了,看他们会不会回头再来找你。
duetfolio 就是这么来的。我自己同时拿着美股和港股,两个市场、两种币种、交易时间还错开,现成的工具用着总有点别扭,我就先拿最笨的办法自己记。凑合了挺久,确认这个别扭是天天都在、不是一时兴起,才认真把它写成产品。那时候动手,心里是有底的,因为需求不是我坐在桌前脑补出来的。
这跟做研究其实是一回事。好的投资逻辑很少是关起门推出来的,多半是你在某个地方看见价格和价值之间有条缝,然后去验证它。写产品也一样。
工程那一半给我的东西同样要命,而且是金融那几年给不了的。金融人有个通病:分析得很透,做得很少。我以前能把一个行业研究写到几十页,结论清清楚楚,但从没亲手造出一个东西让别人用。
工程里我最受用的是"小步快跑、随时能回滚"。在券商,一个判断错了代价很大,所以大家习惯想清楚再动。软件不一样,试错成本可以压到很低:一个想法,半天出个能跑的版本,扔出去看反馈,不行就删。这其实是把金融里"控制下行风险"那套用到了极致——每次下注都很小,次数很多,亏损有上限,上行没上限。
两边一直是互相拽着的。金融那一半负责踩刹车,问值不值;工程那一半负责踩油门,说先做个最小的试试。
我现在的习惯大概是这样:一个点子冒出来,先用金融脑子过一遍——有没有人愿意为它付钱或者付时间,我够不够得着这批人,做它的机会成本是什么。过得去,再切到工程脑子——能验证需求的最小版本长什么样,一个周末能不能做完,哪些先写死、先手工、先不优化。
AI 出来以后,这套算账反而更重要了。以前写代码慢,慢本身就是一道过滤网,懒得做的东西自然就不做了。现在一个下午就能让 AI 搭出一个看着挺完整的应用,造东西几乎没门槛了。门槛一没,"为了做而做"的诱惑就更大。我自己就有过一阵,隔几天开一个新坑,每个都能跑,每个都没人用,仓库列表越拉越长,活像一个买了一堆股票却从不看基本面的散户。
那段时间让我重新琢磨了自己那句座右铭:"把重复留给机器,把时间留给自己。"以前我理解偏了,以为重点是让机器多干活。其实重点在后半句:时间是留给自己的,所以每一块都得花在值得的地方。AI 把写代码的成本打下来了,省出来的时间要是又拿去造没人要的轮子,等于把省下的钱原样亏回去。
现在我开项目比以前慢一点点,但扔掉的项目少了很多。wps-agent-skills、muse-file-bridge 走的也是同一条路:先在自己的日常里被同一件麻烦事烦了好多次,确定它会反复出现,才动手。renqing-ledger 解决的事情很小,但小不要紧,要紧的是我确定它有人需要。
每次准备熬夜写一个"大家肯定需要"的功能,我会先停半小时,在备忘录里把那一页立项说明写出来。"我怎么知道他真的想要"那一栏要是空着,我就合上电脑。