AI 究竟在缩小还是放大软件工程师之间的差距?
有人认为,随着模型推理能力变强,写代码正在变得更容易,程序员之间的差距也会逐渐被拉平。新手能更快写出可用的代码,很多过去需要经验积累才能跨过的门槛,现在只要能写好提示词就能轻松迈过。
别妄想了,AI 一定不会拉平软件工程师之间的差距,差距只会越来越大,且越来越快,就像宇宙的加速膨胀。
在 AI 还无法完全取代碳基工程师前,还只是以辅助工具的形式存在。工具提供的是杠杆,杠杆实际发挥的效果取决于使用者。杠杆会放大使用者原本的能力,每个人确实都会因此在相同的时间内交付地更多,但增加的幅度并不相同。假设普通和资深软件工程师的交付速度分别为 $v_1$ 和 $v_2$,且 $v_2 > v_1$,工具提供的杠杆作为常数的乘子 $C$,那么经过一段时间 $t$,二者的交付差距会是 $Ct(v_2-v_1)$。随着时间的增加,这个差距也会被逐渐拉开。AI 带来的变化可以被简单地理解成将 $C_1$ 换成 $C_2$,且 $C_2 \gg C_1$。
AI 当然可以抬高软件工程师的下限,但决定上限的,是工程师脑海中对什么该写、什么不该写,应该往哪写、什么时候该复用、什么时候该冗余等问题,通过平时大量的项目磨练出的一套,以直觉形式存在的方法论。这些判断能力是经验长期积累的结果,体现在上述公式中的速度 v。
AI 不仅能帮助工程师编码,它还系统性地降低了学习的成本和试错的风险,让跨领域变得前所未有地容易。一个工程师可以更快理解领域产品问题,设计系统并完成交付,甚至能快速分析运营数据,再根据反馈迭代优化,原本需要多人协作的链路,开始被少数人端到端地跑通。软件工程师将有机会借助这个杠杆成为新生产关系下的超级个体。
如果 AI 不仅能发挥杠杆的作用,还能通过提升个体学习能力,进而改善使用者本身的智能,这时候问题变得更有趣了。我们可以引入加速度到刚才的公式中:假设两人的加速度分别为 $a_1$ 和 $a_2$,且 $a_2 > a_1$,那么经过时间 $t$ 后,二者的交付差距将变成:
$$ C\left(t(v_2-v_1) + \frac{1}{2}t^2(a_2-a_1)\right) $$
刚才的 $v_1$ 和 $v_2$ 也相应的变成了初速度。随着时间推移,这个差距会以远超想象的速度被拉开。
「通过不断学习、终身学习提升自己」是一种元能力。会用 AI 的工程师,会更快学会如何更好地使用 AI,进而利用这种学习能力快速渗透各个领域。一旦差异发生在加速度层面,结果几乎是确定的。随着时间推移,少数人的认知边界、产出规模和影响力会被不断推远,而不是逐渐靠拢,AI 只是把这个过程压缩到了更短的时间窗口里。
所以,别妄想了,AI 一定不会拉平软件工程师之间的差距,差距只会越来越大,且越来越快,就像宇宙的加速膨胀。
这里还有一个工具陷阱:工程师是数字世界工具的缔造者,它们首先会为自己打造趁手的工具,因此他们也是数字世界的宠儿。但每时每刻产生的新工具过多,工程师容易陷入到 FOMO 状态中。我们不应该以学习的工具种类、数量为目标,而是应该以学习到的新知、新技能的种类、数量为目标。
工具本身是中性的,但使用工具的人不是。