Timeline

Andrej Karpathy delivers 'Software in the Era of AI' ('Software 3.0') keynote

Speaking to 2,500 attendees at Y Combinator's first AI Startup School, Karpathy compared LLMs to fallible 'people spirits' whose output must be verified, not trusted outright.

  • Ideas & essays
  • Notable

Andrej Karpathy, formerly a founding member of OpenAI and Tesla’s director of AI, gave a keynote titled “Software in the Era of AI” at Y Combinator’s inaugural AI Startup School in San Francisco. He proposed “Software 3.0” as the successor to two prior eras — Software 1.0, ordinary hand-written code, and Software 2.0, neural network weights trained rather than written — arguing that large language models now let people write software by prompting in natural language instead of either. He predicted a large share of existing software would be rewritten to take advantage of this shift.

Karpathy framed LLMs through several analogies for infrastructure that becomes indispensable and is then taken for granted — a new kind of operating system, a utility like electricity, a fabrication plant for digital goods — and argued products should be built explicitly for both human and AI users, citing poorly structured documentation as a practical barrier to letting agents use software autonomously. His central prediction was a “decade of agents”: not a sudden arrival of fully autonomous systems but a long period of partial autonomy, in which developers build “autonomy sliders” that let a person dial an AI tool’s independence up or down — drawing an explicit comparison to graduated levels of self-driving in Tesla’s Autopilot.

He described current models as having “jagged intelligence,” excelling at some difficult tasks while failing at simple ones, and “anterograde amnesia,” lacking any persistent memory across sessions — limitations he said made verification tooling, not raw capability, the binding constraint on deploying agents usefully. The talk, delivered to roughly 2,500 attendees, was widely shared afterwards and “Software 3.0” became a commonly used shorthand in industry discussion of natural-language programming and agentic software design.