AI is changing development – and it’s not just a trend

In the past couple of months, the AI boom has gone to the next level. With all the main AI players having launched their AI agents for coding, we as developers can see a major shift.

ChatGPT - Codex

Google - Jules

Microsoft - Copilot

And the list goes on and on…

Also, the term vibe coding is in the market and sounds pretty cool. I am also exploring all of this, and here I am sharing my observations and overall experience with AI agents and how we should use that to get max out as developers.

What is vibe coding?

Let’s use ChatGPT to get the answer.

Coding based on feeling or intuition, rather than strict structure, 

rules, or a clear plan.

So, when you input a request, AI agents understand it and code for you. It’s like AI agents are a black box. You just provide input, have faith in the AI agent, and check the output. Repeat this process until you either stop providing input or achieve your desired result.

Something like this:
You: Make a website for anime lovers to show an upcoming anime list with 

a dynamic list fetched from any public API.

AI agents: Add starter files, find API, update dependencies…

You: Looks good. Now make the list in a grid view.

AI agents: …

You: It’s working, done…

If you look carefully, as a developer, you never see the code. You just give input, the AI does the work, and the AI gives the output.

Recently, there have been major updates in this process. Now, AI asks you more questions about what you are building and revises its output based on your answers to build the app.

Here are a couple of Twitter posts from users who built apps with vibe coding.

I have personally made a couple of apps with vibe coding. Let’s understand how I used vibe coding to make them.

First app: Local Grammar Correct App

The first use case for AI that is used most often is for grammar correction. So, I tried to build the local grammar correct app with vibe coding, as it is very hard to correct grammar without any machine learning or AI.

Code: Link

I used a couple of AI agents and an AI editor for this, and it is working fine. Of course, it is not perfect, and grammar fixes with some coding conditions are not possible.

It took around 2-3 hours for the AI agent to build the whole app. I used Cursor to build this app.

Tech: Python

AI agent: Cursor

Model: Claude Sonnet 3.7

Observations: It is not very hard for AI to build a small app, it is very good at understanding the input and providing the output. Speed is an issue, as I was using the free tier. However, if you understand how AI models work, you will know that it takes time to produce output, as it is not magic but a combination of tokens, which takes time. Of course, if you increase the resources to run the model, the relative speed will be faster, but it will cost more. 

One of the main issues with current AI is speed. If we find a way to speed up AI with minimal resources, it will be the end of the world and developer as well.

Second App: Vibe Real Estate App

This was interesting. Here, I forked the existing app and asked an AI agent to modify the code and make the UI more user-friendly. The codebase wasn’t huge, but it took time and many inputs from me to achieve the final output.

Source repo: Link

Updated repo: Link

The final output: Link

Lots of changes I made with vibe coding:

  1. Update page CSS
  2. Add proper validation, escaping, and sanitization
  3. Update search functionality
  4. Optimize JS and remove extra JS as well as CSS
  5. Divide the code into more organized files

The output is great, isn’t it?

Tech: PHP, SQL, HTML, CSS AND JS

AI agent: Copilot (Cursor and Websim not help much in this IDK why)

Model: Claude Sonnet 3.7

Observations: It took me 7-8 hours to complete the whole process. I tried many AI agents for this, but most of them did not give me the correct output after some time as the codebase was a little bit only a little little larger. However, Copilot was able to complete all the tasks. It was time-consuming, but after many inputs, I reached the final output. There were still bugs, and it required me to update some parts of the code at the end to fix a couple of things. But the changes I made were minimal.

So, both apps work, and the output is not very problematic. 

Then why do developers need to exist? 

No, it is not the end of developers, of course not. Let’s understand where it lags and what you have to do to get maximum productivity with all AI agents.

Personally, I do not like vibe coding at all as a developer. For small apps where speed, security, and other things do not matter to you and the only thing that matters is that the app should exist, then vibe coding is fine. In these types of cases, even if you do not have any understanding of app code, it doesn’t make much of an issue. Actually, it is very useful for developers as they can make small websites fast and offer end users a much more affordable price for small websites and apps.

But vibe coding does have a couple of drawbacks.

You don’t know the code.

One of the main issues with AI agents is that you don’t look at the code, and as a developer, this is a nightmare you should not have.

Let’s understand how the current developer ecosystem works.

  1. You work on a given task.
  2. Write code (using all available resources that exist in this world).
  3. Push the code and create a pull request.
  4. Someone reviews your code.
  5. Based on the comments, you make the necessary changes.

The above is the most simple process to add one feature to an app. Here, the code is written by you and also reviewed by someone. So, a double-check is performed before deploying the feature. Even though there are cases where even big company software goes down because of errors.

Now, if you code a whole app with vibe coding and you don’t even have an idea about the code, then how will you debug an issue if the AI agent is not able to fix that?

Let’s assume AI agents will never make a mistake, but what if multiple people work on the code, and AI agents make some changes? After many further changes, there might be a point where an old change causes a problem, and your codebase is now very large. What will you do in that case if you don’t know which file or part you have to look into?

AI agents do not give you a 100% guarantee that their work is correct.

If you understand AI more technically, it is a large language model trained on data, and it gives you output based on its understanding. In the end, it is just a combination and permutation of tokens closer to your input. So, there is a possibility that AI will make mistakes. Just check any AI website, they also mention the same. 

Then, how can as a developer you can trust AI 100%?

From https://chatgpt.com

ChatGPT can make mistakes. Check important info.

So, vibe coding is useful, but you should have an idea about the code and how the app is working to make a secure and scalable app that people can use.

Use AI as helper

So, vibe coding is what you should not follow if you want to make great things as a developer. Using AI agents as your helper is the best way to speed up your coding process.

In this way, you will first have a complete idea of your code and control over it. Assume you are building an app with several functions, so what you can do is ask AI how you can build this thing. Then, get small parts of your code with AI. Write your own code and ask AI to quickly find your answers.

Knowing this will not only make you more productive, but you will also have code understanding. Not only will AI agents help, but you can also fix critical bugs if they occur, even if your codebase is very large.

As per my observation and work with AI, if you give input as exactly what you want and the output is also not large, then AI will work very well.

For example, instead of doing this:

Build a gym app for me

This is a much faster and more reliable approach:

Build a React component to show the hero section of a gym app with animation.

Build an endpoint to fetch all gym item data.

You also have MCP Protocol, which is very useful for building AI agents that can serve other use cases as well.

Vibe coding is hell for students.

Let’s go a bit off-topic, but I think we should discuss this as well. If you are a student, I suggest not using vibe coding at first, before even starting your career.

At least follow the 50-50 rule. Use vibe or AI for doing 50% of your tasks, but try to do the rest of the work without AI. Try to understand the core of computer science, as that is the most important thing if you want to become a developer.

Even if we reach a point where we can trust the entire code written by AI, you as a developer are needed to cross-verify and fix issues with your understanding. Vibe coding is fine, but focus on the fundamentals as well.

So, after all this reading, if you have reached the end, just understand that you have to learn more and need to explore more as a developer, that’s the way of life. Be exploring and happy.

TLDR:

AI is there to make you more productive, 
but at the same time, do not compromise the fundamentals of coding, 
as AI is also a one type of code only.

Work smarter, but make sure even smart work needs hard work and dedication 
to make it possible.

Scroll to Top