第 57 章

重新出发

字号 约 6.3 千字

做决定往往只需要一个深夜,可把决定变成日子,才是真正的修行。

三月初,辰布凡请了半天假,按着手机上查了又查的地址,找到国家开放大学在苏州的一个学习中心。那是一栋不起眼的老楼,夹在药店和面馆中间,电梯里贴满培训班小广告,门口一块铜牌,墙上贴着招生简章和历届学员的合影。

接待他的姓徐,戴眼镜的中年女人,说话不快却实在,没有电话里那些"规划老师"的油腔。

"升本科,我们这儿有开放教育,计算机科学与技术,两年半,学信网注册,国家承认,考公考研评职称都管用。"她把一张表推过来,"我把丑话说前头,这不是花钱买证。入学有水平测试,每学期有期末考,要本人来考;网课作业占平时成绩,你得学,混是混不下来的。学费按学期交,一学期一千七百多,五个学期,教材另算。小伙子,能坚持再来填表。"

本人考试、要上课、不能混——这几句丑话,反倒让他心里最后一点疑虑散了。这正是他要的:一条掺不了假的路。

"老师,我不混。我填表。"

填表、验证、交第一学期学费和注册费,一千九百多。扫码那一刻,他的手抖了一下——这几乎是他手头全部的活钱,付完,卡里只剩四位数。可当徐老师把一张盖着章的注册回执和两本崭新的教材《计算机应用基础》《高等数学》递到他手里时,他觉得这是二十二年来花得最值的一笔钱。

他抱着书走出学习中心。三月的阳光正好好,街边玉兰开了,白灿灿一树。他站在路口低头看怀里的书,忽然有种似曾相识的感觉——想起十几年前第一天背着新书包去上学,想起大专报到那天,他也是这样抱着一摞新书,觉得只要翻开它们,就能翻开一个新世界。

从那天起,他的生活被切成严丝合缝的几块。

白天,他是恒润的销售代表。挤公交,扫工业园,见客户,修机器,填沈芳给他做的台账。周主管的冷脸照旧,他听着,不往心里去,手上的活却干得更细——他需要这份工作养活自己、交学费。销售的种种不堪他认,可那些信任他的小客户,和靠真本事推开的门,是真的。

晚上七点半回隔间,扒拉一口饭,他立刻切换成第二个身份:开放教育的学员。八点到九点半,雷打不动一个半小时网课、作业。他那台二手笔记本又老又慢,风扇嗡嗡响,可高数的极限、导数、概率论,他听得格外认真——到底高考数学考过年级第三的底子,荒废几年重新捡起,竟比想象顺。

九点半到十点半,是第三个身份:一个零基础的"码农学徒"。

编程他选得谨慎。在图书馆泡了一个轮休,把入门书翻了七八本,最终定下Python——语法简洁,入门快,没师傅带、全靠自学的人最合适。他舍不得买付费课,就在免费网站上找了一门口碑最好的零基础课,一节一节啃。

第一节,老师教大家输出"Hello World"。他跟着一个字母一个字母敲下print("Hello World"),按下回车,黑窗口里跳出两个词。就这么一行,他却盯着屏幕心脏砰砰跳,像第一次让PLC指示灯按自己设想亮起来那样。

他在这种"写对了就给结果、写错了就冷冰冰报错、一个字母都不通融"的纯粹逻辑里,感到一种久违的完全公平——这里没有学历筛选,没有酒桌,没有周主管。电脑不看文凭,只认对错。

可自学的路,远没有"Hello World"那么浪漫。

从第二节开始,困难接踵而至。函数、列表,他开始频繁卡住。最折磨人的是报错——代码看着一模一样,运行就是错,红色的英文提示满屏乱跳。他常常在一个小bug上卡一两个小时,查资料,改符号,眼睛熬得通红,最后发现不过是少个冒号,或者把英文括号打成了中文。

每当这时,他能体会到一种面对未知的巨大孤独:在学校有老师可问,在厂里有顾师傅、刘哥,可编程这条路上,他一个人都不认识,所有的坑都得自己填。

