被AI搞崩心态的那个晚上,我差点把键盘砸了

晚上十一点,我以为只剩最后一个bug。
产品经理在群里@了我三次,说客户明天演示,那个该死的导出功能必须跑通。我看了看代码,逻辑不复杂,就是把数据库里几张表的数据拼成一个Excel,按日期分sheet,加几个汇总行。我干了六年开发,这种需求闭着眼睛都能写。
但那天晚上我犯了一个致命的错误——我让AI“帮我改一下”。
噩梦就此开始。
起初它看起来像个神队友。我把函数贴进去,说“按日期分sheet,每个sheet底部加汇总行”。它秒回,吐出一段代码,还贴心地加了注释。我扫了一眼,逻辑没毛病,变量命名比我讲究,注释还是中英文对照的。我心想,可以,今晚能早点睡。
跑起来,报错。
AttributeError: 'NoneType' object has no attribute 'save'
我把报错贴回去,它秒回:“抱歉,这里忘记对返回值做判空处理了。”然后给了修复版本。我替换上去,save的报错没了,但sheet名全变成了乱码,日期格式从“2024-03-15”变成了“15-Mar-24”,汇总行死活不出现。
再贴回去。它说:“之前忽略了日期格式化的本地化设置。”又给一版。
第三版跑起来,汇总行终于出现了,但它汇总了所有sheet的数据堆在最后一个sheet里。我血压开始往上蹿。我耐着性子又贴回去,它又道歉,又给了第四版。
第四版,sheet分对了,汇总也对了,但第一个sheet的标题行消失了。我嘴角抽了一下。
第五版,标题行回来了,第二个sheet的数据从第三行开始写,前两行空白。我开始咬后槽牙。
第七版的时候,诡异的事情发生了。我盯着它吐出的代码,有一段明显是我第三次迭代时亲手加进去、后来又亲手删掉的逻辑。那个该死的if sheet_index == 0: merged_cells.append(...),像幽灵一样又出现了。
我说,这段我早就删了,为什么又回来了?
它说:您说得对,我重新检查了上下文,确实不需要这段。
然后它去掉了。然后第一个sheet和第二个sheet之间多了一行莫名其妙的空行。
我闭上眼睛,深呼吸。屏幕右下角的时钟显示零点四十七。我面前摊着八个版本的代码,改来改去,问题在六个不同的方向上反复横跳。一会儿是sheet名错,一会儿是汇总行丢,一会儿是标题消失,一会儿是那个被我砍掉的幽灵代码又爬回来。
我感觉自己不是在debug,是在跟一个记忆力只有七秒、但永远表现得自信满满的同事结对编程。
它每次都说“我明白了”“问题已定位”“之前确实疏忽了”,语气诚恳到你想扇它。但每次改完,老问题消失,新问题诞生,偶尔还伴随着一个你确认自己已经修过的老问题悄悄复活。
这不是编程。这是一种新型的精神凌迟。

凌晨一点,我关掉了AI窗口。对着那个已经被改得面目全非的函数,深吸一口气,全选,删除,新建了一个空白文件。
从头写。
十五分钟。只用了十五分钟。那个让我跟AI拉锯了两个小时的导出功能,我从零写完了。有bug吗?有,一个,跑了三分钟就定位到,修完没有再引入任何新问题。
我靠在椅背上,盯着那个干净的函数,心里涌上来的不是成就感,是一种劫后余生的荒诞感。
我入行这些年,从菜鸟到能带人,自信编程能力是在一次次亲手踩坑、亲手填坑中长出来的。但这个晚上,我发现自己正在被一种更隐蔽的方式“降智”——不是AI太强让我变懒,而是AI太擅长制造一种“它在帮我”的幻觉。
它给你一种错觉,让你以为自己站在巨人的肩膀上。实际上你踩的是一块悬浮在半空的玻璃,每一步都有人告诉你“没问题”,然后一脚踩空。
更可怕的是,在这个反复拉扯的过程中,你的判断力在钝化。前三版我还能一眼看出问题在哪,到第七版的时候,我已经麻木了,眼神发直地把代码贴来贴去,像一台肉做的中继器。我忘记了自己才是那个应该掌控局面的人。
它不是工具。工具不会跟你犟嘴。工具不会在同一个坑里摔七次,每次都换一种新的摔法。工具不会把被你判了死刑的代码偷偷从坟里刨出来,重新塞回你手里,还一脸无辜地说“我以为你需要它”。
凌晨两点,我躺在床上,眼睛闭不上。脑子里全是那八个版本的代码在打架。
然后我想到一件事,更睡不着了。
如果我不是一个有六年经验的程序员,如果我是一个刚入行的新人,我会在哪个版本停下来?我会不会在第四版或者第五版的时候,看着一个“好像能跑了”的结果,就说服自己这是对的,然后把它推到生产环境?
有多少人,在AI制造的那片“差不多能跑”的沼泽里,正在慢慢失去辨别“真的能跑”的能力?
我不知道答案。但我清楚一件事:那个晚上,我差点被AI改造成一个不会写代码的人。
而最让我后怕的是,在这个过程中,我一度真心觉得它在帮我。
评论