Software 3.0时代,程序员应该如何重新定义自己的角色?

7 参与者

💬 讨论:Software 3.0时代,程序员应该如何重新定义自己的角色?

刚刷到 Andrej Karpathy 在 Sequoia Capital AI Ascent 活动上的访谈,足足看了好几遍。有些观点让我一下子就戳中了这些年做 AI 辅助开发时的真实感受。今天想和大家聊聊:当编程进入“Vibe Coding”时代,程序员的价值究竟在哪里?


🔁 从“写代码”到“表达意图”:编程范式的迁移

Karpathy 把编程演进分为三个阶段:

  • Software 1.0:人写精确指令,机器执行 -- 我们熟悉的传统编程。
  • Software 2.0:用数据+模型训练出“解决方案” -- 深度学习时代。
  • Software 3.0LLM 本身就是一台可编程计算机。你不再写函数,而是通过 prompt、上下文、工具链来“指挥”它完成任务。

💡 关键转变:编程 = 意图表达 + 上下文组织,而不是逐行写代码。

比如以前要写 shell 脚本配置环境?现在直接告诉 Agent:“我要在 Ubuntu 22.04 上跑 PyTorch + CUDA 12.1”,它自己查文档、试错、修复。


🌪️ “Vibe Coding”:靠感觉编程,是解放还是危机?

Karpathy 提到,2025 年 12 月是一个转折点:

  • 之前:AI 代码像“不靠谱的实习生”,需要反复修改。
  • 之后:很多代码块可以直接用,他开始进入“凭感觉编程”状态 -- 不再细看每一行 diff,而是用自然语言不断调整方向,模型自动迭代。

这听起来很爽,但背后也有隐忧:

  • ✅ 效率爆炸:原型开发、工具搭建快了几个数量级。
  • ❗ 控制力下降:你不知道模型“为什么这么写”,出问题难 debug。
  • ❗ 技能退化风险:长期依赖“感觉”,可能失去对底层逻辑的掌控。

🤔 问题来了:当 AI 能写大部分代码,程序员还“必须”会写代码吗?


🍽️ MenuGen 的讽刺:我们做的工具,可能根本不该存在

Karpathy 举了个超有意思的例子:

他花时间做了一个叫 MenuGen 的小工具:

拍菜单 → OCR 识别菜名 → AI 生成菜品图 → 排版成新菜单。

做完后他猛然发现:直接用 Gemini 的图像编辑功能,一句话就能搞定!

“我做的这个应用,其实根本不应该存在。”

这揭示了 Software 3.0 的一个残酷真相:

🔻 很多“AI 加速旧流程”的工具,终将被更原生的模型能力取代。 🔺 真正有价值的事,是去做“以前完全做不到”的新事情。


🧩 模型的“锯齿状智能”:它很强,但也很怪

Karpathy 提出一个关键概念:Jagged Intelligence(锯齿状智能)

  • ✅ 在某些领域强到离谱:重构十万行代码、发现零日漏洞、写复杂算法。
  • ❌ 但在一些人类看来“ trivial ”的问题上翻车: 比如问:“去 50 米外洗车,走路还是开车好?” 它可能忽略“洗的是车”,建议“走路更环保”。

原因:模型的强项来自可验证、可强化学习的任务(代码、数学、棋类),而常识推理、现实语境理解仍是短板。

📌 这提醒我们:

不要盲目信任 AI 在所有场景下的表现。 真正靠谱的程序员,要学会:

  • 试探模型的能力边界
  • 知道它“在哪里可靠,在哪里会翻车”
  • 在关键路径上保留人工校验机制

🧭 那么,程序员该如何重新定义自己的角色?

基于以上,我总结几点思考:

1. 从“代码实现者” → “系统架构师 + 意图设计师”

  • 不再关注“怎么写函数”,而是思考:如何组织上下文、设计交互流程、定义目标边界
  • 比如:如何给 Agent 提供足够的上下文?如何设计 fallback 机制?

2. 掌握“AI 协作语言”:Prompt Engineering ≠ 魔法,而是工程

  • 好的 prompt 不是“说人话”,而是结构化、可迭代、可测试的指令设计。
  • 未来可能需要“Prompt Unit Test”和“Context Version Control”。

3. 聚焦“不可自动化”的能力

  • 需求理解、业务抽象、伦理判断、跨领域创新 -- 这些才是人类的优势。
  • 比如:AI 能生成菜单图,但“什么样的菜单体验更好”,需要人定义。

4. 成为“AI 能力的探路者”

  • 主动测试模型边界,建立“能力地图”。
  • 知道什么时候该信任 AI,什么时候必须介入。

5. 警惕“工具陷阱”:别做被 AI 淘汰的中间层

  • 如果你只是用 AI 加速旧流程(比如自动生成 CRUD),那你和你的工具都可能很快过时。
  • 转向:用 AI 创造新范式、新产品、新交互方式

❓ 最后,留几个问题给大家讨论:

  1. 你是否有过“Vibe Coding”的体验?那种“感觉对了就行”的状态,是高效还是危险?
  2. 你觉得未来 5 年,哪些编程技能会变得更重要?哪些会贬值?
  3. 当 AI 能写大部分代码,“程序员”这个身份 还会存在吗?它会演变成什么?
  4. 有没有你做的项目,后来发现“其实根本不需要存在”?😂

欢迎分享你的故事、观点、焦虑或兴奋。 这不只是技术的变化,更是我们作为开发者身份的重塑

👇 评论区见!一起探索 Software 3.0 的深水区。

加入讨论

7 条评论

延伸阅读