Software 3.0 is Andrej Karpathy’s framework for understanding AI‑native development. It defines three eras of programming. Each era changes who writes the code and how. This guide explains all three eras and what they mean for developers today.
| Era | How code is created | Developer role | Example |
|---|---|---|---|
| Software 1.0 | Hand‑written by humans | Write every line | C, Java, Python functions |
| Software 2.0 | Machine‑learned weights | Curate data, train models | Neural networks, image classifiers |
| Software 3.0 | Natural language + agents | Describe goals, supervise agents | Agentic Engineering with Claude Code |
What is Software 3.0?
Software 3.0 is programming through natural language. You describe what you want to build. AI agents interpret your description. They write code, test it, and deploy it. You supervise and refine.
Andrej Karpathy introduced this three‑era framework. Software 1.0 was manual coding. Software 2.0 was machine learning. Software 3.0 is AI‑native development. It changes the developer from a writer to a director.
Dive deeper into each era in the full Software 3.0 explanation.
How does Software 3.0 differ from Software 1.0 and 2.0?
Software 1.0 is traditional coding. You write explicit instructions in a programming language. The computer follows them exactly. Software 2.0 is machine learning. You provide data and a goal. The model learns its own rules.
Software 3.0 combines natural language with AI agents. You don’t write code or train models. You specify intent. Agents handle implementation details. They use tools, call APIs, and manage multi‑step tasks.
How does Agentic Engineering fit into Software 3.0?
Agentic Engineering is the practice that operates inside Software 3.0. You delegate tasks to AI agents with clear constraints and review gates. The agents plan, execute, and report back.
This is the professional implementation of the Software 3.0 vision. Vibe Coding is an earlier, less structured form. Agentic Engineering adds safety, oversight, and scalability.
See how Agentic Engineering and Vibe Coding compare.
What does Software 3.0 mean for developers?
The role shifts from writing syntax to managing agents. You spend more time on design and review. You spend less time on typing. Context engineering becomes a core skill. You write instructions that agents follow.
Debugging also changes. You inspect agent logs instead of stepping through code. The skills of a Software 3.0 developer are delegation, oversight, and clear communication.
(1) Software 3.0 is programming through natural language and AI agents.
(2) It follows Software 1.0 (manual code) and Software 2.0 (machine learning).
(3) Andrej Karpathy introduced the three‑era framework.
(4) Agentic Engineering is the professional practice inside Software 3.0.
(5) The developer becomes a director who delegates and supervises.
References
- Software 3.0 Explained — Karpathy’s Three‑Era Programming Framework
- Agentic Engineering vs Vibe Coding — Key Differences
- Andrej Karpathy, “Programming via LLM Agents” — AI Ascent, Sequoia Capital, March 2026
Always refer to the official documentation.
Leave a Reply