ConceptIntermediateShipping & Model Lifecycle / Prototyping with LLMs and rapid POCs / #9

Explain the danger of prototype code becoming production code.

The direct answer
Put a named checkpoint between any prototype and the real feature it's about to become: rebuilt against the real spread of production inputs, not the demo's, and signed off by someone other than the person who wrote it. Never let "it worked in the room" be the thing that quietly promotes a two-week script into the feature real customers depend on.
Do this, in order
  1. Put a rebuild checkpoint between prototype and production, and refuse to skip it because the demo went well.Why: a good demo tells you the idea works, not that the code is safe to run on strangers.
  2. Rebuild it against the real spread of production inputs, not the hand-picked test group's.Why: the people who tested the prototype were chosen to make it easy to test, which is exactly why they never hit the case that breaks it.
  3. Have someone other than the original author sign off before it ships for real.Why: the person who built it fast, under a deadline, is the least likely person to spot what it was never built to handle.
  4. Cap what the output can do when two answers stack together.Why: it limits the worst case even for the one combination nobody thought to test.
  5. Watch for outputs the test group could never have produced, and treat them as a flag, not a footnote.Why: detection catches what the checkpoint missed once the feature is already live.
  6. Leave the low-stakes prototypes alone.Why: a script that only picks a flavor doesn't need a rebuild gate, and forcing one everywhere buries the gate that actually matters.

How to answer this, stage by stage

Eight moves, from pinning the question to one real feature to the line you'd close on.

1
Pin it to one real feature before naming any framework
Say it like this
"Say a wellness app has a quiz: answer a few questions about your age, weight range, and what supplements you already take, and it tells you how much of their vitamin blend to take a day. What I want to walk through isn't a bug in that quiz. It's the two weeks before it existed, when someone wrote it fast to see if the idea even worked, and nobody ever decided when that script stopped being a prototype."
Why this works
Grounds "prototype code becoming production code" in one real feature before any framework language shows up.
2
Say your structure out loud
Say it like this
"I'd run this through GUARD, because 'a prototype quietly became the real feature' is a fairness question wearing a process question's clothes. Who tested it versus who actually uses it, where that gap costs the most, who can't tell the code was never checked, the actual fix, and how I'd catch it happening again somewhere else."
Why this works
Two seconds naming the plan, not a recited acronym before the real thinking starts.
3
Reframe what the danger actually is
Say it like this
"The danger isn't that prototype code has bugs. All code has bugs. The danger is that a prototype is built to answer one question, 'does this idea work,' and it gets tested by people picked to make that question easy to answer. Production doesn't ask that question. It asks 'does this hold up against everyone,' and nothing about passing the first question tells you the answer to the second one."
Why this works
This is where a checklist answer and a real answer split apart.
4
Give the one decision, as a real mechanism
Say it like this
"I'd name a checkpoint in the process, not just a value we all agree with. Call it a graduation review: before any prototype script can be wired into a real feature, it gets rebuilt against the real range of production inputs, capped so two answers stacking together can't produce an extreme output, and someone who didn't write it has to sign off. No sign-off, it stays a prototype, no matter how well the demo went."
Why this works
A mechanism you could point to in the process, not a description that still needs interpreting.
5
Prove it with the failure it prevents
Say it like this
"Here's what it looks like without that. The 25 people who tested the quiz were all recruited as 'new to supplements,' to keep the test simple. Fourteen months later, the same script has scored 41,000 real customers, and about 6 percent of them already take a similar supplement when they take the quiz, a combination none of the 25 testers had. For that group, the script's suggested amount just stacks on top of what they already take, and nothing on the screen tells them that number came from a script built to answer a demo question, not their question."
Why this works
The compressed version of the story below. Four sentences, and the gap is concrete, not hypothetical.
6
Say what you'd measure
Say it like this
"I'd log which answer combinations the original 25 testers actually produced, and flag any production result that lands on a combination none of them ever hit. That's not a guess about risk, it's a fact you can check. I'd also sample those flagged outputs every week, because a shortcut that's been quietly wrong for a year doesn't announce itself, it just keeps producing normal-looking numbers until someone looks."
Why this works
Shows judgment past launch day, catching the gap before it costs anyone anything.
7
Say what you'd leave alone
Say it like this
"Not every prototype needs this. If the same app has a quiz that just picks which flavor to recommend, and getting it wrong means someone tries a flavor they don't love, that script can ship exactly as it was written in the prototype. The gate exists for outputs that compound or that someone relies on, not for every rough script that happens to reach a real user."
Why this works
Shows judgment instead of blanket caution, which is what actually earns trust on this question.
8
Close on the one line
Say it like this
"So: a prototype answers 'does the idea work,' and production asks a completely different question, 'does it hold up against everyone.' Passing the first one proves nothing about the second, which is exactly why the two need a named gate between them, not a quiet handoff."
Why this works
Restates the decision in one breath, the line an interviewer remembers on the way out.

