Concept
Vibe Coding
Vibe coding — building software by iteratively prompting a large language model and judging the resulting behavior, without directly reading or editing the underlying source code. Popularized by Andrej Karpathy in 2025 as the workflow where one "forgets the code even exists," vibe coding is the LLM-native realization of natural-language programming and end-user development — framings now treated as synonyms in this knowledge base — in which prose becomes the primary programming interface.
Questions to Consider
- Karpathy's original framing said you should "forget the code even exists." Before you read further, ask yourself: is not seeing the code a feature (it lowers barriers) or a risk (you cannot verify or fix what you cannot see)? What does the answer imply for who should be allowed to vibe-code?
- Research on who succeeds at vibe coding found that traditional computer-science achievement still predicts success even when the user never touches code. If that surprises you, what hidden skill might CS training be building that prose alone does not capture?
- The same study found writing skill predicts vibe-coding performance largely because it produces higher-quality prompts. If prompting is really the bottleneck, is the right fix to teach people to prompt better — or to redesign tools so they demand less prose skill?
- Vibe coding is often celebrated as making "anyone" a developer. But if writing skill and CS knowledge both shape outcomes, does vibe coding widen access to building software or merely relocate the skill barrier from code to prose?
- Some developers distinguish "pure" vibe coding (never reading code) from AI-assisted coding where you review and edit what the model wrote. Where do you think genuine learning — versus over-reliance — is more likely to happen, and why?
Introduction
Vibe coding describes an interaction style enabled by LLM-integrated development platforms (Replit, Lovable, Cursor, and others): the user specifies a program in natural language, the model generates a working system, and the user iterates based on observed behavior rather than by editing source. The term was coined by OpenAI co-founder Andrej Karpathy in February 2025 to capture the experience of relying on the model to such an extent that "the code" fades from awareness. Vibe coding sits at the convergence of several strands this knowledge base already tracks — it is generative AI applied to programming, an extreme form of prompt-driven work, a concrete instance of Human AI Collaboration, and the clearest route yet to non-programmers and end users building their own software (end-user development).
It also has deep roots. The idea of programming in ordinary language long predates LLMs — from COBOL's aspiration to be "an English-language programming system for non-professional programmers," through Donald Knuth's literate programming, to research on natural-language programming with constrained subsets of English. Only with LLMs did it become feasible to map genuinely conversational, underspecified instructions to runnable code. Vibe coding is the particular variant in which the user deliberately does not inspect or edit the generated source, relying entirely on iterative prompting and behavioral evaluation.
Defining the construct: "pure" vs. code-visible vibe coding
The definition of vibe coding is still in flux. Some use the term broadly to mean any AI-guided programming; others insist it refers strictly to "building software with an LLM without reviewing the code it writes." Google Cloud distinguishes a "pure" no-code version (consistent with Karpathy's definition) from a version where the user understands and refines the generated code. This distinction matters for research: a controlled study of vibe-coding proficiency requires a well-defined construct. The CHI 2026 study of predictors of vibe-coding proficiency deliberately targeted the "pure," no-code variant — participants could not view or edit the generated source, so measured performance reflected the ability to specify, refine, and debug behavior through prose and observed output alone (see Thorgeirsson et al.).
Who succeeds at vibe coding: evidence
A preregistered cross-sectional study (N = 100 tertiary students) provides the first controlled, participant-level evidence on which skills predict vibe-coding success. Both written-communication proficiency (r = .29) and computer-science achievement (r = .39) significantly predicted performance on expert-vetted, GUI-oriented vibe-coding tasks, with CS achievement remaining significant after controlling for domain-general cognitive skills (partial r = .281). In a joint model CS achievement contributed roughly twice the unique variance of writing skill, but both added independent predictive value. Critically, human-graded prompt quality mediated the writing→performance link, giving response-process evidence that clear prose operates by producing better prompts. Because the environment hid the source code, CS knowledge could only help indirectly (through problem decomposition, algorithmic thinking, and mental models of control flow) — so the authors argue their CS estimate is a lower bound for AI-assisted programming in which users may also edit code directly (Thorgeirsson et al., 2026).
Vibe coding as end-user development and teacher tooling
A major promise of vibe coding is that it lets non-programmers — including teachers and domain experts — build their own software, an LLM-era form of end-user development. A GAIDE framework study showed K-12 teachers (non-programmers) using vibe coding in an eight-week workshop to create AI-powered learning tools, raising their AI literacy and demonstrating "learning-by-creating" as a professional-development model. In higher education, an instructor rapidly built a programming-process visualizer from IDE activity logs via vibe coding in a matter of days, making students' programming processes visible for teaching and Academic Integrity review. These cases position vibe coding not merely as a learner skill but as an authoring capability that reshapes who can create educational technology.
Design homogenization: access without diversity
Vibe coding's end-user-development promise is about who can build, not what gets built. In a course deployment, 73 students building sites for distinct businesses on one vibe-coding platform produced roughly a dozen distinct designs, and felt authorship did not track measured originality (Boussioux et al. (2026)). Lowering the barrier to building may standardize the output — a cost the access promise does not advertise.
Learning, agency, and the risk of over-reliance
Vibe coding reopens core questions about what is learned when AI automates implementation. Because the user does not read code, they must trust the model's behavior — which makes vibe coding a high-stakes case of the tension between Learner Agency and over-reliance that runs through AI-assisted programming. Curricula are responding by shifting from teaching implementation toward teaching how to direct, verify, and audit AI-generated artifacts (see reshaping undergraduate CS and agentic software engineering). Vibe coding also changes the learner's epistemic position: success depends less on writing code than on expressing intent precisely and evaluating behavior against goals, competencies closer to computational thinking and structured writing than to traditional syntax mastery.
A second limit shows up in the building itself: removing the coding barrier can leave the diagnosis burden untouched. Two engineering case studies had an instructor build working web simulations of a battery thermal management system and three ARQ protocols by prompting Gemini in plain language within a few hours (Tarasak et al. (2026)). A duplicate-packet error then survived repeated prompts, including one that stated the required behavior. It was fixed only when the instructor reasoned from protocol behavior to an insufficient timeout interval, a parameter the interface never exposed. Neither simulation's effect on learning was measured, so the account establishes feasibility rather than effectiveness.
Connections to related concepts
Vibe coding connects naturally to Prompt Engineering (prompt quality is the mechanism of prose-driven development), CS Education (as the domain where the technique is most used and most contested), Computational Thinking (the mental modeling that predicts success even without code access), Writing (writing becoming a programming skill), and Agentic AI (directing a model toward an artifact rather than hand-building it). It also intersects with AI Literacy and Teaching, since the ability to build one's own tools changes what teachers and learners can do. Finally, it raises Academic Integrity and assessment questions identical to those AI code generation raises across computing education.
A faculty-level case study in this knowledge base supplies the organizational layer. Zimmer (2026) describes AI intrapreneurship — educators building their own tools instead of waiting for institutional procurement — including an author who does not code using Claude Code to build a checker for 321 course links. The decisive enablers were organizational rather than technical: work discretion, rewards, and time availability, the last described as most obviously in deficit in academic settings and undercut by promotion and tenure. The security picture stayed sober, since Veracode's 2025 analysis found only 55% of AI-generated code secure, so vibe-coded classroom tools still need a review pass before handling student data or connecting to an LMS.
Common Misconceptions
"Vibe coding lowers the skill barrier, so it is mainly a matter of writing well." Written-communication proficiency helps and does not carry the outcome alone. In a preregistered cross-sectional study (N = 100 tertiary students), both written-communication proficiency (r = .29) and computer-science achievement (r = .39) significantly predicted performance on expert-vetted, GUI-oriented vibe-coding tasks, and in a joint model CS achievement contributed roughly twice the unique variance of writing skill while both retained independent predictive value. The barrier has moved, not disappeared, and part of it remains technical.
"Because anyone can now build software, what gets built will become more diverse." Access and diversity are separate outcomes, and access can even compress the second. The design-homogenization evidence in this corpus describes exactly this pattern: a wider population of builders working from the same models, the same component conventions and the same prompting defaults tends toward converging designs. Democratizing authorship does not automatically diversify artifacts.
"'Pure' vibe coding is what the term means, so the distinction does not matter." It matters for evaluation and for safety. The page distinguishes pure vibe coding, where the user deliberately does not inspect or edit the generated source and relies entirely on iterative prompting and behavioral evaluation, from code-visible work in which the user reads what was produced. These are different activities with different error profiles, and a study of one does not license claims about the other.
"If the app runs, the generated code is fine." Running is a weak test. Veracode's 2025 analysis found only 55% of AI-generated code secure, so vibe-coded classroom tools still need a review pass before handling student data or connecting to any system worth protecting. Behavioral evaluation confirms the paths a user happens to exercise and says nothing about the ones they do not.
Putting Vibe Coding into Practice
For instructors and teacher educators
- Teach the difference between pure and code-visible vibe coding explicitly, and require the second for anything that will handle student data. The distinction is a teachable habit, not a philosophical nicety.
- Keep a real programming thread alongside vibe-coding work, because CS achievement carried about twice the unique predictive variance. Treating natural-language specification as a full substitute discards the stronger predictor.
- Have students evaluate the artifact behaviorally and inspect the source of anything they deploy. Reading generated code is a review skill, and it is not automatic for students who can prompt.
For developers and administrators
- Run a security review pass on any vibe-coded tool before it touches student records, consistent with the 55% secure-code finding.
- Budget for homogenization: if several staff vibe-code the same kind of tool from the same defaults, expect similar output and plan for how differentiation will be achieved deliberately.
- Prefer code-visible workflows for maintained tools and reserve pure vibe coding for throwaway prototypes.
For researchers
- Report the vibe-coding condition (pure versus code-visible) alongside outcomes, and use expert-vetted, GUI-oriented tasks rather than self-reported success, so results are comparable across studies.
- Measure artifact diversity, not only artifact count or builder count, if the access argument is being tested.
Connected Concepts
- Generative AI
- Large Language Models (LLMs)
- Prompt Engineering
- CS Education
- Computational Thinking
- Writing
- Agentic AI
- Human AI Collaboration
- AI Literacy
- Teaching
- Cognitive Offloading
Connected Articles
- Computer Science Achievement and Writing Skills Predict Vibe Coding Proficiency — Computer Science Achievement and Writing Skills Predict Vibe Coding Proficiency (CHI 2026 empirical study)
- A Guiding Framework for K-12 Teachers in Creating AI-powered Learning Technologies through Vibe Coding — A Guiding Framework for K-12 Teachers in Creating AI-powered Learning Technologies through Vibe Coding
- From Idea to Classroom in Days: Using "Vibe Coding" to Create a Programming Process Visualizer from IDE Activity Logs — From Idea to Classroom in Days: Using "Vibe Coding" to Create a Programming Process Visualizer from IDE Activity Logs
- Vibe Coding for Simulation Development in Engineering Education — Vibe coding built two engineering simulations in hours; diagnosing a protocol error still needed the instructor
- Understanding Student Perceptions, Mistakes, and Debugging Approaches when Solving Natural Language Programming Tasks — Understanding Student Perceptions, Mistakes, and Debugging Approaches when Solving Natural Language Programming Tasks
- Code to Learn with Generative AI: A Theoretically Grounded Framework for Artifact Construction in Upper-Secondary Education — Code to Learn with Generative AI: A Theoretically Grounded Framework for Artifact Construction in Upper-Secondary Education
- Reshaping Undergraduate Computer Science Education in the Generative AI Era — Reshaping Undergraduate CS Education for Generative AI
- Flowcode: An AI-Powered Programming Environment for Scaffolding Iteration in Creative Computing Education — Flowcode: An AI-Powered Programming Environment for Scaffolding Iteration in Creative Computing Education
- AI Intrapreneurship: Educators as Frontline Innovators in the Age of Generative AI — AI intrapreneurship: faculty building their own tools, and the organizational enablers that decide whether the impulse survives (Zimmer 2026)
- One Tool, One Taste? How Vibe Coding Trades Collective Diversity for Individual Creativity — One Tool, One Taste? How Vibe Coding Trades Collective Diversity for Individual Creativity
Connected Resources
- Vibes DIYA plain-language app builder: describe a small tool in words and get a working, shareable web app, with the underlying React packages and CLI released under Apache-2.0.