I tried 'Vibe' Coding - The Results

7/8/202510 min read

// The Idea

The world of software development is changing fast.. Everyone (and I mean everyone) is watching A.I and wondering what it's going to do to their job, code is being written faster because of A.I and developers are constantly looking over their shoulder because they're neck is on the line if a robot can do their job better than they can.

We've (Yammayap) had conversations about it, we've looked at what's happening and we're reviewing things as they happen - the situation changes almost weekly. The thing with A.I coding something is that it's constantly getting things wrong - even Microsoft is using A.I to code and their engineers are having to rewrite full deployments because the computer just isnt getting it.

I'm not a developer and I can't read code. I understand (very loosely) the premise and theory of what code is but ask me to do anything code related and I'm floundering - my skillset with Yammayap is that I'm there to help run the business, I'm letting the skilled people do the skilled things they are paid for. It's like me running a carpentry business - I understand that their using wood to create joints and fancy features but I can't do it myself.

Or can I?

The rise of 'vibe' coding seems to be everywhere at the moment (it does if you're in this world) - the idea that you can speak to A.I and describe what you want the app to do and then A.I will write the code for you - you can have a conversation with agent and get it to write everything, load everything and run it all.

Thats the idea I had.

I play 5aside football on a Monday night with other middle aged men and being the geek I am, at the start of 2025, I started tracking who won their games and who lost - a way of creating a little league table. We've had 30 odd players come and go over the course of the year and whilst some of them play week in and week out, a lot of them come for a game or two and then disappear. I then created a little algorithm which rewarded players based on both their performance but also if they remained consistent by playing more games.

This was all done in Excel and each week, I'd have to open the spreadsheet, add into a table who had won or lost and then.. manually add in various cells (like table movements) to see who was top of the league and who was 'winning' the league that week.

It sounded like the 'perfect' little experiment to convert into a mini-app - changing a spreadsheet which was being manually updated and making it an app online which did all the things I wanted it to do (and more) automatically.

So.... I did. I started that whole process.

// The Tools

I used ChatGPT to create my 'app' - I started everything in a single chat (didn't even open a project folder) and told the agent exactly what I wanted to do - I uploaded my spreadsheet 3 weeks ago and told it that I wasn't a developer, I don't know how to write code but I wanted to make my excel spreadsheet into an app which I could update weekly.

I'm going to try and avoid going too technical in my blog because of two things - firstly, it will be really boring to those who don't know anything about coding and secondly, I don't want to say ANYTHING wrong - I'm not an expert and I don't have the first clue about coding language, the proper way to do things or whether I've done things the right way.

I literally gave ChatGPT full licence to tell me what I should do and it selected the language, the platforms to code in and began telling me how I should structure everything.

Now, I want to say that I did all of this on my trusty M1 Macbook Air - this thing doesn't have a fan (they were made that way) because, according to Apple, they don't really get hot and they don't need cooling - well, my Macbook Air did get hot and over the course of the last two weeks, I've pushed ChatGPT to absolute frustration by repeatedly getting it to do (what I now think) are the most simple of tasks in the coding world.

So, I've uploaded the spreadsheets, I've downloaded Visual Studio to start writing the code and ChatGPT gets me to the stage where I've got 'something' running locally on my machine - it helps me get to the stage where I can type in a location 'locally' on my machine and I can see the words 'Hello - I'm running online' - it's checking that I'm getting things when I do certain things it instructs me to do and I'm feeling confident. I'm about 30 mins in and I can see that I'm building 'code' which I can run locally.

I don't know how this all translates into what will eventually become a 'thing' but I'm trusting ChatGPT with everything.

Over the course of that first day, we spend around 2-3 hours going back and forth whilst I'm watching TV and by the end of it, I've got a working 'homepage' which shows a league table but nothing else - we've got the 'app' to load in dummy data so we can assess whether everything looks ok and I have to say, I was pretty confident at this stage that I could build something.

I close down my Mac and think that I'll have all this done in a weekend.... that was three weeks ago.

// The Problem

The next two weeks were long and tough - as I slowly began adding in 'features' to my app and getting it to run locally, I found that the more things that you can dream up (the repeated phrase that our clients use and that I was using with ChatGPT - Can you just...?) the more ways I was breaking the app - I didn't want anything groundbreaking and I wanted something that was pretty secure, I work with developers and I've heard the horror stories online of people who've built something cool only for other developers (who actually know what they're doing) to rock up and break it in a few short minutes because they hadn't considered the security implications.

I don't know anything about how to structure databases and I don't know how to display data online - HTML is a coding language which allows you to display things - it's how websites are often built and thats what I built all my 'front end' UI in - I was editing this stuff fast because ChatGPT could understand things fast when I wanted to change styles or colours but when I wanted the backend, all the calculation, to work properly, that's where we ran into problems.

I think it's fair to say - developers understand how to structure code - they know that setting up a database properly, first time will mean that they have less to worry about when it comes to interacting with that data and they know that once the data is structured properly, they can do pretty much what they want with it but I was coming at it from the wrong end. I was trying to say what I wanted to achieve and then I was getting ChatGPT to work out how it should structure the data and more importantly, what data we should secure.

Lets take one simple example - I wanted to display 'weekly movements' of players based on this weeks results compared to last weeks. Now this sounds simple but it's what caused me a huge headache in the early days. When you're looking at that type of data (or not in my case) you can assume that you just need to know what position a player was last week compared to this week and the offer up a 'movement' icon to see if they've gone up or down.

But it's not that simple because what happens if last week was a bank holiday and no-one played? Then what - you fall foul of either everyone moves or your whole database is broken. Also, what happens if some of the players from last week didn't play this week? Then what.

So the database needs to understand and record players, assign them id's - then it needs to record the date of the previous game, then it needs to know what position they were last week and then the exact same parameters should be recorded this week - if they don't play and their score isn't adjusted - the database needs to know what their score is in relation to other players and suddenly, my head explodes.

All of these datapoints need to be structured properly and this, this is what developers are good at. They understand how to structure things and more importantly, why it needs to be structured in that way.

The actual coding and setting up of the app in a local environment (meaning I could run it on my machine and only on my machine) took about 10 days - the rest was all taken up by trying to get it online.

At this stage, I had a working leaderboard with individual stat pages for players (this was a late addition) and a self contained 'admin' area which allowed me to add in games, upload information and edit certain things (like player names or game data).

// The Loading

Once I had a folder containing my app and my HTML templates, I needed to get it 'online' so others could interact with it and from the very start - my very first interaction with ChatGPT... I had failed to mention this. It hadn't realised that I wanted to run this online and share it with others.

This was the point I thought about giving it all up.

I bought a domain name - I wanted it to live on a website which people could navigate to - and I wanted to be able to login from anywhere (even my phone) and update the game data.

This opened up a whole new can of worms because I was creating something else, I needed to make sure that all this data was available in certain ways and more importantly, secure in a different kind of way. I needed my admin areas to not be available to those who hadn't logged in (sounds simple right!?) and I needed to prevent (in a security way) other people from forcefully trying to do things to break the data.

To put it simply, ChatGPT lost it at this stage. My single chat with it was grinding sooo slowly that I would ask it a question and it would attempt to read the chat and then give me a response but the data must've been so large that I could (and I'm not kidding) change the load in my washing machine, hang everything up to dry and switch the kettle on before it gave me a response.