Let's learn

The quiz box in a wellness app doesn't know the difference between someone trying supplements for the first time and someone who already has three bottles on their counter. Same box, same five questions, for both.

Say a wellness app builds a short quiz: age range, weight range, activity level, what you're taking already, what you want it for. Answer it, and the app scores your answers and tells you how much of its own vitamin and mineral blend to take each day.

Knowledge spark: what "prototype code" means here A prototype is the fast, rough version someone builds to answer one question: does this idea even work. It's often a few hundred lines, built in a couple of weeks, tested by whoever's easy to grab. It was never meant to be the thing that actually ships. The danger starts the moment nobody ever decides otherwise.

Before this feature existed, everyone who bought the blend got the same one printed amount on the label. Anyone who wrote in asking "is this right for me" got a reply from the two-person care team, by hand, after checking their answers against a chart. About 20 people a week did that, and it took roughly fifteen minutes each.

A data scientist built the quiz-scoring script in a two-week sprint, to see if a personalized number actually made people more likely to keep taking the blend. It worked in every test. Leadership loved it. Instead of a few more weeks turning it into a real feature, it went straight into the app almost exactly as written, because a two-week script that already worked felt like the finish line, not a checkpoint.

Now the quiz answers everyone in under a second, no one from the care team involved. Across the wellness app's roughly 41,000 quiz-takers so far, it's the single most-used feature on the personalization team's roadmap.

Share of quiz-takers already on a similar supplement
The exact combination the stacking problem needs, by group.
The 25 people who tested the prototype
0%
The 41,000 real quiz-takers since launch
6%
The 25 testers were recruited as "new to supplements," to keep the prototype simple to check. None of them could have produced the combination that trips the stacking problem, because the recruiting message screened it out before the quiz ever ran.
We didn't test the quiz on 25 people. We tested it on the 25 people it couldn't fail on.

Here's the part that matters. The extra 6 percent isn't the problem on its own, not really. Most quiz-takers who already take something similar would notice a big jump and just not buy the extra bottle. The real cost lands on whoever doesn't notice, because the number came from an app that's supposed to know what it's doing, and nothing on the screen says otherwise.

At its worst, nobody at the company would know if that happened five thousand times over, not once. There's no flag on the account, no review queue, and if a customer wrote in to ask about it, the support team would read the number as intentional, the same way they'd read any number the app produces, because nobody told them it came from a two-week script that was still using its original prototype variable names.

The decision I would take back We treated "it worked in every demo" as the finish line instead of the starting line. The two weeks it took to build already felt fast next to a normal feature estimate, and nobody wanted to spend three more weeks rebuilding something that was already working in front of the room.

What I would leave alone. The same app has a separate quiz that just recommends a flavor. Get that one wrong and someone tries a flavor they don't love. That script can stay exactly as the prototype left it. The gate only earns its cost where an output compounds or where someone relies on the number being right.

The lesson. A prototype that works is proof an idea is worth building. It is not proof the code is safe to hand to strangers. Those are two different bars, and the only way to know a script cleared the second one is to check it against people who don't look like the first 25, not to watch it succeed with them one more time.

Now here is the same thing as a story

The short version sits above. Read this one for how a two-week sprint turned into fourteen months of nobody asking the question again.

Margit Solheim has shipped more features than anyone else on the personalization team at Bellwort, a wellness app that builds custom vitamin and mineral routines for its customers. People trust her sign-off. When she says a feature's ready, it ships.

She inherited the "Daily Dose Fit" quiz about a year after it launched, when the team that built it moved on to other things. It had been running quietly the whole time, one of the app's better numbers, more people finishing checkout after taking it than before.

