我带班那几年最怕一种东西——改以前的图纸。不是那种画错的图纸,是画得没错但谁也看不懂的图纸,就是当初那个人自己可能也看不懂了。你问它为什么这儿留了个洞,它说当时就留了,再问就翻脸。后来我明白了,那叫"历史遗留问题",说人话就是没人敢动它。
上个礼拜我就干了这么一件给自己找不痛快的事。我把一段自己写的 Python 翻出来,让 AI 重写。
那段代码是几个月前写的。当时项目部让我给核算组写个小工具,帮他们算混凝土方量。我第四个月才敢碰这种稍微正经点的活儿,憋了一星期写了个两百多行的东西,跑起来倒是能用。但问题是,那个时候我对"循环"这个东西还没有真正建立起感情,所以,写的基本全是 if。
一个构件类型一个 if。梁一个,板一个,柱子一个,楼梯一个。写到最后三十多个 if 串在一起,像工地上的临时配电箱,线头全露在外面,但是能用。就这么过了两个多月,核算组那边开始加新构件类型,来问我能不能加一种坡道。我打开那个文件看了一眼,看了十分钟,然后我决定——请外援。
我把整段代码复制给 ChatGpt,也没组织语言,就直接跟它说:这段代码是算混凝土方量的,你看看能不能重写一遍,跑出来的结果得跟原来一模一样。
它回了一句话,我到现在都记得。"这段代码有四十多个条件分支,您是不是从 Excel 转过来的?"
我当时差点把手机摔了。它怎么知道的。老底被人一眼看穿的那种感觉。我确实是,干了大半辈子土木,表格里框习惯了,脑子里就只有格子。
不过它没笑话我。它直接给了一版新的,大概八十行,用了个东西叫"字典",说把这三十多种构件类型的参数都列在表里,循环处理就行。我看了之后心里那个服气啊,真的是,又服气又窝囊。服气是它真好,窝囊是我怎么没想到。
然后就是验收了。我拿原来算过的三组数据去对,前面两组都对。第三组对不上了,差零点三七方。
这就跟我们验钢筋一样,抽检不合格,整批都得打回去。我就问它,说数据不对。它看了半天,说有个进位规则被它改了,原来的代码是四舍五入,它给写成了银行家舍入。我说别说那些我不懂的,你就按原来的算。它说好,又改了一版。
这回来回对了五组数据,全对上了。我还让核算组那边拿真实项目试了一个礼拜,没报错。这周才敢说这事办成了。
后来我把这版代码打印出来了,贴在我桌子前面的墙上。我媳妇说你有毛病,代码打印什么。我说你不懂,图纸我得挂墙上才能看懂,代码也一样。还真是,人到了这个岁数,眼睛不顶用了,纸上的字比屏幕上的看得清。
这段代码我大概还能再记两年。不是因为学了什么字典、什么循环——是因为头一回有个外援,把我那堆露着线头的配电箱规规矩矩收进了箱子里,线头还给你标了号。
一个道理。工地上的活儿,交给谁干都行,但验收得自己来。
我又把字典这个概念记到了本子上,旁边写了个注:这就是把常用材料提前备好,不用每次跑仓库去领。可能不恰当,但我这么记就记住了。
四十岁怎么了。四十岁学得慢,但认东西认得准。