So I did what any other sane person would do - I deleted the chat.

Yep - all that hard work and history... gone.

This is where I got a little bit more structured - I uploaded the code into a project file on ChatGPT along with the HTML templates and I got the agent to review everything. I got it (and it was so much faster in this new chat) to review my code, review the templates and I gave it it's new mission of getting this app online - I wanted it to operate in a new environment and I needed it's help.

This is where it had a new lease of life - gone were the stuffy and slow chats about adapting code and in came the new refreshed ChatGPT who was being pointed at a new target - and it worked..

Late on Saturday night, I got the thing running online, complete with dummy data and I could navigate to a URL and it was there - like it was actually there.

It was a labour of love because I made some mistakes along the way but everytime I encountered a problem, I would copy and paste any error codes and ChatGPT would help me diagnose and overcome everything before offering me a solution.

I was happy - I had something working..

But once again, I'd made a mistake - the dummy data I had in there - how do I get rid of it and start again? Or edit it?

For about 2-3 hours on Sunday (whilst watching the British GP) I went back and forth and went through the final stages of coding with my new online friend and we got rid of it all, started afresh, created new admin users and finally.. actually got the thing running properly.

My little app idea went live after about 14-15 hours of coding and faffing about - two days in coding terms and whilst it's simple, it's mine.

If you wanted to see it - www.middleagedfootball.co.uk - you can, feel free to click around and look at individual player data. I've uploaded some profile pictures to see if that works and it does.. it'll be completed fully (with pictures) over the coming week but I like my little app (which I updated yesterday as we played football) and it gives everyone I play football with, a sense of what they're playing like.

// The Summary

I'm not going to suddenly take our developers place - I may have created something super simple which lives online but I didn't have a clue what I did to get it there, I have no context for whether it's good or bad and I don't know if, in two or three months, it all falls over and I lose everything and even worse, if it did fall over, I wouldn't have a clue what to do.

'Vibe' coding gives you the opportunity to play in a different way - you can speak to A.I as if you're speaking to a developer but you are going to get exactly what you ask for - nothing more, nothing less and it definitely won't do any thinking for you.

Good developers are a rare breed because they ask questions, they probe you and try to understand why things are done the way they're done so that they can replicate what it is you want in code. They see beyond the nuances of what you think you want and they adapt the data to match.

And that’s kind of the whole point, really.

This wasn’t about replacing developers. It wasn’t about proving I could build something better.

It was about scratching an itch and seeing what was possible. It was about taking an idea - a spreadsheet, a hunch, a running joke with your mates - and giving it form.

Making it usable. Shareable. Real.

There’s this weird joy in seeing something you built actually work. It’s imperfect, it’s a bit scrappy, but it does what I hoped it would do: it brings a bunch of middle-aged footballers a bit of fun every Monday night. And that’s more than enough.

I think we’re going to see a lot more of this - regular people building oddly specific little tools that solve oddly specific little problems. Not because they’re trying to launch a startup, but just because they can now. The tools are there. The helpers (in this case, AI) are there and the barrier to building something that works is lower than it’s ever been.

I would urge caution because even now my little app is live, there are still things I haven't done - they won't actually matter but for example, if you log in as an admin user - there is no way to actually 'log out' - all of these things need to be thought of.

If you're reading this and you've got a spreadsheet that rules your life, or a weird side project idea that only makes sense to you - maybe it’s time to mess around and see what happens. Worst case? You learn something. Best case? You build something you’re proud of.

And maybe, just maybe, your MacBook will survive the ride.

(P.s - my little trusty M1 Macbook is alive and well - it made it)