She didn't think much about it until a new engineer joined her team in March and picked up a small ticket to add one more question to the quiz. He opened the file to see how the scoring worked, and found a comment near the top: // TEMP - rebuild before real launch - JV. The initials belonged to the data scientist who'd written the original prototype. He'd left the company nine months earlier.

"Wait," he asked her over Slack, "this is still the prototype?"

Two figures side by side. On the left, Margit, hand on a switch labeled ship it, making the decision. On the right, an unnamed customer, holding a bottle with a card showing a suggested daily amount, empty other hand, facing the same outcome.
Margit held the decision. The customer just got what the decision produced.

Margit pulled up the original build notes from before her time. The script had been written in two weeks, tested with 25 employees who'd answered a callout in the company Slack asking for people who were "new to supplements, to keep it simple to test." It worked cleanly for every one of them. The demo to leadership went well. The team that shipped it decided, reasonably, that three more weeks rebuilding something that already worked was three weeks better spent elsewhere.

Nobody ever came back to it. Not because anyone decided it was fine. Because nothing about it ever looked wrong from the outside. It kept producing numbers. The numbers kept looking like numbers.

She ran a query against fourteen months of quiz answers. Of the roughly 41,000 people who'd taken it, about 6 percent had answered "I already take something similar" and landed in the lower weight band, the exact combination none of the original 25 testers could have hit, because the recruiting message had screened it out before the quiz ever ran once for real.

A flow of four boxes: quiz answered, script scores it, a missing step marked in red reading no one checks, dose goes out.
The step that should sit third, and doesn't
We didn't test the quiz on too few people. We tested it on the only 25 people it was built to pass for.

For that 6 percent, the quiz's suggested amount stacked directly on top of what they'd told it they already took. Nothing on the results screen said "you already take something like this, here's what that means." It just showed one confident number, the same way it showed a confident number to everyone else.

Margit checked the support queue going back over a year. Nine customers had written in asking, in different words, "is this right for someone who already takes a magnesium supplement?" Every one of those nine got a friendly, generic reply pointing them back to the quiz results, because the person answering had no way to know the quiz had never actually been checked against their exact situation. As far as the support team knew, the number was the product working correctly.

Margit wasn't the one who wrote the shortcut, and she wasn't careless in how she'd used it. She'd inherited a feature that looked, from every angle she'd had reason to check, like a finished one. It had a name, a dashboard, a place in the roadmap. Nothing marked it as still being someone's two-week guess.

Eight months before the new engineer's question, when the original team shipped the quiz, the room had asked whether it needed more testing before launch. The answer that carried the day: it worked for everyone who tried it, and waiting meant losing the momentum from a good demo. That made sense at the time. Nobody in that room had 41,000 customers to picture yet, only the 25 who'd already said yes.

Run the same fourteen months again, with a graduation review in place. The prototype still gets built in two weeks, and it still demos well. But before it can replace the printed label, it goes through one more step: rebuilt against a sample of real customer answer combinations instead of the 25 testers', capped so a "already takes something similar" answer reduces the suggested amount instead of stacking on top of it, and signed off by someone who didn't write the original script. That review adds three weeks. The quiz still ships the same quarter. And the 6 percent of customers who already take something similar get a different, lower number, one that accounts for what they told the quiz in the first place.

What I'd tell myself, looking at that Slack message: we asked whether the idea worked. We never asked, out loud, whether the code was allowed to leave the room it was born in.

GUARD, once the demo script is the real feature

This reads like a process question about shipping fast. The real test is whether anyone ever decided the prototype was safe to run on people who weren't in the room when it was built.

G, groups. The 25 employees who tested the prototype, hand-picked to be "new to supplements" so the test would be easy to check, and the 41,000 real customers who inherited whatever the script did or didn't handle.
U, unequal. The gap costs nothing for a customer whose answers land anywhere near what the 25 testers looked like. It lands hardest on the 6 percent who already take something similar, a case the test group was screened out of by design, not by accident.
A, ability to contest. A customer getting the number has no way to know it came from a script that was never checked against their exact situation. The support team reads it the same way, because nothing marks the quiz as still running on borrowed prototype code.
R, reduce. Name a graduation review: before a prototype script can become the real feature, it's rebuilt against the real spread of production answers, capped against stacking, and signed off by someone other than whoever wrote it.
D, detect. Log which answer combinations the original test group actually produced, and flag any production result outside that set. Sample the flagged outputs every week instead of trusting that a script running quietly is a script running correctly.
Where this answer would fail If the fix here is "add more testers to the next prototype" or "review the code more carefully next time," it doesn't count. Those are dials turned up on the same habit: shipping straight from demo to production and hoping the next one gets lucky too. A named checkpoint that a feature cannot pass without is the only version that actually closes the gap.

