I've spent about four hundreds hours testing "vibe coding" (or what I used to call conversational programming) to the extremes, and I've been telling people that it's great but not useful for anything other than prototypes. For this, I've got a lot of earache from some saying that I just don't understand it. The guy who created the term "vibe coding" finally bothers to try and build something end to end with vibe coding - "MenuGen is my first end-to-end vibe coded app" - https://lnkd.in/e9PqWwv6 - and comes to a conclusion that "Ultimately, vibe coding full web apps today is kind of messy and not a good idea for anything of actual importance." - https://lnkd.in/e9PqWwv6 Nothing wrong with the conclusion but, hang on - for the first time! Did the entire industry lose its mind over a term created by a person with no actual experience of doing what the term means!?!?? Talk about cult and a cult of personalities. Nothing surprises me in the world of AI these days. Let us hope that Gene Kim and Steve Yegge have actually tried to build entire applications before they finish the book - https://lnkd.in/eer2Pcb4 Vibe coding is a really poor choice of name. This is more wrangling than coding. Yes, people often confuse it with software engineering + AI (where a person inspects and reviews the code) but that's a different field to one where "I wrote none of the code directly (Cursor+Claude/o3 did) and I don't really know how the app works, in the conventional sense that I'm used to as an engineer". The confusion stems from the use of the word "coding" (hence my preference for wrangling). Technically prompts are code, they are just non deterministic and result in deterministic code. Hence I understand why people have used "coding" along with the vibe term. An old friend of mine Simon Willison nailed the confusion with this post - https://lnkd.in/ewXWwdX7 “generating code with AI without caring about the code that is produced” is vibing. Well, technically it's more "generating code with AI without being involved in the decision making" as we discuss in rewilding software engineering - https://lnkd.in/ek9MF7P3 Vibing will be important and bizarrely enough ... it is a skill. I'll write more on that later, I just need a few more hundred hours of experience to nail down the practices or at least to be able to have a good first stab at them. Even then, take them with a pinch of salt - we are still learning as the practices emerge. #vibing #vibe #ai #cult -- addendum X : Will it ever be useful for more than just prototypes? Me : Of course. For now though, we haven't developed the practices and we have to rely on software engineering i.e. reviewing the code. Those practices are emerging and the boundary of where to vibe (or not) will change over time. But it will take time. X : This year? Me : You've been listening to Eric Schmidt? Now that's a person I can almost guarantee hasn't used this stuff in anger but still pontificates about it.
You’re giving existing coding practices too much credit. Have you actually worked as a Developer in a large organization?
oh well, not CARING about the code and not FOCUSING on the code that is generated is not the same thing, and I'm not concerned with who first coined the term and meaning. The dominating view of vibe coding now is coding where you mainly keep prompting the ai to expand and change code after an initial prompt that defines the basis of what you want, but you are free to both understand and interact with the code as you go. The focus however, is that you promt for most code, you are not simply getting input, suggestions, and autocomplete. And that actually works quite well, quite often, for a variety of things, at least if they are pretty small and straight forward. Does it have anything to do with consultants making case worker systems, processing tax returns and calculating disability payouts, no. But is that all we consider code? Now that woould be a pretty conceited stance to have on code in my opinion.
Very true! We really seem to have lost all ability to approach ideas with constructive skepticism and seem to be becoming meme-led! Perhaps I'm just getting old :-) Looking forward to seeing any patterns of practice you identify.
Vibe coding menugen was exhilarating and fun escapade as a local demo, but a bit of a painful slog as a deployed, real app. Building a modern app is a bit like assembling IKEA future. There are all these services, docs, API keys, configurations, dev/prod deployments, team and security features, rate limits, pricing tiers... Meanwhile the LLMs have slightly outdated knowledge of everything, they make subtle but critical design mistakes when you watch them closely, and sometimes they hallucinate or gaslight you about solutions. But the most interesting part to me was that I didn't even spend all that much work in the code editor itself. I spent most of it in the browser, moving between tabs and settings and configuring and gluing a monster. All of this work and state is not even accessible or manipulatable by an LLM - how are we supposed to be automating society by 2027 like this?
Vibeagility.com feel the vibes lol
Great post. I think the hype has led people to massively underestimate the amount of time, effort and pain involved. The fact that you've spent hundreds of hours and the pain described by Andrej in his blog prove that. Having said that, I'm looking forward to playing around with it for prototypes, but leaving the real engineering to the real engineers!
Any Problem can be solved by putting in another abstraction. For Vibe Coding this is actually very close to the truth. Code is too verbose, a poor choice to be generated. The model that serves as a specification for the generated code - completely different story. So I'm a fan of vibe-modeling and code generation from the model.
The term I’m starting to adopt is GenCode. (Generative Code) I’m having AI make the code to specifications that I confirm. It writes code faster than me, but it’s code I would have made anyway.
♾️ Agentic Engineer / aiCTO / Coach
1dYou should try my SPARC approach. Solves all your issues.