晚上十一点半,电脑屏幕暗下去的那几秒,我盯着桌上那本摊开的日程本。上面密密麻麻写满了下个月的安排:每周几次健身,每天雷打不动三十页书,周末见谁,甚至跟家里通电话的钟点都标得清清楚楚。箭头画得跟蜘蛛网似的,可我心里门儿清,明儿一早,这些预设的轨迹准保得被打穿。人算不如天算?拉倒吧,谁还没被现实按在地上摩擦过几回呢。
早些年我特信这个。觉得只要步骤拆得够碎,变量控得够死,日子就能像流水线上的螺丝,严丝合缝。后来不知怎么翻到本讲系统开发的书,里头正儿八经列着:项目的需求分析、UML系统建模、数据库分析、界面设计,再到最后的代码实现。作者硬是把一摊子工程塞进十二个章节,步骤清晰得吓人,操作说明简洁利落。仿佛你只要按图索骥,真能跑出一个零缺陷的系统。盯着那些流程图和数据表的时候,说实话,我心里头还真踏实过一阵子。谁不馋这点确定性啊?咱们总琢磨,生活要是也能这么过多好。先搞清楚自己想要什么,把需求列成清单;再把人际关系画成实体关系图,主键外键标明白;最后敲几行代码,按运行键,剩下的全甩给时间。可能吧。那时候总觉得参数调对,人生就能一键部署。现在回头看,啧,多少有点想当然了。
可人和事,哪是那种能兜底异常处理的数据库。
咱们太爱干“需求分析”这活儿了。选什么方向,进哪家公司,跟谁处一辈子,甚至三十岁往后每个周末怎么打发,全得提前盘得明明白白。预期写得那叫一个详细,仿佛现实会乖乖按你的结构录入。现实这玩意儿呢,专挑软肋下刀子,是个不按套路出牌的野输入源。你以为配置全做足了?系统偏在某个平平无奇的周二下午,啪,直接抛出异常。不是代码敲岔了,是底层逻辑压根就走不通。我越来越觉得,把日子当项目管,本身可能就是种过度自信的幻觉。
我见过太多人,包括曾经的自己,在一段关系里、一份事业里死命“调试”。对方回消息慢了,就反复琢磨是不是哪句话没过脑子;工作卡壳了,就来回扒拉,是不是能力模型搭歪了。总想用搞工程的那套去修补一切,以为参数拧对,状态就能回滚到初始版本。可感情和际遇,从来不是靠打补丁就能还原出厂设置的。有些变量,一旦放进来,就再也回不到原点。就像你非要把一段自然生长的关系硬塞进标准模板,最后呢,连原本那点松弛感都给磨没了。
其实那本书里最让我心里咯噔一下的,不是它教人怎么搭系统,而是它默认了“一切皆可被结构化”。生活偏偏就爱拆台。你精心排好的时间表,一场突如其来的暴雨就能掀翻;你反复权衡过的选择,某个瞬间被一句随口的话直接推翻。咱们总以为成长就是学会写更复杂的算法,后来才咂摸出味儿,真正的成熟,是学会跟那些无法被建模的东西和平共处。未必是彻底躺平,只是别把规划当成控制命运的遥控器。留点空白吧,喘口气。
现在再翻那些画满箭头的计划表,我已经不急着去划掉哪一项了。不再强求每段关系都得有份明确的“需求文档”,也不再死磕把每一天都跑成预设的脚本。计划脱轨就脱轨呗。关系里多点冗余数据怎么了?允许自己有时候就是干坐着,什么都不优化。不行吗?
屏幕彻底黑透的时候,屋子静得能听见冰箱压缩机嗡嗡的动静。我知道明天照样会撞上新的意外,那些没写进流程表里的琐碎,依然会照常冒头。不过没事儿。有些东西,本来就不需要被编译成可执行的程序。它能跑起来,没死机,就已经很好了。