And if you want to be sure it really works, try it somewhere else

A small city's planning department builds a scoring tool that reads building-permit applications and sorts them into "fast-track" or "needs full review." A staffer wrote the first version in a week, tested it against the department's own backlog of 20 recent permits, and it sorted all 20 the way a human reviewer would have. It went live for every new application the following month.

G, groups. The 20 backlogged permits used to test the script, all fairly ordinary single-family renovations, and every applicant across the whole city who submits one after launch.
U, unequal. The gap barely registers for another routine renovation permit, which the script sorts correctly either way. It lands hardest on applications for accessory dwelling units on flood-zone lots, a project type that never once appeared in the 20 test permits.
A, ability to contest. An applicant whose project gets auto-fast-tracked or auto-flagged has no way to know a script decided it, let alone that the script had never seen a project like theirs before.
R, reduce. The same named checkpoint: rebuild the scoring against a real sample of the city's actual permit mix, not the department's own backlog, and require sign-off from someone outside the team that built it before it can touch a live application.
D, detect. Track which project types the original 20 test permits covered, and flag any live application outside that set for a second look before the decision goes out.

Swap the trigger and it still runs

  • Speed: the team doubles how many new quiz questions it ships per quarter, so an untested answer combination reaches production faster than anyone notices the pattern.
  • Cost: rebuilding a script properly costs real engineering weeks, so it keeps losing out to whatever's next on the roadmap, quarter after quarter.
  • The model gets better: a newer scoring version cuts obvious errors in half, which makes the whole feature look safer and makes it easier to skip the rebuild instead of harder.

Where people run it wrong

  • Treating "it worked in the demo" as proof it's safe for production, instead of proof the idea is worth building properly.
  • Testing the prototype once, at the start, and never checking what real usage actually looks like a year in.
  • Watching whether the feature is popular as the whole health picture, when popularity says nothing about whether the code underneath was ever checked.

How to use it live

Ask "who tested this, and how were they picked?" before you ask anything about accuracy. It's almost always where the real gap is hiding, and it buys you a few seconds to find it.

Flashcards (click a card to flip it)

1 · THE FRAMEWORK
What framework fits a question about the danger of prototype code becoming production code, and why?
Tap to flip
ANSWER
GUARD, for risk and fairness. The real question is the gap between whoever the prototype was tested on and whoever actually depends on it once it quietly becomes the real feature.
2 · THE PERSON
Who is this answer about?
Tap to flip
ANSWER
Margit Solheim, a senior product manager at Bellwort, a wellness app, who has shipped more features than anyone else on her team and inherited the "Daily Dose Fit" quiz a year after it launched.
3 · THE HABIT
What did the team stop doing once the prototype quietly started working in production?
Tap to flip
ANSWER
They stopped treating "is this still the prototype" as a question worth asking. It kept producing normal-looking numbers, so for fourteen months nobody checked whether it had ever actually been rebuilt.
4 · THE GAP
What's the gap this answer turns on?
Tap to flip
ANSWER
The 25 prototype testers were recruited as "new to supplements," so none of them could produce the "already takes something similar" case. About 6 percent of real customers land in exactly that case, and get a stacked number nothing on screen explains.
5 · THE OLD DECISION
What old decision does this answer take back, and why did it make sense at the time?
Tap to flip
ANSWER
The team shipped the prototype script straight into the app instead of spending three more weeks rebuilding it. It made sense because it already worked in every demo, and nobody in that room had 41,000 real customers to picture yet, only the 25 who'd said yes.
6 · THE NUMBER
Fill in: of the 25 people who tested the prototype, ______ already took a similar supplement, the exact combination the stacking problem needs.
Tap to flip
ANSWER
Zero. They were recruited specifically as "new to supplements," which screened that combination out of the test before the quiz ever ran once for real.
7 · THE REPLAY
Same fourteen months, with a graduation review in place. What changes?
Tap to flip
ANSWER
The review adds three weeks before launch, rebuilding the script against real answer combinations and capping stacking. The quiz still ships the same quarter, and the 6 percent who already take something similar get a lower number that accounts for what they told it.
8 · TRANSFER
Section four runs GUARD again on a different product. Which one, and what does the "unequal" gap become?
Tap to flip
ANSWER
A city planning department's permit-sorting tool. The gap: it barely matters for another routine renovation, and lands hardest on accessory dwelling units on flood-zone lots, a project type the 20 test permits never included.

