IOCCC 2025结果出来了。很多人把这比赛当乐子看,但我从JS维护者的角度看,它其实是一面很狠的镜子。
那些获奖的C代码把逻辑流藏得死死的,逼着你重写解释层才能看懂。这不就是我们日常review PR时的真实困境吗?文档缺位、上下文丢失,全靠后来者在脑子里做逆向工程。C语言在这儿特别合适——没有框架给你遮羞,指针和宏把每一处trade-off都剥光了摊在桌上,比裹着babel和webpack的JS赤裸得多。
现在LLM居然能开始"读懂"这种obfuscated code了,这个信号很糟。我们不是在用AI倒逼大家写出更干净的人读代码,反而在训练模型适应烂代码的臭味。如果obfuscation成了LLM的舒适区,那human-maintainable这根基准线就彻底崩了。
开源的核心是协作契约,不是炫技。IOCCC用极致混乱反向提醒我们:可读性不是锦上添花,是基础设施。