Skip to content

Is All AI Powered Software Development Vibe Coding?

There's a lot of strong opinions on both sides when it comes to the newly coined term "Vibe Coding". I prefer to avoid all the drama. I just like to build software. I think it's important not to throw out the baby with the bathwater. So, vibe coding is a thing now. Ok then, what does AI powered software engineering look like? How is it different from vibe coding?

I think it all comes down to autonomy. First, let's take a look back at the last 2 years of my AI powered software development journey.

Vibe Coding

Obligatory AI generated image of vibe coding

I started using Cursor, the AI Code Editor, in the Fall of 2023. At the time, I had been building with LLMs for a few months and was using Github Copilot. I found it useful, but I was curious to try something beyond AI powered autocomplete. It takes a while to get used to interacting with intelligence baked into your editor. Getting the user experience dialed in with these powerful new tools is going to take time. I don't think we're even close to figuring out what this will ultimately look like.

How I use AI in my software development workflow has changed a lot in my 2 years of using these tools. Here's a roughly chronological list of how the user experience has changed since I started using Github Copilot, then Cursor.

  1. Autocomplete
  2. Instructions via Comments
  3. Chat Mode
  4. Multi-line Autocomplete
  5. Next Cursor Position Prediction
  6. Next Edit Prediction
  7. Documentation in Context
  8. Intelligent Diff Edits
  9. Vision - Model can see screenshots
  10. Feedback loop - Model can see output from running code
  11. Voice - Use speech to talk to the model
  12. Agents can create and edit files (with approval or autonomously)
  13. Agents can run tests and other commands (with approval or autonomously) and see the output
  14. Specific rules/prompts/instructions for each project

Almost every month, I have to sit down and read through the docs from start to finish to learn all the new ways to use the tool effectively.

When it comes to the new agent mode, it's not all good news as you move down the autonomy curve. There's more code to review and be sure things are heading in the right direction. The beauty of using a tool like Cursor is you're already in a modern world class code editor. When you need to take the reigns, you can.

Giving autonomy to coding agents reminds me of a couple analogies. It reminds me of my first Waymo ride in San Francisco. I remember an uneasy thrill like when a roller coaster starts to climb the first hill - "Why am I doing this?". It was exciting and unsettling. It's also like when you you have to let go and watch your kid ski down a hill by themselves for the first time. It's disorienting at first. But the world isn't going to end. Or go back to the way it was before. Sometimes you have to jump in to learn to swim. Ok, enough with the analogies.

AI in software development is not an all or nothing proposition. Figuring out how much autonomy to give AI in the process of creating software is difficult. It requires a lot of experimentation and intuition only possible through experience.

Is all AI powered software development vibe coding? I don't think so. As curious practitioners, we shouldn't be completely dismissive of the new tools available to us. If you have a strong background in software development, you are in a unique position to better steer AI to productive ends.

Where is your software engineering organization on the AI transformation curve? Do you use an AI powered code editor? How well? Can you afford not to level up your use of AI in software development?

Did you find this helpful?

📅 I currently offer free consultations. Or if you're more technical, I'd love to schedule a complimentary pair programming session. Feel free to schedule some time on my calendar.

🤝 I'd love to connect!

Comments