Transcription
Hello, and welcome. My name is Takahiro Ano. Today, I will be speaking for the second time in this "Vibe Coding" introductory series. This time, I want to talk about what to learn and in what order.
If there are any of you who haven't seen the first "Vibe Coding" introduction, I highly recommend you watch it. This video is for people who don't know much about programming but use computers and smartphones normally. I will explain what you need to do to be able to do "Vibe Coding."
Today, I think it's good to have an overall roadmap. So, from the point of not having touched programming much, to being able to have your own app used by everyone, there are many things you actually need. However, by stripping away unnecessary things for "Vibe Coding" in 2026, and stripping them away, and stripping them away, I've come up with a sequence that I think is good. I want to share that with you.
Before I tell you what you need to know at a minimum in this order, fundamentally, this is a "Vibe Coding Super Introductory Course," but I'm going to shake the foundations. After all, most of you have computers or smartphones in front of you, and many of you can easily access AI like ChatGPT. Given that, I think it's good for you to first recognize that you essentially have everything you need right in front of you.
This has been true even before "Vibe Coding" began. There are those who say, "After I've learned everything I need, I'll try to create something new. I'll actually do it." And then there are those who say, "No, I want to do this right now." But if the desire to do it is the only thing that precedes, you can't actually materialize it. From there, you might think, "I need this, so I'll learn it." So, there are those who "do" and those who "learn first."
What I strongly recommend in this "Vibe Coding" era is to become someone who "does first." And this order, this order, I think is incredibly important. By actually doing it, you identify what you need to know, and then you learn about what you need to know. I believe this flow is extremely important.
The general flow is usually to learn first and then do something. However, when you try to learn, there are an immense number of things to learn within the world of computers. There are so many fields. Learning all of them before doing anything would be a very difficult path.
However, fortunately, now, when you try to do something and get stuck, you can ask AI about it. If you don't have the knowledge, there are many things you can't do. But if you ask AI about what you can't do, it will tell you things like, "This is what it means," or "You should learn this." So, the difficulty of "trying something and then identifying what you need to know" has decreased significantly. I want to convey this as the first major principle.
In the past, those who were in the "try it yourself" faction would get stuck. It was incredibly difficult to identify what they were stuck on and what they needed to do to solve it. But now, it has become possible to do that.
This is a bit of a digression, but I've observed about three characteristics of people around me who are very good at programming or have high technical skills. This is just my observation, with no basis whatsoever, but there are about three types of people.
First are those who simply have something they want to create. "I want to make this app. I want to make this software." If they have that strong desire, they will learn what is absolutely necessary to do it. So, they easily fall into the pattern of "try it yourself, identify what you need to know, learn what you don't know." There are imbalances between what they know and what they don't know. They might think, "I know this, but I don't know that." But they are constantly producing output, so learning from that is also fast. I call these people the "initiators." People who have something they want to create are strong from the start.
Second are people who like competitions. In programming, there are programming contests and competitive programming. In data science, there are things called Kaggle, where people compete to solve the same problem and the person with the best score wins. I've seen many people who become very strong in these programming contests and competitive programming circles. People who like competitions are often very strong.
Third are people who are deeply involved in community activities. There are communities for each technology, and communities for each industry. There are actually many communities related to technology, and universities are also like that. People in university departments, and so on. There are various communities, and I've seen people who learn about technology more and more through connections within these communities.
So, these "initiators," "competitive programmers," and "community participants" seem to be people who are often strong with computers, based on my 35 years of observation. If you are watching this video, you probably don't like competitions, nor are you part of a technical community. Therefore, this path is the most recommended for you. It's about first desiring what you want to create, and then starting from what is necessary to create it.
If you can do this, you might not even need to watch the rest of the videos. This is a pretty important point. Actually try it, get stuck, can't solve the problem, and then research what you need to know. If you can do this, you'll be fine. That's it. The end. The end.
However, if that were the case, this video would be meaningless, so I will explain properly. Even so, it's good to have an overall roadmap. I think there's a path like this. Normally, it's a long journey to create and release your own application. But if you can do these seven items, you can probably create, release, and have it used by people. Here are the seven items. I will explain them in order. I think it's good to go through these steps. I don't know how long this course will continue, but I plan to follow this order.
First, what is it? It's LLMs. You all use ChatGPT, Anthropic's Claude, or Google's Gemini. These LLMs, you've probably used them before. Actually, with these LLMs, if you ask them to create a page or something that works, you can actually do quite a lot with just this. So, I think it's good to first experience asking LLMs, getting answers, and creating things step by step.
Actually, you can create things with the AI you have at hand, and you can even release them. So, there's quite a lot you can do with just this.
From there, if you want to advance a bit more, the next thing to do is coding agents. It's about being able to use coding agents, which are actually used in "Vibe Coding." Here, the hurdle will jump up a bit. What are coding agents? They are essentially LLMs that have been slightly modified. These three companies each offer their own coding agents. For example, OpenAI's ChatGPT offers an agent called "Codex." Claude offers "Claude Code." And Gemini offers "Gemini CLI." You can use any of these three. As of March 2026, this is my preference. You can use any of them, but I think Claude Code is the most complete. Therefore, the videos I will release in the future on this YouTube channel will be about Claude Code.
Third, the third item is IDEs. IDE stands for Integrated Development Environment. To put it simply, when you create documents, you use Word or Google Docs, right? Those are called editors. An IDE is, in a nutshell, an editor for writing code. This isn't just about writing text in a file. It has features that allow you to interact with your computer, or plugins that make your code easier to read. It's designed to be quite user-friendly for humans to do coding. And recently, coding agents are being integrated into these IDEs. So, these two, the second and third items, are closely related. But it's good to be able to use something called an IDE. For example, I often use something called VS Code. Others include Cursor, which is also called Cursor. And the one on the far right is AntiGravity, which is also made by Google.
By being able to use these by 2030, you'll be able to have coding agents working diligently on your computer. While you can create quite a lot with just the first item, with the second and third items, it becomes easier to create larger or more complex things.
Fourth, I think this will be a very important item. It's version control. It's called version control. For example, when you're working with Word, you might have "Document Version 1," "Document Version 2," and so on. When multiple people edit it, to keep track of which version is which after editing, you might save it as "Document_final.docx" or something similar. And when you need to edit the latest version again, you might end up with "latest version of the latest version" or "true latest version." These are roughly what version control is.
Version control is extremely important in programming because there are many files, and you make small changes to many of them. Also, even if you're developing alone, there are times when you want to run multiple coding agents like Claude Code or Codex in parallel. So, you might be creating feature A, creating feature B, and working on feature C locally. When you're doing these in parallel, the files can get messy. Therefore, it's better to incorporate version control early on. It's not just "better," it's a necessary step.
For example, it's very integrated with Claude Code. There's also a web version of Claude Code. The web version of Claude Code is already linked with GitHub, which is a version control tool. Once you understand this, you'll be able to gradually edit files and add features in detail. This greatly expands what you can create. With just the second and third items, the number of files you can manage and the number of features you can manage are limited. But the moment you add the fourth item, what you can do expands dramatically. So, although it's the fourth item, it's good to learn version control.
Fifth, the fifth item is databases. You've probably heard the name. What is it? Applications are divided into the code part of the software and the data part that is put into it. So, no matter how much source code you write, the data running on it can be completely different. For example, when you play games on PlayStation or Switch, you download game data. Then you start the game and play. You save your progress, right? And there's the save data from when you played. This save data and the application data are different things. If a game doesn't allow saving, it's frustrating because no matter how far you progress, you can't save it. There are games like that, but even with Tetris, you probably want to record your high score, so there's probably something like save data. So, what a database does, in a nutshell, is to allow your application, if it's a game, to save the game. In the programming world, this is called data persistence. It's about making data persistent even after the application is closed, rather than data that is lost when the application is closed.
There are many types of databases. For those who have never programmed as of March 2026, if I were to give you one keyword, it would be Supabase. Supabase is a standard database that is made easier to use. And it's something you can reuse in later stages. So, Supabase is recommended for now.
Sixth, the sixth item is security. With "Vibe Coding," when you create an app, data leaks can happen. So, even for beginners, there are points to be careful about. Regarding security, you absolutely must be aware of these points before releasing anything. I have a feeling that a future where "Vibe Coding" security is lax and things become problematic is quite possible. I believe that the security of apps created with "Vibe Coding" might become a social issue in the future. So, it's good to be aware of security aspects.
For example, even when using coding agents, you are exposed to various security risks. If you're just running LLMs on a web browser, in most cases, it's mostly okay. This is because the AI companies are thinking about it quite a bit. However, coding agents are things you can run on your own computer, and the AI agents can execute somewhat dangerous commands. The security risks are completely different between the world of item 1 and the world of items 2 and beyond. So, there are several things to be careful about, and you need to be aware of them.
Finally, it says "deploy." Deploy might be an unfamiliar word. In Japanese, it means "to deploy." In the world of items 2 through 6, you can run things on your own computer. But you want to run them not just on your own computer, but also on other people's computers, right? On people's smartphones. When you want to do that, you deploy your created application on a cloud server. You deploy it. You can make it so that when you type a URL, it connects there. That's deployment.
For deployment, there are things called Vercel, and also Supabase, which I mentioned earlier for databases. These are relatively easy to use without much background knowledge. And current coding agents know these quite well, so it's likely to be accurate. Therefore, these are recommended for deployment.
Once you reach this point, you will be able to have your created application used by everyone.
So, how was it? You might be surprised by the large number of difficult or unfamiliar words that appeared all at once. However, if you do these seven things, you can reach the point of having your application used by everyone. So, I think it's good to cover these seven items.
For those of you watching this YouTube video, there are probably many who are knowledgeable. These are the seven items that I thought were essential. If you have any thoughts like, "This is also necessary," or "This is not necessary," please leave a comment. I would like to reflect them in the third and fourth videos. So, please share any ideas you have.
That's all for today's second session, "What to learn and in what order." We will continue with the "Vibe Coding Super Introductory Course," so please subscribe to the channel and give it a thumbs up. Thank you.
[Music]
[Music]
[Music]