Site icon Arnau Dunjó Workspace

Vibe coding: the immediate future of application development

Introduction

These days, YouTube is like a runway full of code gurus showing how to program without touching the keyboard. Everyone’s talking about vibe coding—this way of developing where you set the context, get comfortable, and the AI writes the code for you. Sure, that is—if you’re lucky and it doesn’t spin up a thirty‑file microservice for something you could fix with two Bash lines.

But I must admit the idea is quite appealing: you work from an IDE (Cursor, Windsurf…), write a few instructions, and the model (any of the major LLMs) takes care of writing, running, reviewing, retrying, etc. Through the conversation with the model, you can keep refining the code (or if the model can’t manage, you can step in and tweak it yourself), and with a bit of discipline and documentation, it can produce surprisingly good — or at least pretty decent — results. Below I explain my experience, which started as a small project and ended up… well, it hasn’t ended yet.

Image 1: Vibe Coding workflow

Tiny project (first tests)

I started with a simple idea: a small program that summarized WhatsApp group messages I’d configured and emailed them to me at a set time. I wanted to avoid distractions during the day without missing anything. The outcome? A fully structured project, functional on the first run, and I didn’t write a single line of code. I just watched, tested, and was blown away. Plain and simple.

Image 2: What Cursor looks like—on the left the project structure, on the right the chat with the model

Small project (let’s get serious)

The project worked, but it was designed for developers. Preferences had to be stored in a JSON file and the architecture wasn’t scalable. I couldn’t even share it with friends or family—they’d need to come over and link WhatsApp to my machine. Since the first part went so smoothly, I thought: “what if I scale this to a SaaS? Could even earn some cash.” The model started creating architecture almost without asking. No validation—good and bad.

I found myself missing an agent that asked questions before building anything, and another that coded only once the roadmap was clear. Maybe it was my fault—I hadn’t given it concise instructions or detailed the flows well enough.

After hours and days (yes, it dragged much longer than expected), as the project grew disordered, I began seeing the mistakes I’d made.

First, I realized that if you’re not clear about which technologies you’re using—and what for—the model will decide for you. And that’s not always good. You must maximize the use of languages and technologies you actually know; that way, when something breaks, you can step in instead of wasting time trying to get the model to fix it. Sometimes it’s faster to get your hands dirty.

Image 3: Vibe Coding must be understood as an aid—like a good intern—not as a replacement for a senior dev

The major advantage of these IDEs is that the model writes, runs, detects errors, and retries. But it doesn’t always know when to stop, and it often freezes waiting for something that’s already happened. You need to stay alert and interpret what went wrong to keep the flow. The model even tells you why it thinks something failed. Sometimes it tries to fix the symptom instead of the root cause—and that’s where you need to step in.

I think the best strategy is, after planning functionality, architecture, and flows in enough detail, to go step by step—one feature at a time. That’s where vibe coding makes sense: it’s not magic, you can’t leave the IDE unattended, but if you know how to play your cards, it’s an efficient dance partner.

I also started leveraging Cursor and Windsurf’s features that let you keep two essential files: one for general instructions the model always considers, and another for live project documentation. That second file saved me from losing my bearings more than once.

I still need to test other models, but GPT‑4.1 is the one that convinced me most for this kind of work. It’s less impulsive, asks before doing, and tells you what it’s about to do. It may feel slow sometimes, but when you’re trying to avoid architectural disasters, it’s a luxury.

Cost of these platforms

Obviously, this doesn’t come for free. There are basic versions to experiment with, but if you’re building a serious project, be prepared to pay. We’re talking about €20/month for a personal plan (around 500 prompts—you can always pay more for extra credits), or €40+ for collaborative environments. If you’re committed, it’s a worthwhile investment.

Conclusions

The project? It’s still halfway there. Honestly, I don’t know whether it’s worth fixing or if I should scrap it and start fresh. But one thing’s clear: these tools can be brutal—in a good way—if you know what you want and can articulate it. They can save you tech debt, but only in concrete areas. Don’t try to tackle something beyond your control—you won’t know how to guide the model.

It’s a giant leap compared to how devs used to program: previously you’d tell an LLM what you wanted and it would spit out code; when it failed you had to manually feed logs and code back into your editor. With vibe coding, the AI has a global view of your project, so it’s far less prone to inconsistencies.

With vibe coding, I compare it to having a top-tier intern: incredibly talented, but inexperienced. Huge potential—but you need to give it tasks step by step, guide it, supervise it, and help when necessary.

It’s by no means a replacement for a programmer, but it makes the programmer far more efficient—letting you do many more things, much faster.

Exit mobile version