In this episode of #TechTalk, Amit and Rinat delve into 'Vibe Coding,' an approach in AI where coding is facilitated through conversational commands rather than traditional programming languages. We discuss how Vibe Coding simplifies the process by allowing users to instruct AI in plain English to generate code, enabling non-programmers and small business owners to create prototypes and simple applications effortlessly. We highlight the potential of Vibe Coding in rapid prototyping while acknowledging its current limitations in creating production-ready code.
Hello, and welcome to Tech Talk. In our podcast, we talk about tech and everything related to tech. Today's topic is gonna be vibe coding. That's one of the latest advancements in AI. We've recently been using it and exploring all the things you can do with it. People are also really excited about all the possibilities. So we thought, why don't we let you guys know so we can all vibe together and potentially come up with newer ideas and not just new ideas, but implement new ideas and make the world a better place. Amit, why don't you start us off with telling us what is Vibe coding?
Amit:Thanks again for that introduction. I think it's not a feature of AI, it's just the way you use AI. The main thing that we want to focus with Vibe coding is why it has now suddenly become so popular. As people know, coding means writing a piece of code to help machines understand what we want it to do.
Amit:So, it's just a way to communicate with the machines to tell them, when you get this input, do this and gimme this output. And if you receive this input do this and gimme that output. So that's just basically the way we used to code. In order for us to communicate with the machines, we used to write in different programming languages like C, C++, C Sharp, Python, Java, JavaScript.
Amit:So there are different ways to tell the machines what to do using these programming languages. And some programming languages were more for the web browsers. Some programming languages were more for the desktop applications, some for the mobile applications, et cetera.
Amit:And then we have AI. With AI, what has happened is it's easy to code. The reason it's easy to code is now you can talk in English language instead of Python or C++. You're now talking in English, so you're now communicating with the computer again like you were doing with Python, but now you're talking in English and you're telling AI, okay, I want to do this, I want to build a website like Wikipedia. You don't write a single line of code and then you're just going with the flow. So whatever the AI gives you as an output, you just go with it and say, okay, do this instead of doing this, change this instead of this, et cetera. And that is what Vibe coding is all about. It's going with the flow, having fun, like you enjoy music, so you enjoy coding sessions, and that's why it's called Vibe Coding.
Amit:The person who coined this term is Andrej Karpathy. He's an ex-Tesla person. He's very famous in the AI community, very active on Twitter. Please feel free to check him out. He has some amazing videos on YouTube where he's actually doing vibe coding. Now, when you do vibe coding, you are not actually writing code. You're telling AI to write code on your behalf. So we are still not at a stage where machines can understand English language.
Amit:So we still have to talk to machines using C, C++, but now we are not writing C, C++. We are telling AI to write C, C++ or Python. And we are telling AI, okay, I want to do this. Say Rinat, you want to create a workflow management tool. So you have a workflow, you know how the workflow works, what are the different states, what are the different input parameters, and how it should look.
Amit:So now you define everything in English language, and then you ask AI to build it. It'll give you an output. And you try to run the output. When you run the output, you may not like it, so you want to tweak it, change it, modify it, and that is what Vibe coding sessions are all about.
Amit:So you get an output from AI, you try it, it doesn't look nice, you modify it, you ask AI to change it again. You talk to it in English, it'll give you a better code, fix it, and so on, so on, till you get a working prototype. Now I use the word prototype very cautiously here because you're not going to get a production ready code immediately.
Amit:And production ready code means something that is accessible to the whole world from a web browser. So for that, you need to follow certain more steps for which you need to know a bit more about how to do code deployments, how to run it in production, et cetera. But to get to a prototype has now become very easy. And that's what Vibe Coding is all about.
Rinat:You've mentioned the word enjoy and coding session in the same sentence, and I think that's more of a revolution that came with vibe coding. It took me years and years to really understand programming languages and how they work.
Rinat:Even now I wouldn't say I'm an expert on any programming languages. I know bits and pieces here and there. Programming languages, learning is not easy and it comes with so many details that you need. Hours and hours of troubleshooting and then finding out there is a space or a comma missing, and then copying from other people's code snippets and then pasting it in your massive code base and then realize that for some reason it doesn't work, even though the unit testing was fine.
Rinat:All of these things are excruciatingly painful and they didn't go away completely. But there's always a barrier to entry from idea to prototype. And that is one of the things I feel that's holding back progress in a major way. Because if all of these ideas were, some of them good ideas, some of them bad ideas, but if it was easy and quick to find out whether they're good or bad, that would make a big difference to our lives.
Rinat:And human advancement will happen even more exponentially than it is. So how can we do that? The way to do that is that difference between computer's interaction language, and the way we interact. The computing started with binary numbers, and then you have machine code, and then on top of that you have more basic languages like C, I suppose. And then you have another layer on top of that which are another different set of languages like Python and, there are layers and layers on top of each other with different kind of languages. And each of these languages it might be controversial, but each of these languages, each of these layers are a little bit easier than the previous layer.
Rinat:It's a little bit closer to human understanding than the previous layer. And that's why people usually a lot of the time say that Python is probably the first language you should learn because it's easier to learn and et cetera, et cetera. Now I feel like vibe coding, as you mentioned, this is the ultimate layer. The one thing that could really be the bridge between human language and computer language, because an AI, who knows both languages being a large language model, and being inside a computer.
Rinat:The thing that was missing was it being an agent, which can create files and do certain action and we've covered that in our one of the recent episodes as well. And that's where everything came together and created interfaces or SDKs where there is AI integration, with the ability to create files and write codes. So altogether now as a user, you can just tell it what your idea is and it will start with something. And a lot of the time starting is the hardest part. And then you can tweak it; by talking to it in English. And that I think, is revolutionary because you can just talk to write applications and software programs.
Amit:It is revolutionary. When you think about it people who are programmers are just a few percentage of the whole global population. And people who are non-programmers are the majority of the people. And that's why tech people, they get a lot of money because they can talk to machines and they know how to get things working.
Amit:With Vibe coding, the main thing is that you can get a prototype. Say for example, you want to build a Burj Al Khalifa, the tallest building in the world. You are a mechanical engineer, so you would appreciate this. So for building something like that, you need to know, okay, what is the ground area I need, how much deeper do I need to dig in order to have the foundations? Once I have the foundations, what kinda materials I want to use, which are wind resistance, which are water resistance, which can withstand earthquakes - once I have the basic structure. Now, how do I get all the wiring? How do I get all the plumbing? How do I get all the air conditioning? How do I get the heating? How do I design the fire exits? How do I do this? How do I do that? So building something like constructing a building is not just about just putting the structure. It's about this whole integration. And same with software. So when we talk about software, we want to build something like a website, or a mobile application, but just building your mobile application is just the part that you see. But there is a lot of engineering behind.
Amit:If a hundred thousand people now access my website, is my website performant enough? Will it actually crash? If 20 people are now placing an order and now the 21st order comes will it actually get all the orders and make sure that my inventory is not empty, especially on a Black Friday sale? That is engineering.
Amit:And then imagine you have to keep tracking all the Facebook likes in the world. For every single like that you do on Instagram, TikTok, or Facebook, you have to keep a track of it, and that's just for your profile. Now, imagine you do it for a billion profiles, so building a prototype, liking something for yourself is easy.
Amit:But making sure that this system works now for a billion people. That is engineering. And I think that requires experience and that won't come with vibe coding. For that, you actually need to build software, work with people who understand all these concepts. Like how do you scale Netflix? If I want to use a video that is streaming on my television in 4K, if I try to stream the same thing on my mobile phone, it'll burn through my data. So how do I get the same quality but with a lower resolution? And these are all engineering things. This we are not trying to solve through vibe coding. What we are trying to see is, okay, can we build a prototype of Netflix? That's it.
Rinat:Absolutely. That's actually a very good distinction you just made. And that's one of the reasons why we have two different kind of career paths within IT as well. Not two, there are many, but these two are distinct in that one of them is a software programmer and one of them is a software engineer and this might sound similar, but they have very distinct set of responsibilities. A software programmer is actually writing the code to build your application, whether it's mobile or desktop, whatever. But a software engineer is making sure that, that application is implemented and can be reached by millions of users and still not break and also be secure and all of those things.
Rinat:You're right to kind of, um bringing us back down to Earth and say that yeah, it's not everything. You can't be a whole company just yet, but you can still be a very crucial part, that ideation part of that process and that's what Vibe Coding does.
Amit:A lot of people are familiar with chat GPT. The problem with chat GPT is you write a code, then you have to copy it to a file. And then you have to run the file and to make sure that the code is working. So firstly you need to figure out, okay, how do I create the file? Where do I create it? How do I run the file? All those things, right? So you ask Chat GPT to gimme a code, it gives you the code, but now you have to figure out all the rest of the stuff. So that's why you have an integrated development environment, an IDE. It's like an application like WhatsApp. But instead of on your phone it's on your computer. So with the IDE on installed on your computer, now you create a folder on say, windows or Mac OS. And then you open the folder in the IDE. Okay. The most popular IDE at the moment is Cursor, but there is Windsurf, which OpenAI has recently bought. And, uh, gold standard VS Code. VS Code is actually an open source IDE from Microsoft and Cursor and Windsurf are both forks of VS code. So they have both actually used the code from VS code and built a layer on top of it to make it more saleable or more user friendly. So now you have the integrated development environment and in that you want to talk to say the open AI model. Within the IDE, you'll start talking to it. Okay, that is just chatting. It's still not creating any file. Then you go into the agent mode. So they have different modes. So you go in the agent mode. In the agent mode, you are saying, okay I want to create a TikTok style XK CD app.
Amit:This is something that I've created. So I tell, okay, this is XKCD comic URL. This is the API. This is how it follows the structure. I want you to create a TikTok style app using this XK CD comics. So I just scroll it up and down and I see random comics. Okay? That's what I've defined. Agent first reads through the prompt and it understands what I've asked.
Amit:And then it starts doing things. So now it's doing things on your behalf. Sometimes it can ask permission, but there is a mode in cursor where you say, don't ask permission, but that's dangerous because it can delete files. So normally you say, okay, ask permission before you do anything. So if you understand coding a bit, you say, okay, accept or reject. If you don't understand coding, you just say accept. You don't care. You just say accept, and you accept. So it creates a file, it writes some code. Then you say, okay, now I want to run this code. Tell me how.
Amit:It'll give you some instructions. Follow those instructions, run the code, see if it works. If it works, good. So that's the agent mode inside the IDE. Now, the benefit of this is, you don't have to copy paste the code from chat GPT to a file. Inside the IDE, the AI agent is doing everything for you, and you are doing it through a model.
Amit:Now, of course, this is not free. Every time you talk to a model from Open AI, you have to pay for it. Every time you talk to Llama, you don't have to pay for it, but you're paying for the software, you're paying for the agent. So the agent is doing all this task automatically on your behalf. And we have done an episode on Agent very recently. So you can have a listen to that episode, but this is the agent mode inside IDE where you are doing the vibe coding. Now, Rinat, you mentioned one thing that, you can't build a company, but I think you can build a small company.
Amit:Like suppose, you are a barber. You want to create a website for your shop, and it is very simple website where you tell, okay, this is my shop, these are the services I offer, this is the price and this is where I'm located. If you want to contact me on WhatsApp, here is my number. That's it. Simple website. And same for say, yoga teachers or bakers.
Amit:So for them to get a website created from scratch is so difficult because they'll have to pay 500 or 600 or even thousand pounds in UK to get a website functioning. But with this, they can get the website created immediately and they can ask Chat GPT or some other AI tool to create the image also for them. And that way they can launch the website very quickly. And that is the power. Now, small business owners can launch something of their own without a lot of professional help.
Rinat:One of the leap forward from chat GPT and LLMs that we've been enjoying for a couple of years, is the fact that I don't have to copy the code that Chat GPT generated and then ask it to generate the next set of code. And then I have five different sections and I don't have to combine them together to make sure that they work.
Rinat:And then I put all of them together and then run it and it doesn't run. And then I have to troubleshoot for another God knows how long, for a very small thing and because I didn't write it, I have to then go through line by line a lot more carefully. To make sure that all of the different copy pastes, maybe from not just chat GPT, from Claude, from Gemini, maybe I've combined all of these things to create a more sizable software program.
Rinat:With that copy pasting and the generation of smaller snippets of code, that was where we were, but now with vibe coding, one of the leap forward is that it generates the whole thing together in one platform, in one go. And with the power that it has to act as an agent, it can create files that are necessary. So for example we are all familiar with websites and a lot of us are probably familiar with the different files you need. You have JavaScript in a different file. You have CSS and you have many other contents as well. And all of these things are created together to bring you a sort of a coherent solution of a complete website, which has a theme, for example, as you said, yoga teacher or a barber. So all of these things fits together to create that overall complete project. And that's what the biggest advancement that we get from vibe coding. And one of the things I want to clarify and I don't want our audience to get the wrong idea that it's just about vibing and just going with the flow.
Rinat:It's not as simple as that. There is still a little bit of understanding required in terms of how everything works. You can have the whole code package generated, but then if you don't know how to upload it into a hosting site, and then direct it to a domain, then the website won't be activated.
Rinat:A big part of it is done through English and that doesn't mean that you could just talk to it as if you are vibing with a friend, but you still have to be a little bit specific. So it still have some sort of reference to go by.
Rinat:You couldn't just turn on the microphone or start typing or speaking and say that, create me a website. But if you said that create me a website, I'm a yoga teacher and I wanna manage the calendar and the booking system. If you gave it these details in English,
Rinat:Then it will have all of those reference information to go by to create you that coherent solution. That's why I'm so excited about it. I haven't actually created an application yet, but I've just been brainstorming all of these ideas that I had, and I can't decide which one to start with.
Amit:Rinat, you touched a very important point, and that is about being specific, in any system, if you don't add constraints, the AI agent or anything can just run loose, so you need to have constraints. Okay, I need a website specific to this domain. Maybe you can even specify the programming language.
Amit:If you think you know that language, you can tell, okay, gimme the code in Python. Don't gimme the code in C++. So you can be very specific. You can say that, okay, I want the documentation as well. In case you want to refer to it in the future, you don't have to remember what you actually asked it to do.
Amit:The other thing is, when you're doing the coding, you have to think about the security aspects as well. 'Cause a lot of times you want to build something, say you want to pitch to an investor, so you build a prototype, fine, you get the money and you start building it. But the vibe coding itself, if you try to launch it into production, sometimes it might be unsecured.
Amit:So you might actually accidentally leak information. You might actually make your website susceptible to attacks from rogue agents. So you have to be very careful about all these things because if you don't specify it, it'll not do it. So AI is limited by your thoughts. So if you don't, if your thoughts are limited, it's not AI's fault.
Rinat:That's a very good point. And also I would like to add that you have to specify even to another human being, if you were going to get them to do something for you and especially collaborating with different departments, getting other teams to view the solution from your perspective and why something needs to be done in a certain way or not. With AI, you have the benefit of specifying your perspective. And then because AI is familiar with all different perspectives a large knowledge base, et cetera, then it can relate to what you are saying.
Rinat:And now with vibe coding, it can turn it into an action as well. So I feel like we are going back and forth in terms of whether, what the limitations are and what the possibilities are. And the reason we are doing that, I suppose, is because there are both.
Rinat:There are limitation and there are a lot of possibilities. But it's important to understand where it sits so you can utilise it best. For example, if you had a really big idea of a, like solving a complex problem, maybe start with just building an app. Because if you have limited IT knowledge you can still start vibe coding right now, install a IDE in your in your desktop and set it all up and then ask it. But first start with something very simple, and that's what I would urge our audience, that why don't you just build a very simple mobile app and ask it and it will output you all the codes and all the files that you would require to publish it.
Rinat:And then, if you didn't know what to do next, how to publish it next, then ask chat GPT. Nowadays with AI and the insane amount of knowledge base, there is nothing outside of your reach. And it just makes me think as well, as you mentioned that there, there are a lot of things that platform engineers do that vibe coding doesn't do.
Rinat:But you could be that platform engineer because you could ask another AI or the same AI that, how to do that. You've built an app, you've built a software. How do I put it all together? How do I publish it? All of that knowledge is also there. So yeah, exciting times indeed.
Amit:Exciting times indeed and I would encourage people to go ahead and build things because there's a lot of ideas out there, but people are limited by the tools they have. Now we are in a time where you are not limited by a Tool. So it's important to go out and explore whatever is in your head.
Amit:If you think of a game which you think is very interesting, go try it out. Build it. And I think in the process of building, you'll understand so many things like how to deploy a software, how do you launch a mobile application, how do I do it for Google Play Store or an app store, on Apple. So there are different nuances to it, and just in the process of building, you learn so much.
Amit:So it's a great learning exercise as well as thinking about different ideas and plus it doesn't have to be a website. I've used these tools for many things. I had a transcript. I wanted to change the format, so I gave it like, okay, this is my reference. Don't change the content, just change the format and it did the whole thing for me.
Amit:So it doesn't have to be like a website. You can solve any problem that you have using code. So you give it a content and it can just format everything for you. It can maybe do the translation for you. It may not be a hundred percent accurate, but maybe that's what you need.
Amit:So you have a Word document, you want to get it translated, but you don't want to go through Google translation. So you just go through this. You say, okay, convert this whole folder from English to Hindi. And it'll do it for you. So you are, you're not just limited by building applications. You can also do a lot of other things, which I think you need to be creative about because these are AI tools to do things. It's up to you how you use that tool. And the more you use the tool, the more you understand how it works, and that's how you leverage it. So it is important to start learning them, understanding how it works and which models are good for your specific use case, because some models might give you better results over others. I've tried it. I liked Anthropics Claude models and the recently Gemini, they're really good. But in cursor I try to go with auto, so I don't actually specify what model I want to use and I go in the agent mode. And then I create a file with all my specifications, and I say, okay, now reading the specifications, gimme an output. It gives me a draft. I don't modify the code. I just look at it and say, okay, this is not looking right. Can you make it more different? And if I want to make it more different, I give it reference.
Amit:So like a specific website, I take a screenshot, I attach it, and I say, make it look like this and it'll make it look like that. So in a way you are playing with a lot of things. So you are limited by your thoughts, not by the tool. The tool can do a lot, but can you think how to use that tool?
Rinat:That's really good that you mentioned all the different kind of things even, I didn't think about it, but essentially it is an AI agent, which has access to the files in your computer and it has access to AI and LLM model, which can generate any content you wanna generate within a computer digitally and then modify and create within your desktop. You can do it by just telling it. So this is actually a lot more powerful than I was initially thinking, and you can get really creative with it as well. Obviously you didn't mention it, but I'm thinking that if someone who is completely unrelated to IT or IT solutions, but they have to create a PowerPoint slide for their steering committee meeting next week. If they give all the details that what kind of information should there be, it could potentially create a PowerPoint presentation with animation, could it?
Amit:No, that's limited because remember, coding tools are mostly text-based tools. So they'll use images as a reference, but they'll still give you output in text. If you, even if you ask you to create a PPT, it'll give you a PPT format, but it'll have only text in it. It'll not have the fancy formatting that you see.
Amit:In order for you to do that, you might have to go use the co-pilot inside Microsoft or Gemini in Google, and then ask them to create the PPT for you with the fancy images. And I've done that and it's actually quite good. So you tell, okay, I want these slides. For this slide, get me an image and it'll do that for you.
Rinat:This is really creating a whole picture of what each of these individual things are capable of and what are the ways you can be creative in terms of getting what you want from out of these tools. Yeah, it can create any kind of files, but the content in it would be all text based.
Amit:Text-based. Yes. So it could be a Python file, it could be a C file, it could be a word file. As long as you can edit a file and you can add text in it, you can do anything with the text. So the text could be I recently did it. So you normally do the editing for the podcast, and once you do that, you create a transcript, but the transcript was not in the right format.
Amit:So when I actually published it on Captivate, which is the hosting platform that we use for our podcast the transcript was not looking right. So I copy pasted the whole transcript. I said, okay, this is the format Captivate accepts. I want the whole transcript to be converted into that format, keeping the content same.
Amit:And it just did that. And then I copy pasted and everything worked brilliantly. So imagine I have now done text editing in a format without wasting a lot of time.
Rinat:My main thinking process was that someone who is not related to IT could also use that. Maybe they can't use it for a final PowerPoint presentation, but they can still use to do various admin related tasks, which requires text editing and a little bit of intelligence. It's not just, find and replace this particular word for me, but, do this set of things to this word file and change the content in this way or another.
Amit:Exactly.
Rinat:All of these admin related tasks, and there are many, and they are boring a lot of the times, and people still have to do them. These are even another further step forward to doing them quickly.
Amit:And I think, and you mentioned boring tasks, right? And they are very important because there are a lot of boring tasks. Like you type your email constantly, you type your mobile number constantly on websites. Then you have to change the monitor settings. You have to do a lot of things on your computer.
Amit:So normally you can ask it to write a PowerShell script. I'm just talking from a Windows user's perspective. So Mac OS users, please excuse me because I don't have a Mac book with me. I'm a Windows user, so I'll just talk from that perspective, but I can ask cursor or Chat GPT but we will say cursor to create a PowerShell script that can say modify the monitor settings. So if I execute the script, it'll change the monitor settings. So suppose I want to record a podcast or I want to record a video on YouTube, but I don't want all the icons or my desktop to be cluttered.
Amit:But every time I have to go to a setting to hide everything, rather than that, I can create a script. And with that script, the moment I click the button, everything is done, and then I create another script to make it back to normal. So you can do all these small things and this can make your life so much easier. And earlier you had to do it by yourself manually. It saves a few seconds, but that's precious seconds, which you don't want to lose.
Rinat:Yes. And that adds up to your daily tasks. And if everything is ready for you, then you don't have to be productive with those precious seconds, but it takes away pressure from your head so you can just do nothing. And that doing nothing will make you relaxed and maybe make you more productive for that limited time you were gonna be productive anyway, but you would be happier. Am I correct in saying that at the moment it is paid service to be able to vibe code. The IDE itself is not paid, but you have to have paid accounts connected to it.
Amit:So if you download cursor, you can still use Cursor to write code like a normal person, like you do for Visual Studio Code or any other IDE, so coding itself is free. If you want to connect it to Git or GitHub, GitLab, it's all free. The thing that you need to pay for is AI. All the AI features, and that is what you need to pay for.
Amit:So even with Microsoft now or Gemini on Google, you need to pay for the AI features. You can still use Gmail for free, but if you want to use Gemini on top you might need a subscription. For certain use cases, they are giving it for free. But for more advanced use cases where say you are a business user, where you want the security and you want the reliability, that's when you start paying for it. But with IDEs, you have to pay for using all the AI features.
Amit:So another important thing is if you actually understand coding. So a lot of times what happens is you have multiple files and you have to change a piece of code in multiple files, and you have to change like a single function name. So rather than doing it yourself in 10 different places, it's not the right way to do it, first of all. But if you do it that way, you can ask cursor to, okay, these are the 10 files. I want to change the function name of this particular function in all these 10 files, and it'll go and do it for you.
Amit:So I'll give a simple example, but to do that, you need to pay. You can still edit it manually. But you'll not get the AI feature. So in order for you to use that AI feature, you have to pay, and normally it's a $20 subscription. With that $20 you get access to, there are of course rate limits involved. So like for heavy users there is a rate limit. But for like moderate users, normal users, you don't have a rate limit. Rate limit means like fair usage policy. You can't keep using it and abusing the quota that you're allocated. Because what happens is you're using the computational power. So you are using GPU, you are using CPUs you are using all the bandwidth, you're using all the computational traffic.
Amit:And that's not fair. And that's, companies will not become profitable and they will not be able to sustain the business. So they need to charge people sustainably while maintaining the rate limit. So you can see all the limits when you log into cursor and after you've paid for the thing.
Amit:But they give you a trial period, seven days where you can try some of the AI features. And once you try it, trust me, you will. You want to pay for it? I'm currently paying for Cursor and I'm currently paying for Chat GPT. I think these are the two things I am currently paying. The other thing is, we just talked about cursor, like IDE, vibe coding, where we are coding. But you can do vibe with many other things as well. You go to Google, the AI features are already integrated. So you can go to slides and you can ask it to create a slide for you, and then you can just go with it. You don't have to like edit it, you can ask AI to edit it for you, but you don't have to start from scratch.
Amit:You can give it the template and you say, okay, use this template, which my company uses, and then just go with it. I mean there are various ways you can do vibe coding, but we are specifically focused on coding as text input, where you get output as text and it is done through an IDE. So that's what the whole vibe coding is all about.
Rinat:Thank you for explaining that. And I wanna just step back a little bit for our listeners who are trying to understand IDE and how the whole thing fits. IDE itself, when we are mentioning that, that is a desktop software, so we have to understand what each of these things are.
Rinat:So when a software programmer usually writes codes, they don't usually just right click on desktop, open a text file, and then start coding. Because for a large complex project, you have to maintain and keep track of all of these different files where all of these different parts of code are written. So there are desktop applications or desktop software programs, which gives you an interface that opens a project for you and that creates a project. And then it has a dedicated directory that you can open and you keep all of your files over there. There's just one way of organizing your really big, massive, complex project.
Amit:And it's not just that, it's also about syntax highlighting, making sure that you are following the right syntax. The IDE also helps with highlighting the codes, making sure that you are using the correct syntax, making sure you are referencing the correct files. It'll start showing you errors if your syntax is not correct, et cetera.
Amit:So you can do the whole thing in a text file, as you mentioned. But with the development environment, what it helps is it focuses you to work in that specific programming language so that you can code effectively and quickly.
Rinat:Yes. So everything that you need to be organized and then to keep track of everything that you've done so far, and then maybe also all the things that you want to do. Maybe you have created another file with list of all the bugs to fix or list of other features to add. And all of these things are together in one project file, which is all accessible. And all of these things are made very easy by using an IDE. Other ways of vibe coding, as you mentioned, you can go to Gmail and then use Gemini to
Amit:Yes, but I won't consider that as coding because now you're not coding, you are now just using AI to do something for you. And they're inbuilt in the application, but they are not specifically vibe coding.
Rinat:The comparison I wanna highlight is the fact that when you are using Google, Google has its own environment or an ecosystem, and there's Gmail, there's all of these things, and IDE is whichever one you use. The one we are talking about particularly is Cursor.AI.
Rinat:Without using any AI features you could just be a regular software programmer. You can have all of your codes written and then combined together. So that's what you do in an IDE. What Cursor.AI revolutionarily is providing us is with pay at the moment is that you have this additional feature of AI and the capability of being an AI agent, which will create files for you in that directory where you've created the project, it will create the necessary files and all the texts that will go inside those files. It will operate from inside the IDE. It's not a free agent, it's not a AI that's running around inside your operating system like we see in science fiction, but it's actually part of a software program, which is an IDE and it has sort of permission and capability to create files and then that's what it does.
Amit:It's very important to make a small distinction. I think when people talk to Chat GPT, they go to a website. So firstly they need a internet connection. So if you want to talk to Chat GPT you go to ChatGPT.com and then you write your prompt and then you get a response for all that you need Internet connection.
Amit:Now that is one way to interact with the chat GPT interface and in the Chat GPT, you have multiple models. That's one way. Second way is APIs and we have an episode, I think one of the first episodes that we did was on API. So now what you are doing is instead of going to ChatGPT.com, talking to a model and getting a response, what you do is from your IDE you take the user input, you send it to Chat GPT using the API call. You send it as a request. Say, okay, I want to send the request to open AI's O1 model, or GPT-4 O, or I want to send it to Gemini, or I want to send it to this. It could be a model which is stored on cursors service and they're just query it. And talking to GPT or they're actually talking directly to open AI's model.
Amit:So you can have locally hosted model on your own systems, which you can download for free. But closed source models like Anthropics, Claude, or Gemini or GPT, you can only access via API. So in order for you to use these models, then you'll have to need an internet connection. If you want to use, say, Lama, you'll still need an internet connection because you don't have LAMA installed on your machine.
Amit:You can do it, but now you are talking to, say, a cursor server that has LAMA installed and you're talking to that server. So you send the request, say, this is my input, this is what I want to code. It goes to the Chat GPT using the Chat GPT API, it goes to the server, queries the model, sends you a response, and then using that response, it does some work and that is how it's working.
Amit:So I think it is very important to understand all these nuances. Otherwise, what happens is you think, oh, now I have AI in my software. I'll just turn off the internet connection and it should work. It'll not work.
Rinat:Yeah that's actually very good. Good distinction. And that's one of the things also I wanted to add as well. You've mentioned the communication happens with API and there is a need for communication. So it's not that cursor.ai, the IDE, the desktop application itself. That in itself doesn't have any large language model capability. That has the capability to act based on what
Amit:The response exactly based on the response. So I think there are a lot of products now that are built on these APIs. So everywhere you see an AI app, but all these AI apps are using some kind of a model. Most of the models are, these are called foundational models. So there are models that are built on top of these foundational models.
Amit:So like deep seek. It is not a foundational model. Deep seek is a distilled version of say, Llama or Chat GPT. So basically what it does is it asks questions, a lot of questions to chat GPT. It gets the output from Chat GPT and it trains on that output. And that's called a distillation.
Amit:So deep seek is not a foundational model. GPT 4o, o1, Anthropic's Claude, Gemini, they're all foundational models. And then you can build on top of it. So either you query it, you have it locally installed, like llama or yeah.
Rinat:Yeah. So in order to set up your vibe coding environment, you need to have a IDE installed. I mean we've been talking about Cursor.AI, that's one of the most popular one. You just download, you go to Cursor.AI website, download the software, install it. So that's your IDE installed.
Rinat:Now you can, without AI, just start programming yourself, but now you want AI. So you go to Cursor.AI and then enable the AI feature by paying. But then that's still not enough because now Cursor has the capability to write or create files into it, but it doesn't know what to write. Now you have to make it communicate or talk to one of the foundational models that you've just mentioned, like chat GPT or Claude, et cetera. Now for that you need to do API communication. So for that you need to go to chat GPT and get an API key that you will get when you have a license.
Amit:You don't need the API key because you are already paying Cursor For it.
Rinat:Okay. Okay. So that's actually a good thing because then you don't have to pay twice. 'Cause I was thinking that you have to separately pay Claude or chat GPT or whichever one you No that's even better. So now these are the steps you need to take to start Vibe Coding. You paid Cursor.AI. It already took care of the AI features, which includes API
Amit:It takes care of it. So I think that's why you pay for it and that's why it's a good proposition for you because if you pay $20 and you get access to these models and it does all the work for you. You don't have to set it up. I think that saves a lot of time and energy. So now you just talk to it and vibe code, just vibe. Just vibe, man, vibe.
Rinat:Just vibe with the AI and then see what you come up with. And that's even easier than I thought. So audience there is really no reason for you to not implement your ideas that you had. Even if you are unsure about it. Ask an AI, say that, look, this is my idea and I wanna do, I wanna make it into a reality. Give me steps on how to do it. And then have your vibe coding environment ready and just vibe with it. And see where it goes. And yeah, I'm really excited to see all of your different projects. Definitely do share it with us and then we can share it to the world as well give you guys a shout out.
Rinat:So definitely reach out. This was really fun conversation. I've learned a lot. I didn't know a lot of these things, and I'm very excited to use the vibe coding myself and let you guys know how it went. So thank you everyone for vibing with us today, and hopefully we'll see you again in our next episode.
Amit:Thank you.
Rinat:Thank you.