On my recent vibe coding experiences building a web site and a spotify app using Copilot and Claude, October 2025. Here’s what I did and what I learned.

Computer and code

I recently took a vibe coding approach to try and do two things:

  1. build a simple web site / blog using Microsoft Copilot
  2. write an app to extract information from Spotify using Claude from Anthropic.

Why? For some time I had these two projects in mind:

  1. Go back to the days when a blog — web log — was nothing more than a simple html page.
  2. Programatically built Spotify music playlists vs doing it in the Spotify app.

My main constraint was do it quickly: it was meant to be fun. So don’t spend all weekend getting up to speed on APIs and HTML and CSS: just see what I could do aided by A.I.

First up, to build the web site, I started with Microsoft’s A.I. Since I had some requirements of what I wanted the web log to look like, I told them to Copilot and had it built me the one page blog web site. It helps to be clear on your requirements, but I found that I only needed a few of them to start with. As I went along, new requirements would come to me (e.g. the ability to add photos from the Internet) and I would tell Copilot to now incorporate these new requirements and give me a new web site. My experience vibe coding is that there is a lot of back and forth in order to be effective. As well, there were things that I could just manually do by hand, like add a background tile and change the picture on the header, so I eventually I bailed on using Copilot and finished it by hand. You can see the result here. It’s just what I wanted.

What makes things better was that I asked Copilot to write me a python program which would allow me to easily add to the blog and then push it to AWS. That was a great new addition. Now I can just enter a line on the command line and the blog gets updated.

All in all a very successful project.

As for my Second project with Spotify, I switched from Microsoft to Anthropic. At first Claude produced great code: I asked it to build me a UI that allowed me to type in the name of three songs and then take these songs, use Spotify to build me a playlist built around those songs and lo and behold it did. Things went downhill from there. Much of the code, while long, had numerous errors. I would provide the errors to Claude and it would correct things. The code did get better, but after 30 versions, it was time to call it quits. Instead I took small chunks of the code and using VS Code, manually tried to determine why it was not working. I was able to ultimately nail it down to one Spotify API call. And why wasn’t it working? Because Spotify disabled access to it in 2024. Did Claude know that? I don’t know. It certainly didn’t act like it.

All in all a very unsuccessful project.

What did I learn for this? What would I recommend to you?

  • I have been most successful vibe coding when I get the AI to code in small chunks. Give it small requirements and see if it can successfully do them. Then build up the chunks. That was the case in Copilot. With Claude I took the big bang approach, and then spent lots of time debugging. Eventually to discover the problem, I went to the small chunk approach manually.
  • A.I. is great for grunt level coding. Writing python code to loop through input and extract data under complicated conditions is something I hate to do. A.I. does it better and quicker than me. Again, it’s like using a mixer in the kitchen instead of your arm. It’s impressive to do things with your arm, but the mixer is fine.
  • A.I. is great for fussy coding. One thing I like about coding HTML and CSS using A.I. is I do not have to remember how to get the divs done and which CSS code I do for certain colors, etc. I just tell the A.I. and it does it.
  • A.I. has replaced my templates. I used to have a fair amount of code templates, and when I would start a project, I would get out a good template. When I didn’t have a template, I would often times spend hours going through old code trying to find an example to use as a template. Now I just get A.I. to give it to me.
  • Know when to bail on using A.I. and start doing the work yourself. I think of A.I. as a power tool: it let’s you do things fast, but for the detail work, you need to get in there with the hand tools and do things manually.
  • Make LOTS of backups. Backup your prompts too if you can. I have gone down a certain path in vibe coding, forget to do a backup, and it’s been a mess. As well, at times the A.I. will start to produce bad code. If you version control things, you can go back to a copy from an hour ago that did work and start again.
  • Most LLMs do a pretty good job of coding. I’d recommend Copilot because it is easy: it’s integrated into my Microsoft tools. The results from Claude were good too. I suspect as things advance, the code that comes out of all of them will get better and better.
  • I am not afraid of forgetting how to program in python or html any more than I was afraid of forgetting how to program in assembler when I moved on to C. Os using SQL to work with data rather than hand coding PL/1 code to do things. Or using Java and JDBC. The goal for me is to get my results via some form of coding, and if I can achieve that faster with a higher level of code combined with greater abstraction, I am fine with that.
  • The better you already are at coding, the better your chances of success. I have never had A.I. completely build my code. I get to 80-90%, then do the rest by hand. I am fine with that: I literally save hours every time I do this vs my old approach of using templates and old source code. If you have to depend on A.I. to do 100% of the coding, I suspect you will have more chances of failure. Also, if the code runs successfully with some inputs but fails with other inputs, having debugging skills will make a difference.
  • YMMV. These are my experiences based on these projects. Your experience using A.I. to assist with coding your project may be wildly different than mine. I do hope you have a good/better experience.

Thanks for reading this. I hope it helps.

P.S. When I talk of vibe coding, I am using the definition used by my current employer. The opinions expressed above are mine only and not necessarily those of my employer.