Speaker Notes

Andrej Karpathy: Software Is Changing (Again)

Software has entered its third fundamental paradigm shift (Software 3.0), where LLMs act as time-shared operating systems programmed in English, requiring a shift toward partial autonomy apps and agent-ready infrastructure.

Y Combinator · 39:32 · YouTube ↗

Talk · solo speaker  Advanced · concepts and developer strategy

Highlights

4 clips · 6 min of 40 min
    • Software 3.0 introduces LLMs as a brand new programmable computer paradigm.
    • Prompts written in natural English act as the actual source code for these models.
    • LLMs function as complex software operating systems managing memory and compute.
    • High compute costs currently force a centralized, time-shared cloud model reminiscent of 1960s computing.
    • Successful AI applications pair traditional UI with tiered AI execution scopes.
    • An autonomy slider lets users scale execution from inline completion to full repository-level agents.
    • Custom GUIs with visual diffs are crucial for fast human verification of AI work.
    • Human-centric documentation with visual elements and click instructions fails AI agents.
    • Leading platforms now provide clean markdown docs and replace UI actions with reproducible CLI commands like curl.

Questions this video answers

9 · every answer cites the moment it was said
01 What defines the Software 3.0 programming paradigm? 2 sources · 3:19

Software 3.0 is characterized by large language models acting as programmable neural networks. Instead of traditional coding or tuning model weights, developers program the system using natural language prompts. This turns English into a functional programming language for the LLM.

02 Why do LLMs resemble 1960s operating systems? 3 sources · 11:05

LLM compute is currently expensive and centralized in the cloud, forcing developers to act as thin clients interacting over a network. This mirrors early computing where time-sharing was necessary because users lacked full utilization of the underlying hardware. Furthermore, direct text interactions with chat interfaces feel like accessing an operating system through a terminal.

03 What cognitive deficits do large language models exhibit? 3 sources · 16:19

LLMs have encyclopedic memory but suffer from rough edges like hallucinations and jagged intelligence where they fail simple logic tasks. They also lack native long-term memory consolidation, suffering from an equivalent of anterograde amnesia where their context windows are wiped. Additionally, they are gullible and vulnerable to prompt injection risks.

04 What are the key properties of partial autonomy apps? 3 sources · 19:16

Applications like Cursor combine a traditional manual interface with deep LLM integration. They handle context management, orchestrate multiple LLM calls under the hood, and feature application-specific GUIs to help humans audit work. They also incorporate an autonomy slider so users can adjust how much control to hand over to the agent.

05 How can developers optimize the human verification loop? 3 sources · 22:32

Developers should use application-specific GUIs to leverage human computer vision instead of forcing humans to read raw text. They must also keep AI agents on a leash by writing concrete prompts and working in small incremental chunks. This prevents the AI from generating overwhelming changes that make verification the bottleneck.

06 What is vibe coding and why is it effective? 3 sources · 29:28

Vibe coding refers to programming entirely through natural language prompts where developers act as directors rather than writing explicit code. It is an effective gateway drug that allows non-experts or people unfamiliar with a language to build custom applications quickly. It drastically lowers the barrier to entry for creating custom software.

07 Why is devops still difficult during vibe coding projects? 3 sources · 32:23

While writing initial application logic via LLM prompts is fast, setting up infrastructure components like authentication, payments, domain names, and deployment remains tedious. Developers still have to navigate manual configuration steps in browser dashboards. This non-code devops work often takes significantly longer than the actual vibe coding part.

08 How should developers adapt documentation for AI agents? 3 sources · 34:38

Developers should provide documentation in formats like markdown which are easily readable by LLMs instead of human-oriented layouts with pictures and bold text. They also need to replace instructions that rely on manual browser actions, such as clicking buttons, with equivalent programmatic commands like curl commands.

09 Why should developers meet LLM agents halfway with infrastructure? 2 sources · 37:32

Although LLM agents are becoming capable of navigating standard human interfaces and clicking around, these actions remain expensive and error-prone. Providing specialized tools, markdown docs, and agent-friendly endpoints reduces friction and lowers costs. Meeting agents halfway ensures more reliable automation across digital infrastructure.

Section-by-section summary

6 parts

Software is experiencing its third fundamental shift

Software has evolved from traditional human-written code (Software 1.0) and optimized neural network weights (Software 2.0) to programmable LLMs driven by natural language prompts (Software 3.0). Developers must become fluent across all three paradigms to choose the right tool for any given task.

LLMs function as cloud operating systems

Large language models share properties with utilities, semiconductor fabs, and operating systems. Due to high inference costs, the industry currently relies on a centralized, time-shared cloud model similar to computing in the 1960s.

LLMs are stochastic simulators with jagged capabilities

Trained on internet text, LLMs possess human-like psychologies with encyclopedic memory alongside severe cognitive deficits like hallucination and retrograde amnesia. Working effectively with them requires building workflows that account for these unpredictable rough edges.

Partial autonomy apps maximize the human verification loop

Tools like Cursor demonstrate that partial autonomy apps succeed by letting humans supervise AI generation through specialized GUIs. Keeping the AI on a short leash and ensuring rapid feedback loops prevent overreactive agents from introducing bugs.

Natural language programming enables rapid vibe coding

English as a programming language allows non-experts and professionals alike to prototype custom applications rapidly without deep syntax knowledge. However, bridging a prototype to a production-ready app still involves navigating complex non-coding tasks like authentication and deployment.

Digital infrastructure must be redesigned for AI agents

As agents become primary consumers of digital software, web infrastructure must adapt to their needs. Providing clean markdown documentation and replacing graphical click instructions with executable CLI commands enables agents to interact reliably with services.

0:00 / 39:32
k play/pause · f fullscreen · m mute
n next · p previous clip · t highlights/full
< > slower/faster · / search what was said
  • Software 1.04× · first 1:42

    Traditional computer code written explicitly by humans to program computers.

  • Software 2.05× · first 1:39

    Neural network weights tuned via optimizers and data sets rather than directly written code.

  • Software 3.01× · first 3:19

    The new programming paradigm where large language models are programmed using natural language prompts.

  • Autonomy slider5× · first 20:25

    A feature in LLM applications allowing users to adjust how much autonomy to grant to the AI agent.

  • Vibe coding3× · first 29:37

    Programming entirely through natural language prompts where the human acts as a director rather than a coder.

  • Model context protocol1× · first 36:19

    An open protocol from Anthropic designed for communicating directly with AI agents.

  • robots.txt1× · first 34:10

    A standard web file used to instruct web crawlers on how to behave on a website.