Down the AI Rabbit Hole

So, I was laid off just over a month ago. I worked at the company for almost 25 years. As you can imagine I didn’t have a clue on what I was going to do. This past month has gone by really quick. I didn’t have a plan on what I was going to focus my attention on, so I worked on a little bit of everything.
Finding things to stay busy
I just got a new 3D-printer, so I started designing some stuff to print and then I printed a bunch of stuff. I worked on several coding projects that I started over the past couple years. I was working on so many things and getting nothing done, just trying to be busy to occupy my mind. I decided I need to focus my attention on something and AI and Vibe Coding is are thing now so I decided to give it a go
Diving into AI and Vibe Coding
I hadn’t used AI much before. I’d asked it a couple of random questions and used Perplexity.ai for web searches, but I had never used it for programming. So, I decided to give it a shot and I decided to see what all this “vibe coding” was about. Spoiler alert: I didn’t like it.
Helping the AI learn
I didn’t go at this like I was a total beginner to programming. I want to see if I could get AI to build my app with little to no coding from me. I’ve built few websites with PHP, but I’ve never use a framework like Laravel before. I always just did my own thing. I decided to build a blogging cms (content management system) using Laravel and I was going to use Cursor to help me build it.
I built a PRD (Project Resource Document) for the project. I specified all the requirements and use cases. Listed all the frameworks and libraries to be used. I wanted to help the AI as much as possible. I was treating it as if it was a junior developer and I was the senior developer.
Challenges with AI and Vibe Coding
As detailed as my PRD was, the AI still couldn’t build the project without help from me. It generated a lot of unnecessary code. It rewrote entire models to fix a variable missing from the model. When building a request to an API endpoint it created a GET request when Laravel needs a POST request. After the resulting error, I pasted the error message into the chat, and the AI promised to fix it—but produced another GET request instead. Eventually, I had to stop and write the POST request myself. These little mistakes added up, making the process more frustrating than helpful.
Taking a step back
For now, I’m putting my vibe coding experiment on hold. I plan to spend some time learning Laravel so I can better guide the AI in the future and hopefully get more accurate results.
The one thing I learned is that if you layout the model first add all the variables and properties and then ask the AI to make a function to do a specific task it works flawlessly. Its excellent at documenting your code and cleaning up your code.