As with most AI-related trends these days, my first instinct was to treat “vibe coding” as another buzzword created by techbros, purely for marketing and piling on the hype to inflate the bubble.

But like ChatGPT, I thought there might be some practical use to some of the tools that were mentioned in the same breath so I decided to check them out. I tried tinkering with Cursor, GitHub Copilot, Lovable and other GenAI tools for a few personal projects. And I landed on a couple of realizations:

1. It’s scary good

Scary good how it can get you from idea to mockup in minutes, purely through natural language prompts. This is especially powerful if you use the agent mode to apply code changes directly.

I was able to generate a mockup of the basic features I wanted in a web app exactly as I had in mind. And I was not even rigorous in my description of the features, or even in the mental models for how the various features interacted.

We’re going to see the time from idea to mockup shrink dramatically. In fact, it’s already happening. Even for experienced developers, coders and data scientists, vibe coding can speed up some of the mundane tasks and focus on the overall logic and workflow. I myself have experienced this in my data science work. The number of times I would forget something as simple as the syntax for filtering rows from a dataframe or joining two tables in an SQL query can be annoying, especially when switching between languages. With vibe coding, I can just avoid the mental load for this and quickly describe in natural language prompt, so I can focus on the downstream tasks like training ML models.

Some programmers even take a pseudo-code approach instead of pure natural language prompts and get the correct syntax from the LLM. (”def function(dataframe, feature, number): loop from 1 to number: dataframe[column].average() and return average”)

For creatives, designers, makers and entrepreneurs, this opens up so much more power to express themselves. Think of a product designer or SaaS founder who is full of ideas but struggle with coding skills, bandwidth and finding technical co-founders or engineers to implement a prototype before going all in. It’s reminiscent of the “bicycle for the mind” metaphor, except it’s much more than a bicycle.

2. It’s scary bad

Vibe coding can also lead you down an endless loop of misery and frustration if you don’t know what you are doing.

In my case, I tried testing how far I could push things after the initial mockup, and kept going: ”Now I want X”, “Add this feature Y too” – still through natural language prompts and still relying on the agent to apply changes without my intervention. I found that this would often result in some correct changes being applied but something else breaking in the process, even things that were already working in the mockup. Now if I had slowed down, added one feature at a time, and asked for more clarity on how to implement each step before proceeding, I’m sure I’d have had better results.

This is an ongoing conversation among technology professionals. By nature and in general, we are particular about the details and emphasise rigour and care in the process. But LLM tools tend to give the impression that we can sit back and get to the desired end result without worrying about the details. Which means that when things break in the vibe coding process, it will be necessary to go through individual steps, read every line of code and compare the diffs generated by the AI - which eventually takes more time than a normal process (sans the vibes).

So far, my observations with vibecoding are:

  • If you just want to get from idea to prototype, it’s great - so go full steam ahead
  • For better, more reliable results on more complex projects, you will need embrace friction and go in small increments.
  • Sound prompt engineering practices do make a difference. This means being as clear and detailed as possible with requirements: context, caveats, constraints. Not just in crafting the best prompts to get things done on autopilot but also in knowing when to slow down, take the wheel for bit and prompt with caution.
  • Good ideas will still be valued, as starting points for products, and will be critical in standing out from AI slop
  • Those with technical skills, deep conceptual understanding and experience will still be valued, especially when things break and someone has to step in to fix stuff.