他的办法还是笨办法。做笔记:把每个概念用自己的话写一遍,把每个踩过的坑、报错原因、解决办法,记进一个叫"踩坑录"的本子。刷题:从最简单的做起,做不出看解析,看懂了关掉解析自己重写,一道题有时写三五遍。不贪多:别人三个月的课,他计划用半年。

他在扉页写:"修行最怕的不是慢,是一日曝十日寒。"又给自己定了条铁律:无论多累,哪怕只学二十分钟,也要把昨天的代码亲手敲一遍——可以少学,绝不断更。

开学典礼是个周日晚上。他提前半小时坐在折叠桌前,洗了脸,换了干净衣服,把电脑擦了又擦,像小学生第一天上课那样郑重。

直播里老师讲学校历史、讲平台用法,弹幕来自天南海北的同学,刷着"老师好"——"70后老大哥""带娃妈妈求监督""工地老张也要上大学"——他忽然鼻子一酸。

原来这世上有这么多人和他一样,不甘心,埋在生活的缝隙里,偷偷地、笨拙地,给自己补一张通往更高处的门票。他们不是应届生,没有父母供养,要在工作和家务的夹缝里挤时间,要忍受不解和嘲笑,可他们还是来了。

他在弹幕框里认真打下一行:"辰布凡,2023春,计算机本科,请多指教。"打完笑了。辰布凡,二十二岁,大专毕业九个月,在一个七平米的隔间里,重新做回了学生。

当然,重新出发的路上不只有热血,还有无数次自我怀疑。

最崩溃的一次在四月初。那天他淋着春雨跑了一天客户,一单没成,被周主管在群里点名批评业绩倒数。晚上回来,高数一道级数证明死活解不出,编程作业连报二十几个错,折腾到十一点半,程序还是跑不通。

那口气混着连日的疲惫猛地涌上来。他合上电脑,逃一样躺到床上,盯着天花板,一个念头无比强烈:我图什么呢?一个成人本科,学信网承认又怎样?招聘上要的是全日制。编程学出来又怎样?大厂要九八五,要项目经验,谁会要一个二十二岁才入门、学了两个月的销售?会不会到头来,又是一场"大专巅峰"式的自我感动?

那是他立誓之后最接近放弃的一晚。他甚至想,明天就不学了,跟室友一样刷视频打游戏,多轻松。

可就在他伸手去摸手机时,手指碰到了枕底下那个东西——孟师傅送的旧电子表。

他把表摸出来,就着路灯光,看着那块磨得发亮的旧表。想起东光厂,想起孟师傅把表塞给他时那句"读了书就别干这个";想起老张烟盒纸那笔账,想起顾师傅的三十道题,想起张老师的"自强不息",想起父亲站在院门口送他时那张故作轻松的脸——

那么多人用他们的遗憾和善意托着他往前走,他怎么能在一块小小的代码报错面前,自己先躺下。

他盯着表躺了大概十分钟,然后一言不发爬起来,把报错一个词一个词复制进搜索框,查。凌晨十二点四十,他发现问题出在一个缩进上——Python用缩进区分代码块,而他随手敲进去的一个空格,让整个程序彻底乱套。他改,回车,程序跑通了,屏幕跳出正确结果。

那一刻他长长吐出一口气,浑身被一种战胜自己的快意充满。他在踩坑录记下这个错,末尾写:

"今日方知,最难调的bug不在代码里,在心里。"

从那以后,他又添了条规矩:允许崩溃,允许流泪,允许躺着骂娘,但最多十分钟。十分钟后,必须爬起来,重新面对那道题——因为他发现,所有那些让他觉得"过不去"的坎,事后看没有一个真过不去的。它们难,只是因为他还站在坎的这一边。

隔间的邻居很快发现,这个奇怪的合租者从不参加夜宵、开黑、打牌,每天早出晚归,回来就钻进小格子,对着嗡嗡响的破电脑又听课又敲键盘到半夜。有人私下议论:"这哥们儿怕不是考研的吧?这么拼。"也有人撇嘴:"一个卖酒的,学这个有啥用,装模作样。"

他偶尔听见,只当没听见。

