Originally published by PwC on 14 January 2026. The full article is available only in Portuguese in the original publication.

By Ricardo Pacheco Almeida and Eduardo Barroso da Silva (PwC Portugal).

Vibe coding: origins, meaning and impact on programming

The advent of Generative Artificial Intelligence has brought a whole range of new terms and specialisms into the world. One of these terms is vibe coding.

Although it is neither an academic nor even a formal definition, vibe coding is a reflection of its time: it is a concept that “went viral” based on a tweet posted by Andrej Karpathy, a data scientist and former director of AI at Tesla, in early 2025. In that post, Andrej remarks that there is a “new kind of programming called vibe coding, in which we surrender completely to the vibes (…)”.

The term became established in the field’s discourse and, today, vibe coding can be described as the intuitive use of GenAI-based coding assistants. Instead of writing detailed specifications or every line of syntax, developers rely on the tool’s ability to infer intent from the shared context, the project itself and the code created. The developer sets the direction, the vibe, and the solution generates the implementation independently.

It is also important to distinguish vibe coding from assisted coding or AI-assisted pair programming, a concept emerging in academia and industry in which professional developers use GenAI to accelerate their development tasks. However, assisted coding does not assume complete trust in the tool that generates the code: it merely speeds up specific, clearly defined tasks of which the developer has prior knowledge. It is a shift in role, with the professional acting less as a writer and more as an editor or curator.

Six men in dark clothing gather around a table covered with a red carpet and an open book.
Rembrandt van Rijn, The Sampling Officials, 1662. · Rijksmuseum, Amsterdam

Best practices for using GenAI

Recent industry data indicate that the vast majority of technology professionals already use these tools in their work. The experimental phase with GenAI therefore appears to be drawing to a close, and we are entering the phase of measuring results.

For developers, the general perception is very positive, as friction decreases and they feel faster. And, indeed, in raw terms, they are producing more: teams with high GenAI adoption can submit almost twice as many pull requests (PRs). However, the review effort increases.

Why this mismatch? There are two main reasons: without proper guidance, it tends to generate larger blocks of code that lack context, making review more complex; and it is so effective at generating code in volume that teams may be unable to review it.

To harness GenAI’s potential, technical teams must train their staff, create holistic methodologies and develop best practices. Before writing any code, it is essential to:

  • create developer handbooks to guide GenAI agents;
  • define rules at the GenAI software level (e.g. Cursor Rules); and
  • establish guidelines (e.g. project guidelines, a project structure with semantic definitions for each folder or module).

Prompting architecture and context management

As in a typical solution-development project, it is also essential to have a well-defined, bounded scope. GenAI tools, particularly Claude models, tend always to do a little more than is requested. It is therefore essential to know which features need to be developed, so that a set of technical tasks oriented towards the defined features can be created (a backlog). The code-generating agent can then develop the specific items identified in the backlog.

All these sources of information consume a large portion of the models’ context window. The context window is the maximum amount of information that a model can “see” and process at once. This information, measured in tokens (words or parts of words), includes both the input (your instructions and the conversation history) and the output (the generated response). It acts as the model’s short-term memory. If a conversation exceeds the limit, the model “forgets” what was said at the beginning and loses the earlier context. It is essential to:

  • keep documentation focused (with short, direct sentences);
  • avoid irrelevant information; and
  • ensure that the context fits within the model’s window.

For large organisations, as mentioned earlier, the challenge is no longer adopting the tool, but converting it into measurable, scalable business value. Successful companies treat AI as a transformation problem, not as a technology-tool problem.

Adopting this transformation mindset requires the company’s strategic ambition for GenAI to be clear and incremental. The first step is to extend the existing governance model to cover this new technology, defining who is responsible for development and monitoring, and how to ensure that its use is responsible and complies with legal obligations. Without this governance structure, AI initiatives remain isolated experiments, unable to scale and vulnerable to legal and reputational risks.

A framework for prioritising and scaling use cases

With governance defined, leadership should focus on use cases, not technology. This involves:

  • identifying processes with the greatest automation potential;
  • assessing impact versus complexity in a decision matrix; and
  • choosing between building, buying or adapting solutions.

Successful implementation depends on a cohesive ecosystem of technology and people. Companies need a decision-making framework to ensure that tools are scalable and decisions auditable. Change management is therefore essential and should focus on training and defining responsible-use policies that teach employees to validate AI results, not merely accept them.

Finally, organisations that extract value measure what really matters. Success is measurable impact on business indicators (KPIs) and return on investment (ROI). This requires continuous performance monitoring and the collection of user feedback. Only this cycle of methodical implementation and learning can demonstrate GenAI’s value beyond experimentation, turning investment into sustained results.

In short, vibe coding represents the temptation of easy speed, but it is a trap that creates technical debt and risk. Professional assisted coding is a technique for augmenting and accelerating the development process. The developer takes on a role closer to that of a reviewer or even a product owner. The future of software development lies not in replacing the engineer, but in transforming them: from a “code writer” into an architect of intent, a critical validator of logic who ensures the solution’s final quality, security and compliance.