We are programming AI in assembly language

09.04.2026

Author - Enrique Dans

In the series of articles I’ve been writing for Fast Company devoted to what I believe corporate AI should be, I’ve been touching on a very provocative idea: Perhaps the biggest problem of corporate AI as we know it so far is not intelligence, but the level at which we are programming it.

Today, high-level languages (programming languages that use strong abstraction from the computer’s hardware details so that it’s easier for humans to read and write) are normal. However, decades ago, developers had to fight the machine directly, in machine or assembly language, something that John Backus described as “a hand-to-hand combat with the machine.”

We saw the same pattern with C, Java, or the web. Dennis Ritchie explains how C allowed Unix itself to be rewritten in a largely portable language, making it easier to move across machines. Later, Java made the JVM plus standard libraries into an explicit platform, starting the “write once, run anywhere” movement. Then the web transformed an already functional but complex internet by introducing a simple shared grammar (HTML, HTTP, and URLs) on top of the network substrate. In all these cases, the infrastructure existed beforehand, but the abstraction made it easily programmable and manageable. 

Today’s agentic stack looks a lot like another pre-language period: We use Python plus frameworks and services to program intelligent applications, with each piece managing fundamental characteristics separately. None of these products is unnecessary—quite the opposite—but their proliferation is also evidence that an underlying abstraction may still be missing.

Think about LangChain, for instance: It explicitly distinguishes the harness around an agent from the runtime underneath it. They say production agents have requirements such as durable execution, memory, multi-tenancy, human-in-the-loop, observability, sandboxes, integrations, and scheduling. And they themselves explain that “to build a good agent, you need a good harness; and to deploy that agent, you need a good runtime.” Does this give you a clue? 

How about Temporal, LangGraph, or even Anthropic? They tell the same story from different angles. As we can see, the current stack can build almost anything… but at a significant cost. And the cost, as it happened a long time ago with assembly, is extraordinary complexity. 

In order to make software truly industrial, we need to follow capability with formalization. Examples? Codd’s relational model appeared before the database ecosystem. Web standards preceded the web economy. And ERP created the shared enterprise abstractions we still use. Formalization has to reach the runtime itself at some point. Things as important as memory, state, permissions, workflows, journaled execution, and learning need to become primitives, instead of libraries glued together afterward. 

Do you know what’s extraordinary about the current corporate AI era? That we have already built the equivalent of the mainframe, the network, and the computing cloud, but we are still programming most of the intelligent layer purely by hand, line after line, with blood, sweat, and tears. 

Previous
Previous

Enterprise AI is waiting for its iPhone moment

Next
Next

AI cannot optimize a company it cannot understand