I keep hearing “AI assistant” — Copilot, Cursor, Claude Code, all of them. The word implies a developer at the keyboard who needs help. But that’s not what’s happening anymore in the systems I work with. I describe what I want. The AI writes the code, runs it, fixes the bugs, deploys it, and the application keeps running. After it ships, the same system maintains it — patches failures, adds features, refactors when needed. I’m at dinner. Or asleep. I come back and the work is done. That’s not assistance. The metaphor that keeps clicking for me is a software printer. You feed a printer a document, you get back an object. You don’t tell it how to mix ink. With a software printer, you feed a specification — written, drawn, spoken — and you get back a running, hosted application. Not snippets. Not a draft. A thing that’s deployed, serving traffic, and gets maintained over time by the same machine that produced it. I think this is genuinely a new generation of dev tools, distinct from the previous four: 1st: editors and terminals 2nd: autocomplete 3rd: conversational AI in the editor (Copilot, Cursor) 4th: cloud agents that build simple apps in their cloud (Lovable, Bolt) 5th: autonomous platforms that build, host, and maintain real applications on your own infrastructure What “assistant” misses, and “printer” gets right: The output is what matters, not the activity of writing it Non-developers can operate it (you don’t need to know PostScript to print) The skill shifts from execution to direction The result is ready to run, not source code waiting to be deployed Maintenance is part of the machine, not a separate phase Counterarguments I keep running into: “Printers don’t iterate.” Modern print pipelines do — versioning, color matching, reprints. The metaphor is the press, not the inkjet. “Software has a runtime, documents don’t.” True. So the printer is also the substrate that runs and tends the output. The metaphor stretches; it doesn’t break. “This is just LLM code generation rebranded.” I don’t think so. If you build an “assistant,” you build something that lives in an editor and needs a developer. If you build a “printer,” you build something that takes specs and produces deployed systems. Different products entirely. Not selling anything in this thread. Genuinely curious what experienced devs think about the framing. The category we choose shapes what gets built, and “assistant” feels like it’s holding the field back. submitted by /u/fotsakir
Originally posted by u/fotsakir on r/ClaudeCode
