This lesson introduces learners to vibe coding — a term coined by AI researcher Andrej Karpathy in February 2025 — which describes the practice of building software by describing what you want in plain, natural language and letting an AI large language model (LLM) generate the actual code. Learners will understand the definition, origin, and philosophy behind vibe coding, how it differs from traditional programming and adjacent practices like pair programming and code autocompletion, and why it represents a fundamental shift in who can create software. Relatable analogies are used throughout to make the concept accessible to complete beginners with no prior coding experience.

{"scenes":[{"slideOrder":0,"text":"Welcome to today's lesson on one of the most exciting shifts happening in the world of technology right now. Imagine you could build software — a website, an app, a tool — simply by describing what you want in plain English, without ever writing a single line of code yourself. That idea might sound futuristic, but it's already here, and it has a name: vibe coding. In this lesson, you're going to learn exactly what vibe coding is, where the term came from, and why it matters for anyone with an idea they want to bring to life. You'll explore how it differs from traditional programming and other practices you may have heard of, and you'll walk away understanding a fundamental shift in who gets to call themselves a software builder. No coding experience required — just bring your curiosity."},{"slideOrder":1,"text":"So what exactly is vibe coding? Think about this: how many times have you wished you could just tell a computer what to build instead of learning a programming language first? That wish is now a reality. Vibe coding is the practice of building software by describing what you want in everyday, natural language and letting an AI model write the actual code for you. The term was coined in February 2025 by Andrej Karpathy, a renowned AI researcher and former head of AI at Tesla. He described his experience by saying he just sees things, says things, runs things, and copy-pastes things — and it mostly works. He fully gave in to the vibes, hence the name. Think of it like ordering at a restaurant: you don't need to know how to cook the dish. You describe what you're in the mood for, taste it when it arrives, and ask for adjustments. You're the director setting the vision, and the AI is the developer translating your descriptions into functioning code."},{"slideOrder":2,"text":"To really understand your role as a vibe coder, picture yourself as a movie director. You don't personally act out every scene, operate the boom mic, or edit every frame. But you do have a clear vision of the story you want to tell. You communicate that vision to your team, watch the dailies, and give feedback — make this scene more tense, or the pacing here is too slow. That's exactly what you do in vibe coding. Your primary skills are communication, clear thinking, and the ability to evaluate whether the output matches your intent. The workflow is conversational and iterative: you describe a feature, the AI generates code, you test it, you refine your request, and the AI adjusts. You keep repeating until the result feels right. Just as a director benefits from understanding cinematography basics, you'll benefit from some awareness of how software works — but you never need to write code yourself. The skill shifts from knowing how to code to knowing how to communicate what you want."},{"slideOrder":3,"text":"Now let's draw a clear line between vibe coding and traditional programming, because they represent genuinely different paradigms. In traditional programming, you manually write, debug, and maintain every line of code using specific languages like Python or JavaScript. You are the coder — you must understand syntax, data structures, algorithms, and debugging at a deep level. It's like building a house brick by brick with your own hands. Vibe coding flips this entirely. You become the describer and evaluator while the AI becomes the coder. It's like describing your dream home to an architect and construction crew — three bedrooms, open kitchen, lots of natural light — then reviewing blueprints and walk-throughs, giving feedback until the design is right. The bottleneck shifts from can I write this code to can I clearly describe what I want. But here's an important caveat: traditional programming skills remain highly valuable, especially for complex, mission-critical systems where every line must be understood and trusted. This isn't about one being better — it's about having different tools for different situations."},{"slideOrder":4,"text":"You might be wondering how vibe coding differs from things like pair programming or code autocompletion tools you may have heard about. Let's untangle that. In pair programming, two human developers work together — one writes code while the other reviews and strategizes. Both must know how to code. Vibe coding feels collaborative like that, but critically, you don't need to know how to code at all. Now consider autocompletion: it's like your phone's predictive text. You start typing a message and it guesses the next word, but you're still composing the message. Vibe coding is like telling your phone, send a friendly message to Mom wishing her happy birthday and mentioning I'll visit next weekend — and the phone writes the entire message for you. Think of it as a spectrum. On one end, you have manual coding where the human does everything. Then autocompletion, where AI assists mid-sentence. Then collaborative AI pair programming. And finally, vibe coding, where you direct and the AI executes. These aren't competing concepts — they're points on a continuum of human-AI collaboration."},{"slideOrder":5,"text":"Let's zoom out and ask a bigger question: what does it mean for the world when anyone with a clear idea can build software? Vibe coding dramatically lowers the barrier to entry for software creation. A teacher could build a custom classroom app. A small business owner could create an inventory tracker. A nonprofit could prototype a donor portal — all without hiring a development team or learning to code. It also accelerates prototyping: ideas that once took weeks can be explored in hours or even minutes. But you need to be honest about the risks too. Vibe coding is a bit like using a GPS to navigate a foreign city — incredibly empowering, but if it sends you down a one-way street the wrong way, you need enough situational awareness to recognize the problem. Generated code can contain security vulnerabilities, performance issues, or bugs you can't diagnose. Karpathy himself acknowledged this, noting vibe coding works well when the code is disposable or stakes are low, but cautioned against using it blindly for critical systems. The future likely involves a blend of both approaches."},{"slideOrder":6,"text":"Let's bring it all together. Vibe coding means describing software in natural language and letting AI generate the code — a term coined by Andrej Karpathy in February 2025. Your role as a vibe coder is like a movie director: you set the vision, communicate clearly, evaluate results, and iterate without needing to perform the technical craft yourself. You now understand how it differs from traditional programming where you write all the code, from pair programming where both partners must code, and from autocompletion where AI merely finishes code you've already started. Vibe coding sits at the human-directed, AI-executed end of a collaboration spectrum, representing a new paradigm for who can build software. While powerful and democratizing, it works best when paired with critical thinking, clear communication, and awareness of its limitations. Here's your takeaway: you don't need to be a programmer to be a builder anymore, but you do need to be a clear thinker and a great communicator. Vibe coding rewards the people who can describe what they want and recognize when they've gotten it."}]}