the inverse of the hammer
Entry one of ten in “the end of the wire,” a series on the terminal. Each one stands alone.
Maslow’s law says a tool shapes what you see. The shell has no shape to impose, which makes it a different category of thing.
Give a man a hammer and everything looks like a nail.
Maslow put it more carefully in 1966 — “I suppose it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail” — and it has been read ever since as a warning about specialization. Don’t get too attached to your one trick. Keep a full toolbox.
That’s not the claim. The claim is about perception, not capability. The hammer doesn’t stop you from picking up a screwdriver; the screwdriver is right there on the bench. What the hammer does is change what the room looks like. Every protrusion becomes a candidate. The tool arrives with a theory of the world attached, and the theory installs itself behind your eyes before you’ve consciously decided anything.
Which means every tool is a hypothesis about what you’re going to want to do.
Photoshop knows what an image is. It has an opinion — layers, channels, a canvas with edges — and the opinion is very good, and it is load-bearing, and you cannot ask Photoshop a question that has no noun inside it. Excel knows what a cell is. A spreadsheet is the claim that the world is a grid of values with relationships between them, and that claim has been so successful that entire industries now think in it natively. They don’t use the grid. They see through it.
The knowing is the constraint.
That’s not a defect. The knowledge is precisely what makes these tools worth having. A program that knows what an image is can do ten thousand things to an image that you would never have the patience to build yourself. You buy competence with specificity, and most of the time it’s the correct trade.
But it is a trade, and the price is that the tool has already decided what kind of thing your problem is.
The shell doesn’t know anything.
That’s the whole observation. | has no opinion about what’s on either side of it. It doesn’t know whether it’s carrying log lines or a JPEG or the output of a program written twenty minutes ago in a language that didn’t exist when the pipe was designed. It moves bytes from a thing to a thing. The ignorance is total, and the ignorance is the feature.
Doug McIlroy wrote the idea down in a memo in 1964: “We should have some ways of coupling programs like garden hose — screw in another segment when it becomes necessary to massage data in another way.” It took until 1973 to land in Unix. One character. Sixty-two years after the memo it is still the most reusable idea anybody has had about how programs should meet each other, and the reason is that it refused to know anything about them.
That is not what people mean by a general-purpose tool. A general-purpose tool is a hammer with a screwdriver in the handle — a finite list of verbs, just a longer one. The pipe isn’t a longer list. It’s the absence of a list. Not an instrument. A substrate.
And a substrate can’t shape your perception, because there’s nothing in it to do the shaping. The shell will not tell you what your problem is. It waits for you to say.
This is also the genuinely uncomfortable thing about it. A blank prompt offers nothing — no affordance, no suggestion, not one hint about what the machine in front of you is for. That blankness and that generality are the same property. You do not get one without the other.
Here’s what convinced me this isn’t nostalgia.
When language models got good enough to act on the world instead of describing it, the first thing nearly everyone did — independently, at multiple labs, inside of a few months — was hand them a shell.
Not a purpose-built API surface. Not a vision model clicking through a GUI. A terminal, with the same tools that have been sitting on the machine for fifty years. On its face that’s a strange choice: text-only, unforgiving, no guardrails, catastrophically easy to misuse.
But an agent with a bounded verb list is bounded in exactly the way the hammer is. It will find the tasks its tools already have shapes for. Give it an image editor and it turns out to have an image problem. Give it a shell and it has whatever problem it actually has, which is the only kind worth solving.
Nobody reached for the terminal because it was old. They reached for it because it’s the one thing on the machine with no theory about what you want.
The hammer makes everything look like a nail. The prompt makes everything look like a question.