Check yourself Score: 0 / 0

Multiple choice
1. Of the 25 employees who tested the "Daily Dose Fit" prototype, none already took a similar supplement. What does this actually show?
  • A. The prototype test simply didn't run for long enough to catch every case.
  • B. The test group was recruited in a way that structurally screened out the exact combination that later caused the problem, so passing the test never proved anything about that case.
  • C. The 25 testers weren't paying close enough attention to the questions.
  • D. Supplement stacking is too rare a case to have been worth testing for.
Show hint
Ask how the 25 testers were chosen, not how many of them there were.
Show answer
B. A, C, and D all treat this as a matter of luck, attention, or rarity. The real issue is selection: "new to supplements" was the recruiting criteria, so the case that later broke was never possible to hit during the test.
True or false
2. True or false: because getting the flavor-recommendation quiz wrong only costs someone a flavor they don't love, that script needs the same graduation review as the dosage quiz before it can ship.
  • True
  • False
Show hint
Ask whether the output compounds, or whether someone is actually relying on it being right.
Show answer
False. The flavor quiz's wrong answer costs nothing that stacks or compounds. The gate exists for outputs someone depends on being right, not for every rough script that happens to reach a real customer.
Fill in the blank
3. Fourteen months after launch, the quiz had scored about 41,000 real customers, and about ______ percent of them had already told it they took something similar.
Show hint
It's the number that turns a zero-percent test result into a real production risk.
Show answer
6 percent. About 2,460 people, all landing in a combination the original 25 testers were recruited specifically to never produce.
Short answer
4. If Bellwort had tested the prototype on 250 employees instead of 25, but still only recruited people "new to supplements," would that have caught the stacking problem? Why or why not?
Show hint
Ask whether the fix is more testers, or a different kind of tester.
Show answer
Model answer: "No. More people recruited under the same 'new to supplements' rule still can't produce the 'already takes something similar' case. The problem was never the sample size, it was that the recruiting criteria made the whole failure case impossible to see, no matter how many people you added."
Short answer, apply it yourself
5. Think of a feature you've used that felt rough around the edges, like it was still a first draft. What would you guess its original test group looked like, and what kind of user do you think it was never checked against?
Show hint
Look for the moment a feature behaved like it had only ever met people similar to whoever built it.
Show answer
Model answer: "A budgeting app I used always assumed one paycheck a month. It clearly got tested by people paid that way. I get paid every two weeks, and every projection it gave me was wrong, because nobody who tested it had my pay schedule to catch it."
Multiple choice
6. Why couldn't the fix here just be "have the original engineer double-check the script's outputs every few months"?
  • A. Because the original engineer had already left the company by the time anyone noticed.
  • B. Because that's a dial turned up on the same habit, occasional review by the person least likely to spot their own blind spot, not a decision that changes what ships or who signs off on it.
  • C. Because engineers aren't allowed to review their own code under most company policies.
  • D. Because a script only needs review once, at launch, not on an ongoing basis.
Show hint
A is true in this story but isn't the real reason the fix fails, ask what would still be missing even if the engineer had stayed.
Show answer
B. Even with the original author still around, "check it sometimes" is still a habit, not a gate. The person who built it under a deadline is the least likely to see what it was never built to handle, which is exactly why the sign-off needs to come from someone else.
From U2xAI Academy

From answering questions to owning outcomes.

A live workshop where you ship a working AI agent, defend a launch decision, and walk away with a portfolio recruiters can't wave off, not just more questions to study.

  • A live AI agent you actually shipped
  • A launch decision you can defend under pressure
  • An interview-ready portfolio, not more flashcards
Know more