最难的不是学习,是疲惫。销售极其消耗人,白天被拒、被晒、被敲打,回来常常累得只想瘫着刷会儿视频。他好几次点开软件,手指悬在屏幕上,两个小人打架:一个说"就看十分钟";另一个说"你忘了天桥上立的军令状,忘了'明日复明日'是怎么拖垮你的"。

每一次,他都咬牙删掉软件,周末又装回,再删。后来想了个更绝的办法:把手机锁进抽屉,钥匙交给屋里最自律的一个做设计的姑娘,十点半才来取。姑娘起初觉得他莫名其妙,听完解释爽快答应:"行,监督你。可以,将来你真成程序员,记得请我吃饭。"

周末,是他整块的修行时间。他一早背着装教材、练习册和电脑的双肩包去苏州图书馆,一坐一整天。那里有空调、台灯和满架子的书,更重要的是,有无数个和他一样在周末默默努力的人——备考的,考研的,考各种证的,互不相识,却有种安静的默契,只有翻书声和键盘声此起彼伏。

他在图书馆认识了个奇怪的"同桌":一个五十多岁、头发花白的保安,每逢周末也来自习,面前永远摊着法律专业的自考教材和真题,字写得工整。熟了才说,年轻时家里穷,只读了初中,这辈子揣着个大学梦。孩子成家了,他就报名自考。

"不图文凭涨工资,就图圆自己一个念想。一年过两门,六年八年我也考,考到考不动为止。"

辰布凡听得愣住。一个五十多岁的保安都敢从头追一个大学梦,他二十二岁,补个成人本科,还有什么好端着、好怕人笑话的。他在日记里写:

"今日遇一保安大叔,年逾五十,自考法律。吾甚愧。道之所在,虽千万人吾往矣,况几张试卷乎。"

老人知道他在学编程,还鼓励他:"你们这代人赶上好时候,一台电脑就能学手艺,可得珍惜。"

两个人常并肩坐到闭馆,一个看代码,一个背法条,谁也不打扰谁,却都从对方那盏灯下,借到了一点光。

春去夏来,他的两门功课都有了实实在在的长进。开放教育第一学期,形考次次按时、优秀,那些生疏的高数知识点一节节焊回脑子里。他甚至报名参加了线上学习小组,在群里给天南海北的成年同学解答高数题——群里多是边工作边读书的,有护士,有外卖员,有全职妈妈。当有人打出"辰同学谢谢,我终于搞懂了"时,他恍惚又找到了当年上台讲题的自己。

编程这边的进步,更让他吃惊。

四月一天晚上,他对着沈芳做的客户台账发呆:几十个小客户,每次算业绩提成、账期,都要拿计算器按半天,又慢又错。他忽然灵机一动:我学了一个多月Python,能不能写个程序帮我干这个?

念头一冒出来,他自己都兴奋了。说干就干:翻出学过的列表、字典、循环、文件读写,在本子上画了一晚上流程图,又用两个晚上敲代码调试。程序不长,一百多行,中间报错无数,他就对着踩坑录一条条查。第三个晚上,当他把数据导进去,按下回车,屏幕整整齐齐跳出每个客户的本月进货额、总欠款、账期预警和他的预计提成时,他激动得差点叫出声。

这是他写的第一个有用的程序。不是练习题,不是作业,是真切解决了他自己工作问题的工具。

他把截图发给沈芳,配文:"你给我的台账,我让电脑自己算了。"

沈芳回一长串惊叹号:"这就是编程?!你以后是不是能去当程序员了?"

他嘴上谦虚,心里那团火烧得透亮。这一晚,他第一次真切相信:编程不是屏幕里遥不可及的神话,它是一门手艺,和修机器、做账本一样,是普通人能一点一点学会、真能用来解决问题的手艺。

当然他很清醒。一百行小程序和能上岗的程序员之间,隔着几百上千小时的硬功夫,隔着数据结构、数据库、网络、项目经验,一座座还没望见顶的山。他不再做那种"三个月转行月薪过万"的梦了——那种梦,和周主管嘴上的"上不封顶"一样,是给心急的人画的饼。他现在只信一条:每天两小时,山再高,挪一步,近一步。

也是在这段埋头苦学的日子里,他的销售业绩竟悄悄有了些起色。

