I would call this new revolution "vibeprompting"—the art of breaking complex requests into well-structured prompts, knowing what context is needed to build an app and how granular the tasks should be broken.
While tools like Cursor and Replit AI supposedly democratize coding through natural language, they actually create a divide between skilled prompters and everyone else. Those who master decomposing "build an e-commerce site" into specific tasks save costs, reduce iteration time, avoid AI rabbit holes, and produce better results. What appears to democratize development actually replaces coding literacy with prompt literacy as the new gatekeeping mechanism in tech.
> Well, you have to be clever enough to realize it needs to be decomposed in steps
That's not trivial, esp. for those who haven't coded before. That said, it's fair to assume the AI SWE companies will build better wrapper/UX to make this seamless to the end user, similar to how prompting the frontier LLM today doesn't require the fluff of the early days ("Act as a .. I will tip you").
Not trivial indeed, but I think not completely out of reach either. Either by someone who'd already worked on complex projects to know that decomposing in small steps generally works, or by someone who's got the good reflex to just ask AI when something doesn't work.
I do agree it'll probably get seamless to the user in the near future.
What you describe is analogous to what happened with chain-of-thought prompting. Early on, good prompters knew to embed CoT into the query itself to derive better answers and better prompters knew to also ask for the model's approach in <thinking></thinking> tags. Now, anyone gets that and more by simply clicking the Reasoning/Thinking button. The same will happen with the coding tools as you suggest
To me vibecoding is similar to being a tech lead for a bunch of junior engineers. You spend most of your time reviewing code rather than writing code. The code you review is worse in most ways than the code you write. But it's a lot faster to work together as a team because the junior engineers can crank through a lot of features. And your review really is important - if you blindly accept everything they do, you'll end up in trouble.
Except that the code is better than what junior developers would produce. The tradeoff is that it is like having a team of semi-mid-career developers who suffer from collective amnesia and forget everything you taught them between sessions.
Wow! The themes in your article are rhyming with my most recent musings. I believe we have entered the age of poets. Poets, who can sculpt entire worlds into existence using just...words. 💫🙏
Very interesting ! Claude Code runs on Mac too, so I'm gonna try it out.
I've been sorta vibe coding for a couple months now. Basically I use AI to help me leverage AI, in what could be called mini-agents. I'm in a content creation field, and even though AI has been of tremendous help to save time, it was still a lot of copy-paste and waiting for it to generate a result.
So what I'm doing is basically using AI to write some simple scripts which use Anthropic or OpenAI APIs to do some tasks autonomously. Then I go do something else, and when I come back it's done.
The best thing I've done is creating embeddings for literally all my content (70 hours of courses, 500+ youtube videos, 500+ blog posts, thousands of answers to customers over 14 years), and then create an automation to have Claude generate an answer to customers' questions. It's obviously not perfect but it's 10 times faster to answer them, AND the answers are better.
(I originally thought I would be able to use Zapier only, but I had to go deeper, and Claude taught me how to do everything step-by-step, even though I had no idea what Railway or Pinecone were.)
The most efficient for me while "vibecoding" has been to divide it in chunks. When you're not a programmer, a big script with a lot of steps can be a nightmare to debug, so it's often easier to just do a simple script for each step.
I had to learn some basics to lower friction when AI makes mistakes (especially using outdated versions its own API...), but Claude just explained everything I needed (curiously o1 was way less prone to explain things and repeatedly assumed I was a developer).
I teach High School Computer Science. I am having my Junior/Senior class read/annotate/discuss this article. There are 2 quotes that I am really highlighting with my students: "vibecoding is most useful when you actually have some knowledge and don't have to rely on the AI alone. "
and
"This underscores how vibecoding isn't about eliminating expertise but redistributing it - from writing every line of code to knowing enough about systems to guide, troubleshoot, and evaluate. The challenge becomes identifying what "minimum viable knowledge" is necessary to effectively collaborate with AI on various projects."
I don't know what the future of coding and CS looks like for my students, there is a lot of uncertainty. However, posts like this will hopefully help my students be more prepared for the future of AI and work. Thank you.
I love this piece on "vibecoding." It immediately resonated because its exactly how I approach my "vibe writing" with AI.
In my process, I treat AI like a collaborative writing partner, starting with just a loose idea or some bullet points. Instead of strictly prompting, I let the AI riff, reach and generate spontaneously. It feels more like a creative jam session - a veritable steamroller in getting me past writer's block paragraph by paragraph, or sometimes even sentence by sentence. It's like surfing that crest of the wave between surrendering control and clinging to my old workflows.
Your closing insight here about the value of human collaboration is both deeply profound & also completely overlooked by most people, who focus purely on AI's capabilities.
Indeed, I wrote recently that your human network is about to become your best source of competitive advantage.
Why?
Because having the deep expertise to understand which side of the jagged frontier (brilliant or misleading) you lie will be something that human experts can do very effectively
"The hottest new programming language is English" - that line perfectly captures this transitional moment we're in, Ethan.
I'm fully embracing these AI tools in my workflow, but there's a fascinating tension to it all. For those of us who've already put in our 10,000 hours mastering fundamentals, vibe coding is a force multiplier. We know what good looks like, so we can direct these tools with precision.
But what happens to the generation who starts their career with AI already handling the heavy lifting? Do they develop the pattern recognition and first principles thinking that comes from grinding through problems? Or does the bar simply raise to a new level where directing AI becomes the fundamental skill?
At the end of the day, there's always been this fear with new technology - that it will erode essential skills. But history shows we adapt in ways we can't predict.
There's no creation from nothing, :-) Yes you're able to prompt complex system to produce results but nothing comes from nothing :-)
As you point out the operator value is extremely important to the output, and failures are common...
So my only objection :-) is to the title making it speaking it and creation, assembling or generating I have no issues with, but to think that we're getting something from nothing implies a magic that is there, rather the reality is exactly what you said the quality of sources, as well as the quality of the operator are going to be critical as always going forward, it does make it much easier to produce results, in fact so much so that I just turned down a pre-screen for a job that reflected a complete an utter lack of AI knowledge.... It's like doing things from 30 years ago Why would I bother?
A fascinating exploration of AI’s ability to turn speech into reality! The implications for creativity, productivity, and even ethics are huge. Really thought-provoking read!
How many hours were spent vibing this into existence? If it was 40+ hours of troubleshooting I would not put that in the, "vibes," category I would put that into, "fast yet impressive non-expert coding and troubleshooting." If it were more like a 3 hour build that sounds like vibes.
Your firetruck game inspired me to explore how well Claude 3.7 can do this without all the agent stuff.
It aced the first prompt "make a 3D web game where I can place buildings of various designs and then drive through the town i create." where I added the word "web". It even had more city building options. Driving forward and backwards were swapped but otherwise it worked fine.
When I asked for firetruck enhancement - it persistently created the firetruck very close to the fire. And it broke forward and back so I could only spin around. After a few rounds of unsuccessful fixes I gave up.
I've written Learner's Apprentice a book inspired by Ethan's book and posts but aimed at school children and teachers. I've found all the frontier chatbots are very good at creating web apps and games and they are easy to run right in the chat session. And easy to share.
I would call this new revolution "vibeprompting"—the art of breaking complex requests into well-structured prompts, knowing what context is needed to build an app and how granular the tasks should be broken.
While tools like Cursor and Replit AI supposedly democratize coding through natural language, they actually create a divide between skilled prompters and everyone else. Those who master decomposing "build an e-commerce site" into specific tasks save costs, reduce iteration time, avoid AI rabbit holes, and produce better results. What appears to democratize development actually replaces coding literacy with prompt literacy as the new gatekeeping mechanism in tech.
Well, you have to be clever enough to realize it needs to be decomposed in steps, but once you know that, you can... ask AI to decompose it in steps.
I did it for some simple scripts, and Claude guided me all the way through.
> Well, you have to be clever enough to realize it needs to be decomposed in steps
That's not trivial, esp. for those who haven't coded before. That said, it's fair to assume the AI SWE companies will build better wrapper/UX to make this seamless to the end user, similar to how prompting the frontier LLM today doesn't require the fluff of the early days ("Act as a .. I will tip you").
Not trivial indeed, but I think not completely out of reach either. Either by someone who'd already worked on complex projects to know that decomposing in small steps generally works, or by someone who's got the good reflex to just ask AI when something doesn't work.
I do agree it'll probably get seamless to the user in the near future.
What you describe is analogous to what happened with chain-of-thought prompting. Early on, good prompters knew to embed CoT into the query itself to derive better answers and better prompters knew to also ask for the model's approach in <thinking></thinking> tags. Now, anyone gets that and more by simply clicking the Reasoning/Thinking button. The same will happen with the coding tools as you suggest
DeepSeek was the first the first to show us how for free every time?
This is Chinese soft power and it's the most excellent form IMO
About 2 years back, I wrote a substack on prompt vibing. See what you think! https://aixd.substack.com/p/prompt-engineering-try-prompt-vibing
To me vibecoding is similar to being a tech lead for a bunch of junior engineers. You spend most of your time reviewing code rather than writing code. The code you review is worse in most ways than the code you write. But it's a lot faster to work together as a team because the junior engineers can crank through a lot of features. And your review really is important - if you blindly accept everything they do, you'll end up in trouble.
Except that the code is better than what junior developers would produce. The tradeoff is that it is like having a team of semi-mid-career developers who suffer from collective amnesia and forget everything you taught them between sessions.
Wow! The themes in your article are rhyming with my most recent musings. I believe we have entered the age of poets. Poets, who can sculpt entire worlds into existence using just...words. 💫🙏
Very interesting ! Claude Code runs on Mac too, so I'm gonna try it out.
I've been sorta vibe coding for a couple months now. Basically I use AI to help me leverage AI, in what could be called mini-agents. I'm in a content creation field, and even though AI has been of tremendous help to save time, it was still a lot of copy-paste and waiting for it to generate a result.
So what I'm doing is basically using AI to write some simple scripts which use Anthropic or OpenAI APIs to do some tasks autonomously. Then I go do something else, and when I come back it's done.
The best thing I've done is creating embeddings for literally all my content (70 hours of courses, 500+ youtube videos, 500+ blog posts, thousands of answers to customers over 14 years), and then create an automation to have Claude generate an answer to customers' questions. It's obviously not perfect but it's 10 times faster to answer them, AND the answers are better.
(I originally thought I would be able to use Zapier only, but I had to go deeper, and Claude taught me how to do everything step-by-step, even though I had no idea what Railway or Pinecone were.)
The most efficient for me while "vibecoding" has been to divide it in chunks. When you're not a programmer, a big script with a lot of steps can be a nightmare to debug, so it's often easier to just do a simple script for each step.
I had to learn some basics to lower friction when AI makes mistakes (especially using outdated versions its own API...), but Claude just explained everything I needed (curiously o1 was way less prone to explain things and repeatedly assumed I was a developer).
I teach High School Computer Science. I am having my Junior/Senior class read/annotate/discuss this article. There are 2 quotes that I am really highlighting with my students: "vibecoding is most useful when you actually have some knowledge and don't have to rely on the AI alone. "
and
"This underscores how vibecoding isn't about eliminating expertise but redistributing it - from writing every line of code to knowing enough about systems to guide, troubleshoot, and evaluate. The challenge becomes identifying what "minimum viable knowledge" is necessary to effectively collaborate with AI on various projects."
I don't know what the future of coding and CS looks like for my students, there is a lot of uncertainty. However, posts like this will hopefully help my students be more prepared for the future of AI and work. Thank you.
I love this piece on "vibecoding." It immediately resonated because its exactly how I approach my "vibe writing" with AI.
In my process, I treat AI like a collaborative writing partner, starting with just a loose idea or some bullet points. Instead of strictly prompting, I let the AI riff, reach and generate spontaneously. It feels more like a creative jam session - a veritable steamroller in getting me past writer's block paragraph by paragraph, or sometimes even sentence by sentence. It's like surfing that crest of the wave between surrendering control and clinging to my old workflows.
Your closing insight here about the value of human collaboration is both deeply profound & also completely overlooked by most people, who focus purely on AI's capabilities.
Indeed, I wrote recently that your human network is about to become your best source of competitive advantage.
Why?
Because having the deep expertise to understand which side of the jagged frontier (brilliant or misleading) you lie will be something that human experts can do very effectively
Read more: https://open.substack.com/pub/thefuturenormal/p/chatgpts-deep-research-and-thinking
"The hottest new programming language is English" - that line perfectly captures this transitional moment we're in, Ethan.
I'm fully embracing these AI tools in my workflow, but there's a fascinating tension to it all. For those of us who've already put in our 10,000 hours mastering fundamentals, vibe coding is a force multiplier. We know what good looks like, so we can direct these tools with precision.
But what happens to the generation who starts their career with AI already handling the heavy lifting? Do they develop the pattern recognition and first principles thinking that comes from grinding through problems? Or does the bar simply raise to a new level where directing AI becomes the fundamental skill?
At the end of the day, there's always been this fear with new technology - that it will erode essential skills. But history shows we adapt in ways we can't predict.
Great piece.
Which specific models did you use to generate and test the hypotheses?
Can someone please explain the "vibe-" part of all of these phrases? Aren't you just having an ongoing conversation to perfect the desired output?
Check out Ken Kahn’s new book “The Learner’s Apprentice”.
There's no creation from nothing, :-) Yes you're able to prompt complex system to produce results but nothing comes from nothing :-)
As you point out the operator value is extremely important to the output, and failures are common...
So my only objection :-) is to the title making it speaking it and creation, assembling or generating I have no issues with, but to think that we're getting something from nothing implies a magic that is there, rather the reality is exactly what you said the quality of sources, as well as the quality of the operator are going to be critical as always going forward, it does make it much easier to produce results, in fact so much so that I just turned down a pre-screen for a job that reflected a complete an utter lack of AI knowledge.... It's like doing things from 30 years ago Why would I bother?
A fascinating exploration of AI’s ability to turn speech into reality! The implications for creativity, productivity, and even ethics are huge. Really thought-provoking read!
One of Ethan's best?
I think Yes
How many hours were spent vibing this into existence? If it was 40+ hours of troubleshooting I would not put that in the, "vibes," category I would put that into, "fast yet impressive non-expert coding and troubleshooting." If it were more like a 3 hour build that sounds like vibes.
Your firetruck game inspired me to explore how well Claude 3.7 can do this without all the agent stuff.
It aced the first prompt "make a 3D web game where I can place buildings of various designs and then drive through the town i create." where I added the word "web". It even had more city building options. Driving forward and backwards were swapped but otherwise it worked fine.
When I asked for firetruck enhancement - it persistently created the firetruck very close to the fire. And it broke forward and back so I could only spin around. After a few rounds of unsuccessful fixes I gave up.
Here is the conversation: https://claude.ai/share/dee7058d-2aaf-4593-ba9b-c65e60af69d5
Here is the game: https://claude.site/artifacts/7ccd4b65-3533-4a98-9d83-70de4dd8d314
I've written Learner's Apprentice a book inspired by Ethan's book and posts but aimed at school children and teachers. I've found all the frontier chatbots are very good at creating web apps and games and they are easy to run right in the chat session. And easy to share.