Skip to content
·2,536 words·11 min read

The Fast-Dev Rack: Built to Ship, Built to Fade

In brief

Fast-dev loops ship products the way fast fashion ships garments: nobody owns the thing while it is being made, so nobody can own it after it ships. One app in ten left the line with the database open. The machines got very good at making a garment that looks like a garment. I build for the people who come back. That requires a man in the room for the part that carries the judgment.

The Fast-Dev Rack: Built to Ship, Built to Fade

There is a mountain of clothes in the Atacama Desert that nobody ever wore.

It sits outside Alto Hospicio in northern Chile, uphill from the duty-free port at Iquique. Agence France-Presse put numbers on it in 2021: about 59,000 tons of used and unsold clothing land at that port every year, and at least 39,000 tons of it get trucked into the driest desert on earth and left. Christmas sweaters. Ski boots. Shirts sewn in Bangladesh for a season in an American mall that ended before the container cleared customs, a good share of them with the tags still on. In 2023 a satellite-imagery outfit called SkyFi spent $44 on a photograph from orbit to see whether the story was true. It was. The pile shows up beside the town like a second town.

Nobody planned that mountain. It is what the system leaves behind when the system is working. Unit cost so close to zero that a bad seam is cheaper to ship than to catch. Fabric chosen by a spreadsheet. A garment cut for one season. A customer who is never supposed to turn the thing inside out.

I have been watching the same system get rebuilt in software. It has a rack of its own.

You have walked past it. Gradient hero, three feature cards, a waitlist, a launch thread announcing that a swarm of agents built the whole thing over a weekend while the founder slept. The pride in that sentence lives in the sleeping. Ninety days later the domain is a parking page, or the app still loads and the last commit is the launch commit, and the same account is three products further down the timeline.

A costume called founder

The word these people bought is “founder.” I am leaving it in quotation marks for the length of this essay, because what is being founded is mostly a checkout page.

Here is the method in its own vocabulary. An agent loop plans the work, writes the code, runs the tests it wrote for itself, and ships. The human sits outside and watches. When one agent is not enough, more agents get stacked on top of it — an orchestra hired to stand in for taste. The diff goes unread because the evals passed. The specification is a vibe. Product sense is whatever went viral on some day that starts with a T. Hands-off gets sold as the business that runs while you are at the beach. What it describes is absentee ownership of a thing that never had an owner.

Twelve agents supervising one another is a great deal of machinery to assemble around the one job it exists to avoid, which is a person reading the work.

A tailor who got faster is still a tailor. The loop-viber is a factory that never hired a cutter. The product that comes off that line is not unfinished. It is unowned.

Three wastes

Fast fashion wastes in three ways. So does the rack.

In the spring of 2025 a researcher wrote a script against 1,645 apps built on one of the popular prompt-to-app platforms and found that 170 of them would hand their database to anyone who asked — user lists, payment records, API keys, no login required. The generator had scaffolded the tables and skipped the row-level security that decides who may read them. The finding was filed as CVE-2025-48757. One app in ten, shipped with the pockets sewn on and no bottoms in them.

Veracode has spent two years running more than a hundred models through the same battery of coding tasks. Its 2026 report found the output now compiles nearly every time and fails a basic security test about 44 percent of the time, a figure that has barely moved since the first report. Veracode sells code scanning, so weigh the source. The method is published. The flat line is the finding. The machines got very good at making a garment that looks like a garment.

The smaller defects I have already written about: the test that asserts the happy path and calls itself coverage, the function the assistant invented, the generated code that drifted off the schema somewhere past line 200 of a diff nobody finished. By defect I mean the thing failing the job printed on its label. That is a wider field than a bug list. In a loop, nobody stands at the end of the line to pull the piece.

Generated interface is polyester. It photographs like fabric and it wears like a grocery bag. The component kit is the one every loop pulled this quarter, designed for no household in particular. The copy could be unpinned from this product and pinned to any other without an edit. The auth came from a template. The observability dashboard is installed, billing, and unread. I use one test for material. If the category this app belongs to died tomorrow, would anyone still want the thing for its own sake? A good tool outlives its category. Polyester does not outlive the trend that sold it.

The season is the waste the rack is proudest of. The loop is tuned to the current fashion in stack, in model, in landing-page grammar. That fashion turns on a model release. No customer asked for the turn. When it comes, there is nothing inside the product to restyle, because nobody ever understood the inside. There is a prompt somewhere, already a fossil, and a repository no human has read. Nobody alters a six-dollar shirt. You buy another shirt. That is why the same accounts are forever announcing the next app. Replacement is the maintenance plan.

