Vibe coding and assisted prototyping: what this practice allows, and what it does not
Note revised on 25 May 2026. Article originally published in March 2026 — full rewrite.
The term vibe coding was popularised at the beginning of 2025 — the formulation is attributed to Andrej Karpathy in several public posts of that period — to describe a development practice where intent expressed in natural language precedes the writing of code. The developer describes what they want to obtain — a feature, a behaviour, an interface — and a system driven by a generative model produces the corresponding implementation, which the developer reviews and adjusts.
This practice has triggered, in a few months, a public conversation disproportionate to its real scope. For some, it heralds the end of software development as we know it. For others, it reveals a new category of unprecedented technical debt. The observable reality lies between the two. Vibe coding effectively and substantially transforms the prototyping phase. It does not, however, exempt one from the discipline of software production when the time comes to turn the prototype into a product, and confusing the two phases leads to costly trade-offs.
What vibe coding makes possible in prototyping
Software prototyping is by construction an activity of exploration. It does not aim to deliver a finished product, but to validate that an idea — a user journey, a piece of business logic, an integration mechanism — works in practice. The success criterion of a prototype is that it enables a decision on whether or not to pursue the effort.
Under this purpose of exploration, vibe coding opens three operational capacities.
Speed of iteration first. A prototype that demanded several weeks from a lone developer can now be produced in a few days, sometimes a few hours for simple concepts. This compression of the ideation cycle transforms the economics of hypothesis testing: what was too costly to validate becomes testable.
Accessibility to non-developer profiles next. A product manager, a consultant, a business analyst can produce a functional prototype that concretely expresses their intent, without passing through the filter of a technical team. This autonomy of the exploratory phase frees up developer time for activities where their expertise is irreplaceable.
Exploration of variants finally. Where a prototype demanded substantial effort per variant, it becomes possible to produce several versions of a single concept in parallel, to test them briefly, and to retain the one that best survives the confrontation with reality. This plurality changes the quality of product decisions.
What vibe coding does not transform
Beyond the prototype's boundary, three zones remain largely foreign to the promises of vibe coding.
Invisible technical debt first. Code produced by iterative dialogue with a generative system often works, but its architectural coherence is not guaranteed. When the developer does not have a clear vision of what has been assembled, each subsequent addition complicates the whole without anyone noticing. This debt accumulates silently, and its cost is revealed at the moment the prototype should evolve into a product — that is, the moment when it is too late to correct it without substantial rewriting.
Application security next. Code produced by vibe coding works by default on the nominal path. It does not systematically handle error cases, injections, authorisations, edge conditions — all the zones where application security is played out. For an internal prototype tested in a closed circuit, this limitation is acceptable. For a product exposed to real users, it constitutes a risk that no additional prompt iteration corrects.
Regulatory compliance finally. Regulated sectors in Switzerland — finance, health, insurance — require a traceability of produced code that is not natural in a vibe-coding approach. Generation processes are weakly deterministic, technical choices are rarely explicitly documented, reviews are by construction lighter. None of these points is disqualifying for prototyping; all become so for production deployment.
The arbitration rule that distinguishes seriousness from improvisation
From this distinction emerges a simple and structuring arbitration rule. Vibe coding is the appropriate tool for validating that an idea deserves to be built. It is not the tool to build it next. This distinction is not a concession to prudence — it is the most efficient use of the practice itself.
The teams that succeed best with this practice are those that own this separation. They prototype quickly in vibe coding, they validate what needs to be validated in a prototype, then they rebuild cleanly what has demonstrated its value. Teams that let themselves be drawn into keeping the prototype in production accumulate a debt that proves costly within six to twelve months.
Contexts where vibe coding has no place, even for prototyping
Four situations exclude the use of vibe coding even for the exploratory phase.
Prototyping on real data first. When a prototype manipulates real client data, identifiable financial or medical information, the produced code presents risks of leakage or mismanagement exceeding what the prototype status absorbs. The minimal discipline consists of using fictive or anonymised data in an isolated environment, regardless of the speed vibe coding otherwise offers.
Publicly exposed prototyping next. A prototype put online for public testing without access control is no longer a prototype: it is a production deployment without the corresponding rigour. This confusion between an internal mock-up and a public deployment is the most frequent operational error observed among teams adopting vibe coding without framing.
Prototyping that touches production systems finally. If the prototype connects to an existing management system, a business database or a critical API, a bug produced by generative dialogue can have real consequences. The practical rule consists of confining the prototype to a separate environment, with no direct access to operational systems.
Prototyping without human review completes the list. Vibe coding without anyone capable of evaluating the produced code before it is shown to a user, an investor or a client is risky. The review does not need to be heavy, but it is necessary — someone must be able to say whether the result holds up, independently of who produced it.
The discipline that distinguishes serious practice
Beyond the exclusion contexts, three practices distinguish teams that derive durable value from vibe coding.
Clear separation between prototype and production first. When a concept explored in vibe coding is validated, it is rebuilt cleanly, with the rigour of architecture, testing and review that characterises serious software work. This discipline is not a step back, it is the normal use of a prototype: it demonstrates, it does not serve.
Documentation of effective prompts next. When an iterative dialogue produces a quality result, the trace of that dialogue deserves to be preserved. It constitutes a methodological capital that is transmitted and improves with practice, rather than a tacit knowledge that fades with time.
Setting up a governance framework completes the list. For an organisation adopting vibe coding beyond individual use, the explicit definition of what can be prototyped this way, and what must fall under framed development, avoids drift. This clarification is built in a few weeks and preserves the organisation from improvised trade-offs.
The real scope, without the mythology
Vibe coding does not replace software development. It shifts the boundary between exploration and construction. That boundary has moved towards a faster and more accessible exploration, which deserves to be seized. It has not shifted the rigour required for constructing a serious software product.
For a Swiss SME adopting this practice, the stake is not technical. It is framing. A team that clearly distinguishes the prototype from the product, that maintains a minimal review discipline even on prototypes, and that knows how to rebuild cleanly what exploration has validated, effectively gains speed in its capacity to transform its ideas into software assets. A team that confuses the two phases, that pushes into production what should remain a prototype, accumulates a debt that no subsequent prompt iteration corrects.
Vibe coding is a tool. Like any tool, its value depends on the use one makes of it, and on the lucidity with which one sets its limits.
Jérôme Deshaie is CEO of MCVA Consulting SA, a Swiss firm specialising in strategic consulting on artificial intelligence, based in Valais.
Related articles
Claude Code in practice: a structured account of a development assistant
Claude Code differs from editor-integrated assistants by operating at the command line and at the level of the entire project. This note sets out what practice allows us to assert about its strengths, its limitations and the practices that derive durable value from it.
8 min
The architecture of an artificial-intelligence project: three patterns and the discipline that makes them durable
The choice of architecture for an AI project conditions the cost, performance and scalability of the result. This note sets out the three patterns that structure practice in 2026, the criteria that distinguish their appropriate use, and the discipline that makes them durable.
11 min
Choosing an AI consulting firm in Switzerland: what distinguishes a serious approach
The AI consulting market in Switzerland has become denser without becoming more disciplined. This note proposes an evaluation framework to distinguish a serious approach from an opportunistic offering, based on four criteria the firm observes in the field.
6 min