陈老板娘那台注塑机被他保养得服帖,开春后又进了两批货,还把他介绍给隔壁开五金厂的妹夫。姓朱,五十出头,是个比陈姐更精明的老江湖,第一次见面跷着腿,连问七八个刁钻问题:黏度指数,倾点,换油周期,不同钢材加工的用油区别。换了半年前的他,早被问懵。可他机电出身,又在润泽跟机器打了三个月交道,加上卖油以来恶补的产品知识,竟一一答得八九不离十。遇到拿不准的,也不装,老实说:"朱老板,这参数我不敢瞎说,我回去问技术,今晚给您准信。"

朱老板眯眼看他半天,忽然乐了:"就冲你这股不懂不装的劲儿,先送两桶试用。得好,我厂子的油都从你这儿拿。"

从朱老板厂里出来,他骑着共享单车,春风扑面,心里说不出的畅快。他磕磕绊绊,摸索出了自己的路:懂行,实在,说到做到,慢——可慢路走出来的客户,一个一个粘性极牢,不会因为一顿酒、一句更低的报价就跑掉。

四月底,公司接了一批贴牌油的促销任务。说白了,是把一批品质一般、利润极高的油,包装成"进口技术、性能卓越"的高端货,压给老客户。周主管会上特意点辰布凡:"你那些小客户不是跟你关系好吗?正好让他们消化。按我说的讲,别说漏了嘴。完成得好,奖金翻倍。"

辰布凡拿着那份产品资料,手都是凉的。他太懂油了。这批油的参数,他一眼看出:成本低,寿命短,卖给那些小机床、小作坊,短期用或许无妨;可陈姐那台被他精心保养的精密注塑机,还有几个信他的汽修店的进口设备,用这种油,迟早出问题。

他犹豫两天。最终上报订单时,给那几个最信他的客户,一个字都没提这批促销油;只如实告诉两个对成本极敏感、设备也皮实的老机器:"这批便宜,但寿命短,适合你这种粗用的。"让人家自己选。

月底对账,就他的促销没完成。周主管把他叫到办公室,关上门,彻底翻了脸。

"你是不是有病?送上门的钱不挣!我看你不是来做销售的,是来当客户孝子贤孙的!"

"周哥,那批油什么品质,你我心里都清楚。"辰布凡站得笔直,声音不高,却没躲,"陈姐那台进口机子用坏了,是几万块的损失。那是信我才用我家油的。我不能为这点提成,砸了人家机器,也砸了自己的招牌。"

"招牌?你一个月底薪都拿不全的废物,跟我谈招牌?我最后问你一遍,下月任务,你推不推?"

"不推。那种骗人的。"

周主管盯着他,像看一个不可理喻的异类,从鼻子里哼出声:"行,你有骨气。我倒要看看,你这穷骨气能不能当饭吃。试用期考核,你自己好自为之。"

走出办公室,辰布凡心里反倒异常平静。他知道自己和恒润的缘分快到头了。这里教会他很多:写字楼的真相,酒桌的规则,被人当众羞辱的滋味,都是红尘给他上的课,他认可。这三个月,他也确认了一件比金子还珍贵的事:他可以穷,可以被骂,可以垫底,但他不会为了钱,把明知不好的东西卖给信他的人。

这份工作可以丢,这点本心不能丢。

他开始不动声色地为自己谋划后路,但这次不再像上次那样脑子一热就裸辞。他定了三条:新工作必须稳,按时发薪,有基本保障;最好能准点下班,有周末,保证他读本科、写代码的时间;工资不能低太多。至于什么时候走、去哪儿,他还没答案,可他不慌了。

天桥那个深夜之后,他第一次不再怕"不确定"。因为他知道,无论下一份工作是什么,那两门雷打不动的功课,都会像锚一样,把他固定在向上的方向上。工作可以换,境遇可以变,可每天晚上那两小时灯光,是任何人、任何工作都夺不走的、只属于他自己的修为。

