AI coding产品对程序员来说,既是效率飞升的法宝,也像是加速职业"消亡"的催命符。使用AI coding工具,效率的提升是实打实的。但现实中一些岗位在要求程序员转全栈,AI模型的进展又如此迅猛,程序员身处这样的时刻,怎能不焦虑呢?
不过,如果你深度使用AI coding工具一段时间,大概会得出这样的结论:程序员这个岗位在AI的冲击下注定会被重塑,但不是消失。消失的是曾经的程序员岗位,未来程序员岗位的基本需求就是会用AI工具编程。但这个能力不是静态的、预定义的,而是动态的,需要更多自主思考和决策——这和workflow到agent的发展趋势是一样的。 最近几个月高频使用AI coding工具,在中等复杂规模的AI产品项目上,效率提升确实是阶跃性的。虽然模型能力在提升,效率也随之提升,比如4月份用AI工具大概能提升30%效率,现在效率提升至少翻了一倍(大概60%)。
为什么只是60%,不是100%,甚至200%呢?因为AI coding很好用,但还不是全能。至少以下这些问题,目前是存在的。
AI coding可以让你的代码很快跑起来,但看似"正常"的背后埋着多少雷,这个排查的工作量不小。
AI落地应用的代码,包括agent,技术方案更新变化很快。模型的内部知识有个更新截止时间,对于之后更新的知识,需要靠使用者通过搜索、DeepResearch等工具来提供同步更新的先验知识给AI。这需要使用者本身对最新技术方案有一定认知判断,才能主导AI去做实现。这一步实际会消耗不小精力。
实现的代码结构是否合理,是否方便维护和扩展?你仔细看很多后端代码,虽然写法很规范,但会有一些逻辑明显违背封装解耦的原则,很多代码堆在一个文件夹内。如果不做仔细检查,后续代码维护和扩展会有很大工作量,"屎山"问题还没有得到有效解决。
现在的模型倾向于fallback逻辑过头,容易吞没错误——这和RL训练相关,报错有惩罚,导致reward hacking。
当它帮你把一段代码完美无误地实现,你惊叹这么牛X。当它在一个模块代码多次没改好,而直接rm -rf,刚好你没git,此时你又该如何面对。
上面提到的问题都是在实际使用AI编程过程中积累的一点体验和经验,这些可能1个月后就失效,因为模型能力还在快速增长。但模型的能力可能是阶跃式增长的,个人能力的积累很多时候确实需要从"量变"引起"质变"。这里不是鸡汤,想表达的是:某些认知的清晰建立,不是靠别人分享的经验或新体验就能实现的。
现在大模型的一个重要范式是基于RL的experience learning,需要在环境中不断探索获得奖励来更新模型。这种机制和人类学习其实挺接近的,强化需要过程。但有了AI之后,程序员的奖励函数有点发生变化了。我们更多需要的不是从0到1完整参与整个项目的搭建,而是结合自身的底座能力(coding背景),去引导AI实现架构合理、可审计、可扩展、可智能增益的代码实现。
但这个能力本身不是靠一个可验证的奖励函数就能定义的。它需要我们持续学习,迭代自身的认知和能力。AI模型能力在增长,我们在与它们交互的过程中,才能知道自己需要什么样的能力,而这个能力也会在这个过程中自然地培养、建立和提升。
在AI没有对程序员工作产生广泛影响之前,同等Level的程序员编码效率差异不会很大,而且很多场景做维护和更新,一段时间内使用固定的技术栈也问题不大。
但现在情况变了。一些变化比较快的技术栈,比如大模型,三个月模型能力就会明显提升一档。如果之前的工程没有做扩展评估,那上一版本的提示词对于更新后的模型反而是过度的负优化。这需要在设计提示词模板时考虑模型能力提升的增益性,设计更通用、兼容模型能力增长的方案。
而AI编程工具的使用,使得编码效率有了大幅提升。用AI工具和不用AI工具,AI工具用得一般和用得熟练,都会产生比较大的差距,这会直接影响效率产出。但同样的,三个月前的AI工具和现在的AI工具也会有很大不同。比如三个月前我还在用Cursor,现在已经不用了,因为对我而言Codex使用更顺手。
更新技术栈一方面是对coding工具的持续使用,不让别人拉开和自己的效率差距。但注意,只看别人的经验反馈,很多时候作用远小于自己亲自去体验使用。另一方面是保持对自己技术栈的持续学习(AI虽然是重点,但不是全部)。不是一定要去学多深入的技术,至少需要保持对自己领域技术认知的更新,用AI工具辅助自己了解当前领域的新技术。比如最近发布的Python 3.14,我不需要把新版本的整个文档读一遍,但可以通过AI帮我整理更新的新特性,选择自己感兴趣的去看一下,比如3.14的自由线程模式允许禁用GIL,这个就值得去试一试。
AI时代每个职业都可能会重塑,不只是程序员,一个戏虐的说法-“程序员用AI来革自己的命”,其实革掉的不是人的本质能力,革掉的是不是程序员的价值本身,构建软件的价值仍然存在,而且因为构建成本的下降,构建效率的提升反而可以产生更大的价值。但是当有一个更高效,科学的工具出现的时候,接受,拥抱和改变是必然的选择,这也是人机共生发展趋势的要求,接受和拥抱是态度问题,改变就需要亲自躬身体验,去感知和实践才能明白自己需要做出什么改变。
最后做一点畅想延伸,一个革命性的工具,如果只是让一部分人收益,那就称不上革命性,AI coding工具除了惠及程序员,也让更多没有代码基础的人可以搭建实现自己的产品。更进一步的推广,AI4science的持续进步,可以让更多对科研感兴趣但没有科研基础人也能做科研,去发现和探索更多的未知。AI会打破更多的职业边界,让更多的人可以根据自己的兴趣选择行业,不再因为门槛难往前再迈出一步。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。