What is Vibe Coding?
Vibe coding turns software development into a conversation. Developers can focus on their ideas while AI language models handle most of the implementation work.
Origin of Vibe Coding
The emergence of ChatGPT in late 2022 marked a significant development in the AI industry, showcasing the potential of natural language tools. Technologies like chatbots, copilots, and AI agents quickly integrated into our daily tech lives. Vibe coding describes a new way of software development where users input a line of text to an AI language model, which can automatically generate most of the code. Even those with no programming experience can create applications or complete websites by describing their needs in natural language.
Andrej Karpathy, a former AI director at Tesla and a founding member of OpenAI, coined the term “vibe coding” in early 2025, describing it as a workflow that allows for complete immersion in inspiration without worrying about the code itself. This phrase quickly spread globally and gained acceptance in developer circles, with the renowned Collins Dictionary naming it the word of the year.
According to reports from Forbes and others, data from Y Combinator’s Winter 2025 incubation program revealed that approximately 25% of startup codebases are almost entirely constructed by AI.
How Vibe Coding Works
If you can clearly express an idea, you can build a product prototype. Even if you struggle to articulate your thoughts, AI can help you find inspiration and generate code, bridging the gap between intention and implementation. Vibe coding evolves software development into a dialogue. You don’t need to write functions, organize files, or build components; just describe your ideas in simple language to the AI tool. For example, you might say, “I want to create a skincare blog with a homepage, article pages, and a simple editor to add new articles.” The AI will generate the framework, logic, and user interface. You can open the project, test it, see which features work, and adjust based on feedback, repeating this process until you are satisfied with the results.
Why Vibe Coding is Gaining Popularity
In reality, we are not yet ready to develop production-level software or systems using vibe coding. Any system requiring long-term stability or robust security still needs genuine engineering design rather than vibe coding. Applications developed through vibe coding may appear perfect on the surface, but hidden vulnerabilities often only emerge after users have interacted with them for some time.
In this intent-driven development, you focus on ideas while the AI model handles most of the implementation work. Sam Dhar, a former software engineering lead at Adobe and Amazon Alexa and now head of the AI platform Galileo AI, stated:
“Someone must continuously evaluate it, understand what is produced very carefully, and make decisions based on that, then change and adjust it.”
However, this does not mean that anyone needs to know how to handle the initial code immediately. While vibe coding does not require understanding syntax, it does not replace basic computer knowledge. Beginners still need guidance on where to place code or how to use it.
Vibe coding replaces the technical knowledge required to write software but does not eliminate the procedural knowledge needed to operate software tools. These platforms simplify processes, but beginners still require step-by-step instructions to complete basic tasks such as creating projects, opening the right files, pasting code, and previewing results.
Limitations and Risks
Sam Dhar highlighted the key aspects of vibe coding, stating:
“ChatGPT, Claude, Gemini, Grok, Cursor, and GitHub Copilot workspaces can only be effectively utilized by those with relevant knowledge and experience to build production-ready products.”
Dhar described true software development as a decision pyramid, encompassing everything from UI choices like button color and shape to high-level questions about target user demographics and user scale. He pointed out that a technical team led by a chief architect is still necessary, as not all decisions can be clearly expressed through a simple model prompt.
Current platforms like Bolt and Replit simplify these steps, as you no longer need to paste any code. The AI chat interface generates the entire project within the editor, sets up the structure, and allows you to request modifications using simple language. You can publish a runnable website using a free URL provided by the platform, without paying for a custom domain or hosting, and without needing to view or modify the original code. Both platforms offer free limited feature packages.
If you let AI tools help generate code, you still need to know how to use that code, such as how to copy and paste it into a text editor, save it as a file (.html or .py), and run it on your computer. For those completely unfamiliar with programming, this can be challenging. iOS and Android users can simply open the app in their mobile browser and click “Add to Home Screen.” The entire process takes just a few seconds and is completely free, without any review process.
However, this convenience comes at the cost of reduced transparency regarding how the system actually operates. If you are a perfectionist like me, you may end up spending hours tweaking prompts and fixing code to get it to work as expected—or it may not work at all.
Like me, my free tokens ran out, and some applications remained unresolved. iOS development can be particularly challenging for beginners, as it requires a Mac, Apple’s Xcode software, an Apple developer account (which costs $99 annually), and manual building and testing. Android is much simpler; a one-time payment of $25 to Google allows you to use Expo, Replit, or the app directly, with just a few clicks to publish in a few hours.
Tools Supporting Vibe Coding
No-code tools like Webflow and Notion are becoming increasingly popular. They allow developers to build software through visual interfaces rather than code, suitable for websites, small CRM systems, and internal dashboards, but they restrict you to the frameworks supported by the platform. Technically, you are building software, but only within predefined templates.
In traditional programming, you must understand every line of code you write. Developers need to write each line of code in languages like JavaScript, Python, PHP, or C++, build logic themselves, and control the entire system’s structure. You are also responsible for debugging, performance optimization, and security. Vibe coding, however, only requires text or chat interaction.
Differences Between Vibe Coding, No-Code Programming, and Traditional Programming
With vibe coding, you only need to focus on the results without worrying about the implementation process. You don’t need to write code or drag components; simply describe your needs in natural language, and the AI will automatically generate the framework, interface, and behavior.
Here’s an example of a website I built using Replit with just a few prompts:

As a developer, using vibe coding to generate prototypes can replace some repetitive tasks. Beginners can use it to create things they would never attempt with traditional programming, such as recipe organizers, to-do lists, microblogs, budgeting tools, or basic note-taking applications.
However, developing browser extensions still requires navigating browser settings and loading, so even if AI tools generate all the code, those without a technical background will need expert guidance.
Dhar noted that the real limitation lies not in what AI can generate, but in what humans can actually review.
He suggests keeping vibe coding projects within a “small and controllable” scope so that experienced personnel can review every decision before release.
What Can You Build with Vibe Coding?
Once you grasp the basics, AI can help solve some of the challenges. However, not all expected outcomes can be achieved. I spent several hours trying to get a particularly small program to run in Gemini Canvas, but I could never get it to run as an HTML file.
Language models can generate code like chatbots, but this is manageable in small, hobby projects. However, applications that handle user data, require strict security controls, or support many users need much stricter measures.
Thus, vibe coding is best suited for prototype development, temporary projects, personal tools, and experiments. Since beginners often do not understand the generated logic, errors and security issues may be difficult to detect. Some projects can become hard to maintain because AI mixes different design patterns or generates technically correct but hard-to-read code.
Conclusion
With vibe coding, those who previously could not program can now build simple applications. Developers who used to spend hours writing lines of code can now save time by simply describing their needs. For a while, low-code tools showcased what it would be like to build software with minimal code, but soon AI emerged and said, “Wait and see,” and low-code quickly faded away.
Programming has always been viewed as an elite skill, and AI is reshaping it, just as it is reshaping many other professions. However, skilled developers need not worry about unemployment, as they can identify problems and correct AI errors.
“Perhaps we won’t need as many programmers to accomplish the same amount of work, but it still requires a lot of skill and experience to evaluate everything you create,” Dhar added. “AI… will never replace humans because accountability must exist.”
Overall, everyone can now more easily try building something new. Even without a technical background, this is a significant change.
Let’s embrace this new transformation together.
Comments
Discussion is powered by Giscus (GitHub Discussions). Add
repo,repoID,category, andcategoryIDunder[params.comments.giscus]inhugo.tomlusing the values from the Giscus setup tool.