You cannot see from outside which lines a model typed, and it would teach you nothing if you could. What shows, on the second visit, is whether anyone was home.

The only customer who will buy it

A garment like that needs a particular buyer. The word I am going to use for part of that buyer is rube, and I mean it as a market function. A rube is a buyer who cannot tell a garment from a costume, shopping in a store with no fitting room. Every one of us is a rube in some aisle. The insult, if there is one, belongs to the seller whose business plan depends on the aisle staying dark.

Two buyers keep the rack solvent. The first is the impulse buyer: novelty, a little status, the thought that this could come in handy, nineteen dollars a month, never opened twice. The second market is stranger and larger. The tutorial class selling to itself. Founders of tools for founders. Courses on building the app that sells the course. Waitlists for software that manages waitlists. Both leave before the seams go.

Look at who sits on the other side of my desk. A household. A sanctuary with eighty-eight goats. A working photographer who needs a gallery that can price a print. A cleaning company whose crews run their day off the same operations screen. A press with a reader who will sit through 3,400 words and notice when the type breaks. They come back. They find the seam on the second visit and they call me about it on the third. A model card changing somewhere in San Francisco is, in their minds, no reason to replace a website.

The loop-viber cannot serve the people who stay. So he has to talk as though the people who leave are the whole market. If you write for people who stay, you cannot use a method that only works on people who leave.

What the corpus showed

I am speaking from a bench, so I should describe the bench. The family of sites runs to about two dozen production apps: this press, the Forge, the sanctuary’s public site and the donor CRM behind it, the soap shop, the client platforms, the household tools. A machine typed most of the lines in every one of them. I have said so in public, and published the governance stack that makes it safe. File the essay under Luddite if you want. You will have to ignore the record.

None of it came from a spectator prompting a loop until a demo appeared. Every one of those apps began as a job that existed before the prompt did. A donor CRM for a sanctuary has to know what a restricted gift is, because money given for the vet fund has to be spent on the vet, as a matter of law, and no generic CRM scaffold has ever heard of that duty. The sanctuary’s heaviest page got cut from 1.67 megabytes to 345 kilobytes because the people who use it are on phones, and a person in the room knew that. This site has to carry a long essay without the type collapsing. Those are specifications. They lived in a human head first. They stayed there long enough to survive contact with the code.

The method is dull enough to steal. A job that exists before the prompt. A reader, a donor, an animal who will still be here next year. Context that persists in files, so the project knows itself and the machine does not bill you every morning for rediscovering it. A human who reads what the machine wrote. Taste held as a constraint. A ship date set by whether the thing can be lived in. The machine writes the volume. The man keeps the specification, reads the thousand-line diff, throws out the theatrical test, and is still at the bench when the season changes.

Most days it is dull work. The useful product kept turning up in the same place: the joint, where a specific use was held in a human head while the machine did the typing.

Where the empty chair costs you

Hands-off fails at four moments. They happen to be the four that make a product real.

Ask a loop for an app and it builds the general app, the average of every app it has read. Bespoke work starts at the refusal. No: this form takes a surrender request from someone who is about to give up an animal she loves, so it gets three fields and a phone number. A spectator cannot refuse what he never looked at.

Real products also carry duties that fight each other. A donor’s privacy against the fundraiser’s urge to share. Speed against the audit trail. A beautiful page against one a screen reader can use. A loop averages the two and ships the mush. Someone has to pick, write down why, and take the phone call later.

There is a moment near the end of any honest build when you would rather not show the thing to the person who has to live with it. That flinch is the most useful instrument in the shop. A loop has no flinch, which is why it ships.

Then fourteen months pass. The auth vendor changes its terms, or a dependency dies, and somebody has to open the code and understand it. The prompt that made it is gone. The model that read the prompt has been retired. Unowned software has no heir.

Those are charges against an empty chair. The machine I work beside every day has better manners than most contractors. It has never once pretended to be the owner.

Why the rack stays solvent

The rack is thriving. Fast fashion is enormous, and nobody running it is stupid. Unit cost collapsed. Discovery moved from the fitting room to the feed. Replacement got cheaper than repair. Status attached itself to newness and let go of wear.

