苏念前世确实会编程。985毕业的产品经理,代码能力大概在中级水平——能独立写后端接口和数据分析脚本,但不算顶尖架构师。这辈子从Python重新捡起,手感回温的速度比她预想中快得多,快到她开始觉得不太正常。
但她现在顾不上分析原因。手指在键盘上敲完最后一行代码,她按下运行键,屏幕上的小程序原型第一次完整跑通了全部流程——输入“茶树精油”,返回成分列表、功效标签、匹配肤质和建议搭配。页面简陋得像一份还没排版的Word文档,但背后那只小小的爬虫已经在稳定运转。
三月的最后一天,她在QQ空间发了一条动态——“念念颜究所的小程序原型跑通了。给它起个临时名字叫‘成分引擎0.1’。目前能查12种成分数据,下周加到30种。”配图是屏幕上那张丑丑的查询结果页截图。
评论区炸得比平时快。
“念念你还会写代码??”
“我以为你只会做代购和写公众号……你到底还有多少隐藏技能”
“程序媛+美妆博主+代购老板?你一天有48个小时吗”
苏念翻着评论,嘴角不自觉地弯起来。她想起前世会议室里那个PPT上密密麻麻的PRD文档,那时她敲代码敲到凌晨三点。现在同样在敲代码,但窗外是高中校园的晚自习铃,对话框里是顾清扬隔空发来的小人表情包。那时她敲代码是为别人的需求买单,现在是在给自己的小事业造工具。
鼠标移到顾清扬发来的小人表情包上。一个双手举着闪粉的潦草小人,旁边配字:“啊啊啊啊啊小程序!!”
然后连着发了几条语音,从第一条到第四条情绪递进极其清晰——从震惊到骄傲再到自觉被卷到的哀嚎,最后一条的声音忽然低了下去,像耳语:“以后我打字没那么快也能帮你查成分了。”
苏念把这条语音单独收藏进“核心档案”文件夹,然后回复:“所以你要开始学打字了?”
对面沉默了整整一分钟,然后弹出来一张照片——顾清扬家的老旧台式机键盘,按键之间的缝隙里夹着一张皱巴巴的指法图。配文只有一句:“已从拼音复习第一课开始。”
苏念盯着那张指法图看了半天。她认出了角落里一只露出半截的橘猫尾巴和顾清扬那双猫脸拖鞋。她知道顾清扬对电子设备从来没什么野心,连手机输入法都是手写,高中生的周末最多窝在沙发里打打泡泡龙、看看漫画。但现在这个人正把手指按在早已磨掉字母的键盘上,对着最基础的指法图开始一步一步学。
她忽然意识到一件事。不是因为技术升级。是因为一颗她从没要求过的小螺丝钉正在自己拧紧自己的螺纹,只为了成为她工具箱里更趁手的存在。
四月,江城一中一年一度的校园开放。苏念的展位在场东侧靠近主席台,旁边是学校机器人社团的展位,对面是美术社的水彩画展。横幅上印着“念念颜究所·高中生护肤成分科普平台”,展桌上摆着几排代购产品实物,中间支着一台笔记本,屏幕上是成分引擎小程序的实时演示。顾清扬早上七点半就到场了,穿着那件银杏叶Logo的念念队服,领口别了一枚她昨晚自己画的金属徽章,歪歪扭扭的毛栗子图案,字写的是“特约通讯员·顾”。
“你什么时候做的徽章?”苏念把桌布铺好,看了一眼顾清扬的领口。
“昨天晚上。”顾清扬有点得意,又有点不好意思,低头整了整桌角的宣传单,发梢在桌面上扫来扫去,“反正你品牌吉祥物都选毛栗子了,我就自己做了一个。”
这时几个高一女生凑到展桌前,其中一个指着笔记本屏幕问:“这个能查我用的洗面吗?”顾清扬看了一眼苏念,苏念正站在旁边和另一位家长解释定价逻辑,她深吸了一口气,接过话头:“可以的!你告诉我品牌和产品名,我帮你查——”
她打字还有点慢,每敲一个字母都要找一下键盘位置,但整个查询流程已经能独立走下来。那个女生凑过去看屏幕,顾清扬一边调数据一边补充说明,嗓子有点紧但语气很稳。
苏念和那位家长说完话,转头看到这一幕,微微抬了下眉,没有上前打扰。等那波人流散去,顾清扬回头发现苏念正靠在展桌边看着她,表情是她从没见过的安静。
“笑什么啊。”顾清扬的声音比她平时在教室里的音量低了不少。
“笑你刚才那一句酒精含量不高敏感肌可以用,已经和我说的一样标准了。”
“我背出来的,你以为我没做功课。”顾清扬别过头,耳从发丝间露出来,晒在太阳底下的那侧明显红了一截,她从人员登记表下面摸出一个小本子,翻给苏念看。整整三页,每个成分名后面用歪歪扭扭的字体标注了中文解释和风险等级,旁边还画了小人标注——危险致敏成分和较温和成分分别用不同颜色的荧光笔做了分类。本子翻到最后,背面画了一只带护士帽的毛栗子,配文是:“念念颜究所·成分小护士。”
苏念把本子拿过来看了很久。她的事业线里有精细的商业架构,有步步为营的拓展策略,但真正把“念念”从一个牌子变成一个让人想加入的东西的,不是她的那些模型和矩阵,而是另一个人的手绘荧光笔。她把本子还给顾清扬,没多说什么,只是伸手把她卷起来的衣领翻好抚平。
傍晚,展位收摊的时候,一位青企协的前辈在参展老师的陪同下站到了苏念的展位前。对方姓刘,四十多岁,做跨境电商起家,是协会指派给她的导师。他全程看完了小程序的演示,翻了她放在桌上供人取阅的手册,最后指了指屏幕:“数据库是本地爬的还是接的开源库?”
“目前是本地爬公开数据源,整合了药监局备案数据和学术文献摘要。下一步计划接入开源文献库做自动更新。”
“结构稳定了可以考虑给协会官网做个迷你版,展示用。”刘导师推了推眼镜,“下个月我让人把接口需求发你。”
苏念点头。刘导师走之前又问了一句:“你代码全是自己写的?”苏念点头说是。刘导师笑了一声:“那你还挺适合学计算机的。”
顾清扬正蹲在桌脚把空纸箱折平收进麻布袋里,闻言头也没抬,只是微不可察地晃了一下马尾,嘴角上翘的弧度正对着自己画的那枚针,像把一块小奖牌偷偷多擦了一遍。
收摊之后她们没有马上回家。场边缘的草坪刚修剪过,空气里弥漫着新鲜的草汁味。两个人并排坐在跑道外侧的水泥台阶上,苏念的手指因为敲了一整天键盘有些发酸,她摘掉头绳把头发散开。
夕阳把整个场染成蜂蜜色。跑道上有几个体育生在压腿,远处篮球场传来球鞋摩擦地面的声响。顾清扬把两个空纸箱拆了垫在地上当坐垫,又从包里摸出早上没吃完的半包虾条。
“刘导师说让你给协会做迷你版,”顾清扬咬着虾条,盘腿坐在她旁边,膝盖蹭着苏念的膝盖,“是不是等于你还没上大学,就已经有公司经历了?”
“算半个。协会那边主要还是展示性质,不是正式商业合同。”
顾清扬沉默了一会儿,用一种她不太常用的认真语气开口:“苏念,我现在能作小程序查询了。下个月再让我练练打字,我就可以帮你做展位的第一轮接待,把想查成分的人排到我这边,你去跟那些谈的成年人聊。”她说完又撕开一包虾条,递了一给苏念,眼睛没有看她,只看着她手里那虾条的影子投在跑道颗粒上。
苏念接过虾条没有立刻吃。那盏被她称为“大脑里特别亮的灯”在这一刻安静地亮着,能清晰感知到顾清扬指尖的温度、睫毛落下的频率、以及那句话后面没有说出口的全部心意。她以前习惯把认知能力用在“看穿事情”,但此刻这盏灯更多是用来“看清人”,看清坐在她旁边正假装专注撕虾条包装角、实则耳朵已经红透的人。
她没道谢,也没有长篇大论,抽走顾清扬手里那张被折了太多遍的指法图叠好,放进自己的校服口袋。
“明天周二没有自习,”她说,“放学来机房,我教你快捷键作。”
顾清扬转过头看她,用一种“赢了”的眼神瞥了她一眼:“那晚饭你包。”
“包。”
两个人安静地坐在那里。苏念低头看着手里那虾条,脑海里同时跑着好几件事:刘导师的接口需求、成分引擎的数据库结构优化方向、青企协官网展示版的排期、以及下周要给周悦确认的首批Sukin洁面包装方案——顾清扬画的毛栗子已经被她指定印在包装内盒上。
“你发什么呆?”顾清扬的发梢在晚风拂过时轻轻扫过苏念的肩头。
“在想一件事。”
“什么事?”
“念念颜究所的壳是我做的,”她说,声音在黄昏里自带一种低频的温柔,“但皮是你画的。”
顾清扬噎了一下,虾条的碎屑差点呛出来。她咳了两声然后没再接话。场逐渐暗下去,主席台顶的照明灯亮起,惨白的光束穿过跑道上尚未消散的粉尘。她把空了的虾条包装袋折成小方块,捏了很久,最后还是把脑袋歪过去,轻轻靠在了苏念的肩上。没有说话。风把马尾吹散,发丝扫在苏念的颈窝里,有草莓牛的味道。
苏念没有动。她任由那个温暖的发顶抵在自己肩窝,场照明灯的光落到两人交叠在台阶边缘的影子。她想,前世她拿过优秀员工、拿过奖、拿过不少实质的回报。但那些所有的赏识加起来,可能都没有刚才那句“我可以帮你做第一轮接待”更让她觉得——自己的事业真的有了。
两周后,苏念把“成分引擎”的数据库从12种扩展到了76种,并接入了两个公开的学术文献摘要库。她和周悦对接了首批品牌代理产品的正式包装——纸盒内层印了顾清扬画的毛栗子,下面配一行小字:“成分小护士提醒您:先查再用。”第一批货发出去之后,群里的用户开始自发上传开箱照,有人特意把毛栗子那一面翻过来拍特写,配的文案是“念念家的吉祥物太可爱了”。
某天晚上顾清扬发了一条空间动态,没有配图,只有一句话——“有人把我的画印在了包装盒上。我现在是有作品的人了!!!”后面跟了整整三排小人表情包。苏念给这条动态点了个赞。然后她在自己的备忘录里加了一行字:“下次升级,把品牌图库从‘念念素材’改叫‘顾清扬画’。”
周五晚上,苏念写完当天的编程练习,打开手机发现“和弦实验室”发了新消息。编曲老师接了一个新,给一部古风广播剧做配乐,一共六首,问她想不想分担其中两首的编曲,价格六百块一首。苏念接了。她打开编曲软件,面前摆着刚发来的剧本片段,屏幕上女主角的台词是一句很轻的话:“我知道风会走,但墙会记得风的方向。”
苏念把这行台词看了很久,然后打开了钢琴卷帘窗。她想写一首不用太复杂的曲子,钢琴垫底,弦乐在中后段进入,结尾留白。手放上键盘的时候,她的脑海里浮现的画面和广播剧无关。是顾清扬把虾条递过来时发梢扫过手腕的温度,是她指着成分表一个字一个字念给高一女生听时微哑的声线。是她靠在她肩上时,草莓牛混着傍晚草坪的味道。
她把编曲文件保存,文件名栏打了一行字——“墙与风”。另存进名为“念念颜究所·未来企划”的文件夹里。
初夏已深。她正坐在自己叠好的纸箱旁边,头发披散下来,膝盖上搁着一台笔记本,屏幕上成分引擎的数据库已经安安静静跑完了所有查询。她今天的待办事项清单长了又短——青企协要的展示版框架发过去了,新编曲的配器思路在本子上写了三行,顾清扬在十分钟前发来一张照片,拍的是她刚把指法图升级成快捷键表,表上粘了一个手绘标签——“快捷键首席翻译官·顾”。
她抬起头,看见衣架上挂着两件并排的念念队服。一件领口别着毛栗子徽章,另一件的袖口沾着她昨天画原型草图时不小心印上去的马克笔痕迹。窗外的风向从南方转来,吹起桌上那盆多肉的叶片,叶片挨着叶片,一株大一点,一株小一点,在夜风里轻微地碰了碰各自的叶尖。
她忽然想到,重生以来所有扩张、所有升级、所有亮到刺眼的“灯”,最后似乎都指向同一个结论——她现在能看穿庞大的供应链、杂乱的需求清单、复杂的乐谱和代码逻辑,但看清这一切的能力最核心的用法,依然是保护一个人和她的毛栗子徽章。