最近、AIセミナーを視聴すると、Vibe Coding という言葉がよく紹介されています。Vibe Coding は一体なんでしょうか。
AI による概要
“Vibe coding” is a recent term for using large language models (LLMs) to generate software by providing natural language instructions, with minimal review of the resulting code
. It is a high-speed, intuitive approach focused on generating quick prototypes rather than on the code’s quality, security, or maintainability.
Origin and core concept
The term was coined in February 2025 by Andrej Karpathy, co-founder of OpenAI and former AI leader at Tesla. He described it as “fully giv[ing] in to the vibes, embrac[ing] exponentials, and forget[ting] that the code even exists”. The underlying idea stems from Karpathy’s earlier assertion that “the hottest new programming language is English,” meaning advanced LLMs can understand and produce code without the need for a developer to know specific language syntax.
How it works
The process shifts the developer’s role from manual coding to a more conversational, directorial one.
Describe the goal: The user gives a high-level prompt in plain language, such as “Create a Python function that reads a CSV file”.
AI generates code: An AI assistant like Cursor, Copilot, or Claude generates the code based on the prompt.
Execute and observe: The user runs the generated code to see if it works.
Refine iteratively: If there’s an error, the user copies the error message or provides feedback to the AI. The AI then suggests adjustments until the code works.
Relation to Anaconda and the data science environment
The Anaconda company recognizes the trend of AI-assisted coding, citing its potential to attract a new generation of developers and lower the barrier to entry.
However, Anaconda’s VP of Engineering, Ken Thompson, has noted that some experienced developers remain cautious due to the “nondeterministic nature of AI,” which can lead to unpredictable code output and increased risk.
In the data science context, vibe coding can be used for rapid tasks like scripting or data analysis, which are common within Anaconda environments.
For example, a user could vibe code a script using the Pandas library to read and process a CSV file, a typical task for data scientists.
Pros and cons
While vibe coding offers significant speed advantages, it also carries notable risks.
Pros:
Rapid prototyping: Allows for quickly creating a minimum viable product (MVP) or testing new ideas.
Lower barrier to entry: Enables non-programmers and beginners to build functional software without deep technical knowledge.
Increased productivity: Experienced developers can accelerate their workflow by using AI for boilerplate or repetitive code.
Cons:
Security risks: Speed often comes at the cost of security. AI-generated code, if not properly reviewed, can introduce vulnerabilities into a codebase.
Technical debt: By accepting code without understanding it, developers can create unmaintainable, fragile, and complex codebases that become difficult to debug and manage later.
Accountability issues: Developers who don’t fully understand the code they ship are less able to fix it when it breaks.
Accuracy issues: As Anaconda’s Ken Thompson noted, the nondeterministic output of LLMs can be a high-risk factor for stable codebases.
なんてことはない、自分が普段やっていることでした。自分はプログラミングはできませんが、AIにやりたいことを伝えて、それを実行してくれるPythonスクリプトを書いてもらって、Juypter Notebookの環境で実行しています。エラーが出たらエラーメッセージを貼り付けて、スクリプトを改善してもらいます。エラーは出ないけど動かない場合には、状況を説明して改善策を考えてもらっています。その会話を繰り返すうちに、最終的にはやりたい業務を実行してくれるPYTHONコードが出来上がるというわけです。スクリプトなので、同じデータセットに対しては同じことを再現性よく実行してくれるのがありがたいです。