他还学会了记账,这是老张留给他的本事。他找了个硬皮本,每月月初把收入开销一笔笔列开:房租七百,话费五十九,吃饭一千出头,公交地铁一百多,学费摊下来三百出头。剩下的一半,存作下学期学费和应急的保命钱;一半寄回家。他戒了烟,除了推不掉的应酬一概不喝酒,衣服只换季打折买。同事大多一身光鲜,他宁可把钱花在一台新换的二手显示器上——老屏幕太小,看代码费眼睛,花二百六淘了个大的,当晚换上,写代码都觉得世界开阔了。

头一个月按账走完,存下六百多。他把这笔钱存进一张单独的卡,放在行李夹层,和那张始终没动过的、面额一百的回家车票放在一起。看着数字一点点涨,他心里有种和暴富完全不同的踏实——这是一个成年人,终于握住自己生活缰绳的感觉。

清明前后,苏州下起连场的冷雨。

有一天他冒雨跑了三个客户,傍晚回公司路上雨越来越大,他躲进一座公交站台,浑身湿透,鞋里灌满了水。站台上还有个卖烤红薯的小贩,也推着炉子避雨。两人有一搭没一搭聊起来。小贩说,在苏州摆摊十二年了,两个孩子,一个在老家读高中,一个带来这边读初中。

"摆摊是苦,风里来雨里去。可看着娃们一年年往上长,大——那个去年考上了县重点。我这心里头,比卖完一炉子红薯还热乎。"

辰布凡捧着小贩执意塞给他的半个热红薯,看雨幕里川流不息的车灯,忽然觉得,这座庞大的城市,就是由无数个这样的人撑起来的:流水线的工人,写字楼里的销售,摆摊的父亲,图书馆自考的保安,深夜学编程的自己。每个人都有自己的雨水,也都有自己的热红薯;每个人都在自己的境遇里,以自己的方式,不肯认输地修行着。

他从前以为红尘炼心的"炼",是被扔进炉子里烧,被锤子砸,是痛苦本身。这个雨夜,他有了新的体会:真正的炼,是被生活反复捶打之后,你依然选择做一个怎样的人——是被周主管羞辱之后,没有变成周主管;是见过贴牌油的暴利之后,没有把它卖给信你的人;是累到极点、穷到谷底之后,依然在晚上八点准时打开那台嗡嗡响的电脑。

五一,公司放三天假。他提前抢了一张回老家的硬座,夜里出发,第二天午后到,比平时便宜几十块。

他想家了。想母亲的饺子,父亲的沉默,妹妹叽叽喳喳的声音。更重要的是,想回去看看那个他离开大半年的小县城,也看看那个重新出发的自己。

临走他给沈芳发了消息:"我五一回家。五月十七考试,别紧张,你准备了那么久,两门都过,没问题。"

她回个握拳的表情:"放心,等我考过了,第一时间告诉你。"

他又去银行给母亲转了八百,这次是他用提成和省下来的钱干干净净攒的。附言栏写了一句:"妈,五一我回家,别张罗太多菜。"母亲电话立刻追过来,声音里满是欢喜,嘴上埋怨:"回来就回来,转啥钱,家里啥都有。你想吃啥?妈给你做。"

他笑着:"白菜猪肉饺子。"

火车在五月一日的深夜驶出苏州站。他靠在硬座车窗边,看着江南夜色一点点安静下来,怀里抱着那本Python练习册,计划在车上看两节。车轮有节奏地咣当着,像一首催眠又催人向前的歌。

他想起去年八月三十一,他也是坐着这样一列火车离家南下,那时揣着六千块和一肚子"大专巅峰"的傲气,茫然扑向一座陌生的城市。八个月过去,钱没挣到多少,傲气被磨掉大半,可他觉得自己比离家时富有了太多。

他有了一张刚注册的本科学籍,有一百多行代码,有老张、沈芳、陈老板娘这些人给他的人间信义,有被扇过耳光却还没弯下的脊梁,也有了一个清晰的、一步步看得见的方向。

火车一路向北。他翻开练习册,在摇晃的灯光里看了两行,又忍不住望向窗外。夜色深沉,偶尔有零星灯火从远处村庄里透出来。

他不知道这次回家会遇见什么。他只是隐隐觉得,这个叫故乡的地方,除了亲情和休整,似乎还为他准备着一场他始料未及的重逢。

— 本章完 —

核心代码