Software ran the same four. Token cost fell through the floor. Distribution is a timeline. Regenerating the app is cheaper than understanding it. “Shipped this week” is the label on the collar. The loop-viber is correctly tuned for a market that pays for seasons. That market is real and large and will make some of them rich. It is also a different market from the one a press, a forge, a sanctuary, or a working household lives in. The trouble starts when a seller from that market knocks on a door in ours.

In June I wrote that Sam Altman stood up at BlackRock and described intelligence as a metered utility. Take him at his word and the loop is a vending machine bolted to that utility. Vending machines are fine. I have bought a great many bad sandwiches from them at worse hours. Nobody has ever bought a coat from one.

What a steward does

No stack list. The tools in a stack list will be in the desert before this essay is a year old.

Hold the job in your head before you open the tool. If you cannot say who will use the thing on a Thursday in March, and what they will be trying to get done, close the laptop.

Let the machine draft. Keep the deciding.

Read the diff. If you will not read it, you are the customer of your own factory. At least be honest about which side of the counter you are standing on.

Kill anything that could hang on someone else’s rack. If the page would work as well with another logo on it, it says nothing about you and owes nothing to your people.

Price the thing as if the buyer will still be here next year, because yours will be. If that price makes the product look impossible, you have learned something cheap. It was a costume.

Keep the invoice visible — tokens, hours, defects shipped, defects caught. A household that will not name an invoice will keep paying it.

A quarter of the work is enough, if it is the quarter that carries the judgment. Nobody is asking you to hand-write the code. Be in the room for that part.

For the man running the loop I have one sentence and no comfort in it. Keep the factory if it pays. Stop calling what comes out of it a company.

Coda

A coat is a promise that the weather will come back. A six-dollar shirt is a promise that you will not look closely.

The family of sites is in the coat business. We will sew fewer garments this year than one loop ships in a weekend, and every one of ours has a name inside the collar and a phone number that gets answered. From the feed the two trades look like two speeds of one craft. Underneath they are different moral objects. One can be inherited. The other has to be replaced before the buyer works out what he was sold.

Somewhere outside Alto Hospicio the wind is working on a pile of shirts nobody wore. Software leaves no pile. The dead apps take up no desert, and that is the only reason we have not had to look at them. A satellite cannot photograph a parking page.

We build for the people who come back. The useful thing, every time, was the one a man was still in the room for.

— F. Tronboll III

Common questions

What is wrong with using AI agent loops to build software products?

The product that comes off that line is not unfinished — it is unowned. When no human reads the work, holds the specification, or stands at the end of the line to pull the piece, what ships is a costume, not a product.

How does fast fashion compare to AI-generated software?

Fast fashion wastes in three ways — defective material, polyester that photographs like fabric, and a season built to be replaced — and so does the fast-dev rack. Both systems leave a pile when they are working as intended.

Is AI-generated code a security risk?

In the spring of 2025, a researcher found that 170 of 1,645 apps built on a popular prompt-to-app platform would hand their database to anyone who asked. Veracode's 2026 report found that AI-generated code fails a basic security test about 44 percent of the time, a figure that has barely moved since their first report.

Who are the customers of fast-dev software?

Two buyers keep the rack solvent: the impulse buyer who never opens the app twice, and the tutorial class selling to itself — founders of tools for founders, courses on building the app that sells the course. Both leave before the seams go.

Can AI-built software serve long-term clients and real households?

The loop-viber cannot serve the people who stay. A donor CRM for a sanctuary has to know what a restricted gift is, because money given for the vet fund has to be spent on the vet, as a matter of law, and no generic CRM scaffold has ever heard of that duty.

What does responsible AI-assisted development actually look like?

Hold the job in your head before you open the tool. Let the machine draft. Keep the deciding. Read the diff. A quarter of the work is enough, if it is the quarter that carries the judgment.

Takeaways

  • A product built without an owner during development cannot be owned after it ships — replacement becomes the maintenance plan.
  • AI-generated code compiles nearly every time and fails a basic security test about 44 percent of the time; the machines got very good at making a garment that looks like a garment.
  • Bespoke work starts at the refusal — a spectator cannot refuse what he never looked at.
  • The useful product kept turning up in the same place: the joint, where a specific use was held in a human head while the machine did the typing.
  • Build for the people who come back, and price the thing as if the buyer will still be here next year — if that price makes the product look impossible, it was a costume.
FT

F. Tronboll III

About the author →