AI到底能不能替代程序员?
看了《天真一代》的切片,关注了两位同学关于未来编程的观点。
姜同学认为,Al进化是指数级的,未来人只需要写prompt就够了。而陈同学却觉得如果想在行业内做到顶尖,肯定需要了解编程。
我倾向于姜同学的观点,在这里谈谈我的看法。
1.大多数商业软件开发是工业流程,不是手工流程。
2.软件行业的历史就是一部去技能化的历史。从二进制到汇编,从汇编到 C,再到 Python,抽象层级每提高一次,程序员需要掌握的底层知识就少一层。格式化工具终结了缩进风格的争论,编译器取代了手写汇编,Go语言的设计目标就是让不够熟练、更便宜的程序员产出更多代码。AI 写代码只是这条演化链条上的最新一步。
3.很多项目已经用AI把整个代码库从小众语言迁移成通用语言了,整个项目速度快、成本低。很多人现在合并没读过的PR也没什么问题,测试全绿CI通过。我觉得这就是终点形态,人提需求,AI 写代码,人做确认。
4.对于“想在行业内做到顶尖就必须懂编程”,我的看法是:这个技能的定义会变。
顶尖程序员之间尚且仍对什么是好代码没有统一标准,而凡能用规则客观描述的代码质量,agent都能自动化满足。AI时代“顶尖”的新含义,是能审查 AI 的产出、保证质量、把需求描述清楚,我个人感觉就是写好 prompt。人可能会站到比现有的架构师更高一层的架构师位置上。
5.古法编程不会消失,就像现在商品化的衣服出来,同样也有年轻人玩非遗刺绣。少数人可以当爱好追求,或者当作锻炼思维的方式。
6.从结果推导,写代码从来不是目的,把软件做出来才是,所以程序员同样没有理由成为唯一豁免于自动化的职业。