清晨被楼下老桂树的香气勾醒时,我第一反应不是摸手机,而是趿着拖鞋扒到窗边——深绿的叶片间攒着细碎的米黄色花簇,风一吹,甜香像浸了蜜的雾,裹着隔壁早餐铺的豆浆香飘进来。我突然想起昨天卡了三个小时的Python爬虫代码,连香都带着点“我怎么连个动态页面都爬不下来”的苦。

蹲在窗边啃包子时,我对着桂树发呆:这花每年开得都比前一年密,去年我还只会用手机拍它发朋友圈,今年却想把它的香气“爬”进我的博客里——比如做个小工具,把城市里桂树开花的时间、位置,连带着网友拍的照片和文字都汇总起来。这么一想,手里的包子都更香了,连电脑开机时的加载条都顺眼了点。

今天特意约了做前端的阿凯来家里帮我看代码。他拎着半盒刚买的桂花糕进门,第一句不是问问题在哪,而是先扒着我家电脑看:“你这代码缩进怎么跟桂树的枝桠似的?歪歪扭扭的。”我脸一红,赶紧把屏幕往自己这边挪了挪——昨天熬到两点,缩进全凭心情,有的地方用四个空格,有的地方用两个,乱得像被猫扒过的草窝。

阿凯把电脑拉过去,指尖在键盘上敲得飞快,嘴里还念念有词:“你爬动态页面,光抓静态标签有什么用?得等JS渲染完再取数据啊。”他一边改,一边给我讲什么是“显式等待”,还把他之前爬美食数据的代码扔给我:“你看,我把不同站点的解析逻辑都拆成小函数了,改起来方便,也不容易乱。”我盯着屏幕上被捋得整整齐齐的缩进,突然反应过来:代码和养桂树其实是一个道理,不能乱堆,得有章法。

改到一半,窗外飘来一阵特别浓的桂香,阿凯突然停手:“你闻,这味道跟我小时候外婆家的桂树一模一样。”我凑过去,他手机里正存着一张老照片:小时候的他举着半块桂花糕,站在满树的桂花下,脸被晒得红扑扑的。“以前总觉得外婆家的桂树香得特别,后来才知道,是因为每次摘了花,外婆都会给我做桂花糕。”他说着,把自己带的桂花糕推过来,“尝尝,我买的这家,糖放得少,有股清香味。”

我咬了一口,甜而不腻,带着点桂花的微苦,突然就懂了他说的“特别”是什么意思——不只是花的味道,还有藏在里面的回忆。之前我总觉得“技术”是冷冰冰的,就是代码、数据、工具,今天才突然开窍:我做那个桂树小工具,不只是为了练技术,还想把大家和桂树有关的小事存起来,比如有人拍的桂树下的婚纱照,有人写的外婆做桂花酱的日记,这些才是这个小工具最暖的地方啊。

下午阿凯走了之后,我把代码重新理了一遍,把解析逻辑拆成了小函数,缩进也全改成了四个空格,看着整整齐齐的代码,心里特别踏实。傍晚的时候,我搬了个小凳子坐在桂树下,拿手机拍了好多照片,风一吹,桂花飘到我肩膀上,我伸手接住,突然想起来:去年我站在这棵树下,还只会感叹“好香啊”,今年我已经在学怎么把这份香,变成能和更多人分享的东西了。

原来学习新技术不是为了凑KPI,也不是为了跟别人比谁会的多,而是能把自己喜欢的东西,用更有意思的方式留住、分享。比如把桂香藏进代码里,把别人的回忆,变成屏幕上鲜活的内容。

晚上煮了碗加了桂花的汤圆,甜得刚好。明天打算把小工具的原型做出来,先爬我家楼下这棵桂树的信息,再看看附近有没有人也拍了它——说不定能找到和我一样,每年都等着桂花开的人呢。