人类写代码的时代结束了?
这几天,Node.js之父Ryan Dahl发的一条推文又掀起了一场关于 AI 编程的讨论热潮。推文的大致意思是:“这句话已经被说过无数次了,但请允许我也来凑个热闹:人类编写代码的时代已经结束了。对于我们这些认同自己是软件工程师(SWE)的人来说,这听起来确实令人不安,但它却是事实。这并不是说软件工程师以后没活干了,只是直接编写代码语法不再是工作的核心了。”这段话不是第一次听说,也不会是最后一次。它揭示了程序员职业发展的两个核心转变。一是从“翻译者”到“建筑师”: 过去,程序员的主要工作是将人类的需求“翻译”成机器能懂的语法(Syntax)。现在,AI 已经接管了这种翻译工作,人类的重点转向了系统设计、逻辑架构和需求定义。二是AI 带来的职业认同危机: 许多开发者习惯于通过“手敲代码”获得成就感,“手敲代码”现在更被戏称为“古法编程”,而当这一过程被 AI 取代,我们不得不重新思考:如果我不写代码,我的价值究竟在哪里?我不仅仅只是认同作者的看法,它也是我现在做的,一直在实践的。这一年来我很少来手敲代码了,无论是写 go,python,还是 typescript。编写代码语法不再是我工作的核心。正好作者所说,软件工程师不是没活干了,像系统设计,架构,需求定义还是需要主导,人还是在主导地位。那天看到一个视频中的一个观点,说 AI 很容易做到 80 分,但是要做到 95 分,100 分,甚至超过 100 分,就很难。用 AI 短时间可以快速生成一个半成品,但想要把它做到产品级的东西,还是需要不断的迭代,打磨。从 80 分到 100 分,不管是手敲代码,还是继续 AI 迭代,花费的时间和代价要数倍于从 0 到 80 分。系统的定义和边界还是需要人去设计,而且这将成为未来人类在技术领域最核心的护城河。