我用代码,帮全村抢到了37张回家的票
#寻找年味
腊月二十六晚上,我妈发来一条语音,背景音是鞭炮声和吵吵嚷嚷的乡亲。
“俊杰,你王大爷非要请你喝酒,说二柱子的票是你抢的,他今年能回家过年了。”
我盯着手机愣了三秒。二柱子是王大爷的儿子,在广州打工,五年没回家过年。
而我只是一个写代码的北漂程序员。
一
三天前,我还在工位上改bug。
同事问我过年回不回,我说回。又问票抢到了没,我说早抢到了——用自己写的Python脚本。
他眼睛一亮:“能帮我也抢一张吗?”
那天下午,我的需求列表从“优化接口性能”变成了“帮三个同事抢票”。
晚上吃饭时我想起一件事:老家的乡亲们,怎么办?
我爸妈说,村里好多老人不会用智能手机,孩子在外面打工,每年都有人因为抢不到票回不来。王大爷连续三年去镇上网吧蹲着,一次没抢到过。
我突然想起小时候,爸妈下地干活,我是吃百家饭长大的。王大爷家的红薯、李大娘家的煮鸡蛋、张奶奶缝的书包……
这些画面和代码有什么关系?
有关系。我想试试。
二
我在家族群里发了一条消息:
“谁家有人要回来过年?把姓名、身份证、出发地、目的地、日期发我,我帮抢。”
十分钟后,我的微信炸了。
37条信息。37个想回家的人。
有在广州打工的,有在新疆摘棉花的,有在浙江工厂流水线的。最远的一个,在海南做建筑工,三年没见到孩子。
我建了个表格,一条条核对。王大爷不会打字,发来语音:“俊杰啊,二柱子五年没回来了,他娘眼睛都快哭坏了……”
我回他:“大爷,交给我。”
那天晚上,我蹲在出租屋里改代码,一直改到凌晨三点。
三
真正的难点不是抢票逻辑,是验证码。
12306的验证码会加入各种乡土元素——农具、农作物、家畜。对很多人来说这是障碍,对我来说反而是优势。
那些东西我从小见大。
耙子、镰刀、麦垛、毛驴、公鸡……我妈让我去地里送水的时候,这些我都摸过。我训练识别模型的时候,比城里程序员顺手得多。
我在脚本里加了一行注释:
# 亲情优先级:70岁以上老人或3岁以下孩子优先
不是为了公平,是我知道留守老人盼着孩子回来过年是什么滋味。
四
腊月十五,抢票正式启动。
我借了村委会的办公室,把电脑连上广播喇叭。全村人都守在自家收音机旁。
“北京到石家庄的票放出了!”我在屋里喊。
键盘敲击声。三分钟后,王建军儿子的手机收到了购票成功的短信。
屋外响起鞭炮声。
最难的是张奶奶。她儿子在广州,五年没回来,今年好不容易请了年假。但广州到县城的票一秒就没了。
我不死心。改脚本,监控中途站,锁定从长沙中转的票。
第三天凌晨两点,抢到了。
我把车票打印出来送到张奶奶家。老人接过票,手在抖。她没说话,眼泪一直流。
她摸着票面上的字,摸了很久。
那一刻我明白了:我写的不是代码,是把一个母亲五年的眼泪,变成她能摸到的车票。
五
最后一张票送出去的时候,我看了眼终端。
37条成功记录,37个家庭。
屏幕上是我最开始加的那行注释:
// 让每颗想家的心都能抵达
这行注释不是写给编译器看的,是写给我自己看的。
六
那天晚上,王大爷非要请我喝酒。
他二柱子回来了,提着大包小包,见了我就跪下了。我吓一跳,赶紧扶起来。他说:“俊杰,我这五年在外头,最怕的就是我妈等不到我。”
我说:“哥,你起来。我没干啥,就写了点代码。”
王大爷在旁边擦眼睛:“你写的不是代码,你写的是让俺们能团圆。”
酒喝到一半,二柱子掏出手机给我看一张照片——他在广州出租屋里贴的日历,每天划掉一格,划了五年。
他说:“就差一格了,要不是你,这一格得再划一年。”
回家的路上,我刷到掘金这个#寻找年味 话题。
什么是年味?
对我来说,年味不是饺子,不是鞭炮,不是春晚。
是我电脑里那37条购票记录。
是王大爷家的二柱子进门那一刻的哭声。
是张奶奶摸着车票发抖的手。
是那句写在代码注释里的:
// 让每颗想家的心都能抵达
我是个程序员。我写代码谋生,也用代码帮人回家。
这大概就是技术人的年味。
——写在最后
如果你也写了点什么、做了什么,让你觉得“这个年,值了”——
发出来吧。
话题里见。
(完)