
【2015】从校园到纳斯达克
【2015】从校园到纳斯达克的主角是林讯苏婉宁,这本小说的作者是小茶优创。周六下午,空教室里只有林讯一个人。苏晚宁发消息说要晚半小时到,李浩然下午有选修课,要四点多才能来。林讯乐得清静,一个人把聊天页面的接口写了大半。窗外的阳光很好,照在桌面上,把键盘晒得有点烫。他把窗帘拉...
启动阅读精彩节选
周六下午,空教室里只有林讯一个人。
苏晚宁发消息说要晚半小时到,李浩然下午有选修课,要四点多才能来。林讯乐得清静,一个人把聊天页面的接口写了大半。
窗外的阳光很好,照在桌面上,把键盘晒得有点烫。他把窗帘拉了一半,光线变得柔和了些,继续敲代码。
讯聊的聊天功能,他设计得比微信简单得多。
没有红包,没有语音通话,没有朋友圈,没有那么多花里胡哨的东西。就是最纯粹的收发消息,加上已读回执和正在输入提示。
不是做不出来更复杂的功能,而是他想让产品的第一版足够轻、足够快、足够稳定。功能越多,bug越多,用户越烦。
这个道理,他上辈子用了好几年才明白。
门被推开了。
苏晚宁走进来,手里提着两杯茶。
“给你,”她把一杯放在林讯面前,“学校新开的店,说是台湾的牌子,我排了二十分钟队。”
林讯看了一眼茶杯上的标签——波霸茶,少冰,三分糖。
他愣了一下。
他从来没跟苏晚宁说过自己喜欢喝什么口味的茶。
“你怎么知道我喜欢喝这个?”
“猜的,”苏晚宁在旁边坐下,打开自己的那杯,“你不喜欢太甜的,上次吃烧烤的时候你可乐只喝了两口,太甜了。三分糖应该刚好。”
林讯看着她,心里有一种说不出的感觉。
不是感动,是那种“被一个人放在了心上”的暖意。
她记住了他不喜欢太甜。
这个细节,连他爸妈都不一定知道。
“谢谢,”林讯上吸管喝了一口,“味道不错。”
“那当然,我排了二十分钟呢。”
苏晚宁打开电脑,调出她昨天画的设计图。
“你看,这是聊天页面的设计。消息气泡,我方的在右边,对方的在左边。头像在气泡外面,上方是昵称,下方是时间。输入框在底部,左边是表情按钮,右边是加号按钮,点加号可以发图片。”
林讯凑过去看。
设计图画得很细,每一个元素的位置、大小、颜色都标注得清清楚楚。他甚至觉得,这已经不是一个“临时设计”的水准了,拿给专业的设计师看也不会丢人。
“你这个设计,可以直接拿去当最终版用了。”
“真的?”苏晚宁的眼睛亮了一下。
“真的。比我见过的很多APP都好看。”
苏晚宁低下头,嘴角有一个藏不住的笑。
“那我去把这个设计转化成代码,”她说,“今天争取把聊天界面的框架搭完。”
“别急,慢慢来。先把布局写出来,再考虑数据绑定。”
“我知道。”
两个人安静地写了一会儿代码,茶喝了一半,冰块化了一些,味道刚好。
林讯的手机震了一下,是李浩然发来的消息:“选修课点名了,我在教室,四点才下课,你们先搞。”
林讯回了一个“OK”的表情,把手机放到一边。
“老李说要四点才来。”
“那我们先做,”苏晚宁头也没抬,“我刚好有个问题想问你。”
“什么问题?”
“你说的那个‘已读回执’,技术上怎么实现?”
林讯想了想,在纸上画了一个简单的示意图。
“很简单。客户端发送一条消息,服务端收到后存进数据库,同时往接收方的客户端推送一条通知。接收方打开聊天页面的时候,客户端发一个请求告诉服务端‘我看到了’,服务端再把‘已读’的状态推送给发送方。”
苏晚宁看着那张图,想了一会儿。
“推送用的是什么东西?”
“iOS用的是APNs,苹果提供的推送服务。安卓用的是各家厂商的推送,比较麻烦,第一版我们先不做安卓。”
“那消息的时序怎么保证?如果网络不好,消息发送的顺序乱了怎么办?”
林讯又画了一张图。
“每条消息都有一个时间戳和服务端生成的序列号。客户端收到消息后,按序列号排序再展示。如果发现中间缺了某条消息,主动去拉取。”
苏晚宁点了点头,在自己的笔记本上记下了几个关键词。
她现在的学习方式跟刚开始不一样了。最开始她是“学什么记什么”,现在是“不懂什么记什么”。笔记本上的内容越来越少,但每一条都更精炼、更有价值。
这是进步的表现。
一个人从“什么都想记住”到“只记不懂的”,说明她的知识体系已经建立起来了。
“林讯。”
“嗯?”
“我有个想法,”苏晚宁放下笔,转过身来看着他,“关于表白墙的。”
“你说。”
“李浩然说的那个表白墙,我觉得可以做成每天固定时间发布的形式。比如每天晚上十点,把当天审核通过的表白发出来,做成一张长图,让用户可以在朋友圈转发。”
林讯想了想,这个想法不错。
每天晚上十点发布,能培养用户的习惯。做成图片方便转发,又能带来新的用户。
“可以,而且我们可以在图片上加上二维码,扫码下载讯聊。”
“对!我就是这么想的!”苏晚宁有点兴奋,“而且还可以分主题,比如‘今天我想对你说’‘那些说不出口的喜欢’‘给陌生人的一封信’……每一期一个主题,这样不会显得单调。”
林讯看着她兴奋的样子,嘴角不自觉地翘了起来。
她不只是会写代码,她还会想产品。
这才是最难得的。
很多人写了一辈子代码,都是在实现别人的想法。苏晚宁不一样,她有自己的想法,而且这些想法还挺好的。
“苏晚宁,你有没有想过,以后不做技术,去做产品?”
苏晚宁愣了一下:“什么意思?”
“我是说,你有产品思维。你知道用户想要什么,知道怎么设计能让用户更愿意用。这个能力,比写代码更值钱。”
苏晚宁沉默了几秒,然后摇了摇头。
“我还是喜欢写代码,”她说,“写代码的时候,我能看到自己创造出来的东西,每一行代码都在搭建一个真实存在的世界。这种感觉很好。”
林讯没再说什么。
他理解这种感觉。
下午四点多,李浩然推门进来了。
“我来了我来了!选修课终于结束了!”他把书包往桌上一扔,“我跟你们说,今天老师讲的那个什么宏观经济,我一个字都没听懂。”
“你不用听懂,”林讯说,“你只需要把代码写好就行。”
“那倒是,”李浩然打开电脑,“对了,昨天说的表白墙,我想到了一个具体的实现方案。”
“说说看。”
“用户在前端提交表白内容,提交的时候要选表白对象是‘指定的人’还是‘不确定的人’。指定的人需要填写对方的特征描述,比如‘图书馆三楼靠窗戴眼镜的男生’。不确定的人就是那种暗恋,不需要写对象,只写自己的心情。”
林讯想了想,觉得这个设计还挺有想法的。
“可以,但有一条规则——不能出现真实姓名、学号、电话这些个人信息。”
“我知道,我在设计的时候会加一个敏感词过滤。”
苏晚宁抬起头看了李浩然一眼:“你会写敏感词过滤?”
“不会,但我可以学。”
苏晚宁看了林讯一眼,林讯笑了笑。
李浩然现在最大的变化就是这句话——“不会,但我可以学。”
以前他是“我不会,算了”,现在他是“我不会,但我可以学”。
这个变化,比他会写什么功能都重要。
三个人继续写代码。
苏晚宁在搭聊天界面的框架,李浩然在设计表白墙的后台管理页面,林讯在写消息推送的接口。
教室里很安静,只有键盘声和偶尔的讨论声。
写到五点多的时候,李浩然突然举起手。
“报告!我有一个问题!”
“说。”林讯头也没抬。
“表白墙的表白内容,谁来审核?我们三个人不可能二十四小时盯着吧?”
林讯停下敲键盘的手。
这是个好问题。
表白墙如果没有人审核,就会出现各种乱七八糟的内容。广告、骂人、造谣、甚至更严重的东西。但如果完全靠人工审核,三个人确实忙不过来。
“第一版先人工审核,”林讯说,“等用户量上来了,再考虑做机器审核或者招募志愿者审核。”
“志愿者?谁愿意这个?”
“肯定有人愿意,”苏晚宁说,“有些人就是喜欢看别人表白,让他们顺便审核一下,他们不会拒绝的。”
李浩然想了想,觉得有道理。
“那行,我先按人工审核来做。后台管理页面加一个待审核列表,管理员可以看到所有待审核的表白,点‘通过’或者‘拒绝’。”
“拒绝的要写原因,”苏晚宁补充道,“不然用户不知道自己的表白为什么没通过。”
“好,加一个拒绝原因的输入框。”
三个人又安静了下来。
林讯写完消息推送接口的时候,看了一眼时间,快六点了。
“今天到这儿吧,明天继续。”
“等一下,”苏晚宁说,“我再写半小时,这个页面还差一点。”
“我也再写一会儿,”李浩然说,“我那个待审核列表还差个分页。”
林讯看着这两个人,有点无奈。
以前都是他催别人加班,现在是被别人催着下班。
“行,再写半小时,六点半准时走。”
六点半的时候,三个人准时关了电脑。
李浩然第一个冲出去:“我去食堂了,饿死了!”
苏晚宁慢慢收拾东西,把设计图一张一张夹回文件夹,把茶杯扔进垃圾桶,把椅子推回原位。
林讯站在门口等她。
“你今天好像心情很好。”林讯说。
“有吗?”
“有,你今天笑了好多次。”
苏晚宁想了想,好像确实是。
“可能是因为今天写代码写得很顺吧,”她说,“没有遇到什么大问题,每个功能都能按预期跑通。”
“那明天如果遇到大问题呢?”
“那就解决它。”
苏晚宁背上书包,走到门口,看着林讯。
“走吧。”
两个人一起下了楼,走在校园的主道上。
六点半的校园很热闹,到处都是人。有人在去食堂的路上,有人在场上跑步,有人在路边发社团招新的传单。
“林讯。”
“嗯?”
“你说讯聊上线以后,真的会有人用吗?”
“会。”
“你怎么这么确定?”
“因为每个人都有想说话但不敢说的时候,”林讯说,“匿名树洞、表白墙,就是给这些人一个说话的地方。”
苏晚宁沉默了一会儿。
“那你呢?”
“我什么?”
“你有没有想说话但不敢说的时候?”
林讯想了想,说:“有。”
“什么时候?”
“现在。”
苏晚宁停下脚步,看着他。
“你想说什么?”
林讯也停下来,转过身面对着她。
夕阳在他们身后,把两个人的影子拉得很长很长。
“我想说,苏晚宁,谢谢你。”
“谢我什么?”
“谢谢你愿意相信我,谢谢你愿意跟我一起做这件事,谢谢你……”
林讯顿了顿。
“谢谢你那天晚上亲了我。”
苏晚宁的脸一下子红了。
“你……你怎么还记得这件事!”
“我每天晚上睡觉前都想一遍,怎么会忘。”
“林讯!你!”
苏晚宁举起拳头要打他,林讯笑着躲开了。
两个人在路边闹了一会儿,引得路人侧目。
最后苏晚宁停下来,喘着气,脸红红的,但嘴角是翘着的。
“林讯,你变了。”
“哪里变了?”
“你以前不敢看我的眼睛,现在不光敢看,还敢开我玩笑了。”
“因为我胆子变大了。”
“为什么?”
林讯看着她,认真地说:“因为我不想再错过你了。”
苏晚宁愣了一下,然后低下头,声音很轻地说了一句。
“你已经不会错过我了。”
林讯的心跳漏了一拍。
她没有说“我喜欢你”,没有说“我爱你”。
她说的是“你已经不会错过我了”。
这句话比任何告白都让他安心。
因为她说的不是感觉,是结果。
结果是——不管发生什么,他们都会在一起。
两个人继续往前走,这次走得更近了。
肩膀之间的距离,不到十厘米。
谁都没有主动去牵对方的手,但谁都知道,那一天不远了。
到了女生宿舍楼下,苏晚宁停下来。
“到了。”
“嗯。”
“明天下午两点?”
“两点。”
苏晚宁转身走了两步,又停下来。
“林讯。”
“嗯?”
“明天见。”
“明天见。”
苏晚宁笑了笑,转身上了楼。
林讯站在原地,看着她消失在楼道里。
他拿出手机,给苏晚宁发了一条消息:
“你今天真好看。”
苏晚宁回了一条:“你今天也好看。”
林讯:“男生不能用好看。”
苏晚宁:“那就帅。”
苏晚宁:“你今天真帅。”
林讯看着这条消息,笑了很久。
他把手机放进口袋,转身往回走。
四月的晚风吹过来,带着花香和青草的味道。
他深吸一口气,觉得活着真好。
重生真好。
遇到她真好。





















