Vibe coding for fun and no profit

I wrote my first programme at 9 on an Olivetti PC1. Now anyone can build an app by talking to an AI. But when everyone solves their own problems, who's left to solve ours?

Vibe coding for fun and no profit
Photo credits Gammitin Ben

I first wrote a programme using BASIC on an Olivetti PC1 when I was 9 years old. It had a black and green screen, and beeps and bops that we would call music because it was the 90's.

My best friend at the time was Gustavo, his dad worked in some kind of IT, and he had a computer too. I asked him to teach me, and he would show up every Saturday morning, and I would be up earlier because he'd be there and we would do something new.

I wanted to programme, so he showed me BASIC on DOS.

You have to number the lines otherwise it won't work, then you can tell it to go back to another line!

My first computer programme was a password gate, because of course, a 9-year-old has millions of important things that nobody else can know!

10 CLS
20 PRINT "Password:"
30 INPUT PASSWORD$
40 IF PASSWORD$ = "SECRET" THEN GOTO 70
50 PRINT "Password errada!" : GOTO 30
60 PRINT "Olá Bruno!"
70 END

We did other things, like quiz games, and making the beeps and bops sound like the tune of the movie "Close Encounters of the Third Kind".

I don't know what my parents were thinking back then, but today, I think they would be wondering if they weren't wasting money and raising a spoiled brat. (I had more than a few tantrums.)

Today, I still have fun when coding something. It can be trivial, or it can be one of those scripts that will save me 4h a month running reports for clients. Or it can be fun like the "Crypto Novel" game I built on the old website.

Once, I wrote a small Mac script to prank my coworkers who forgot their laptops unlocked. It would speak to them, change their wallpaper, or start playing Ruth Marlene. Don't click on that.

In all this time, I never had an actual programming class. I learned on my own and honed those skills during the COVID quarantines.

I Heard Everybody is doing that vibe coding thing now

Blogs made it possible for everyone to publish online, Vibe Coding — using AI to generate a script or programme — is doing the same for programming.

Vibe coding is simple to explain. You describe what you want in everyday language – an app, a workflow, a script, a tool – and an AI system writes the code. No syntax. No training. No development environment. Just a conversation.
Neville Hobson @ Studio6

Hardcore developers that score a 10 on the grumpy scale are pointing out all the bad things about the practice. Security problems, half-thought code that grows too fast, and unmanageable strings attached. These things break core principles at any level. And they are right.

I will also add one thing in their favour: even seasoned professionals will not know half of what is going on in code that they didn't write by hand. The brain didn't code it into memory.

For amateurs with no coding background, vibe coding isn't as simple as sitting with an LLM and saying "make me an app that has a preset timer for my tea brew, like buttons one for each kind of tea". And if we keep rambling on, the end result turns into a Swiss army kitchen app that is hard to use because you piled on the sink onto your laptop or phone.

If you want to write an App or even run a script from an LLM, there are some things to setup on your computer. The environment where you code needs to be set up, and sometimes we do this per-project. Ask your favourite AI how to build this kind of environment, and tell it you'll have more than one project to help keep things organised — You're not a 9-year old!

Also, ask it to set up some sort of version system in that environment, you'll thank me later.

If you don't want all this hassle, start with Claude Code. It can create virtual environments or focus on a folder where you want your project.

Okay, but why?

My coolest vibe coded app is a playlist builder. It can connect to my Plex Library, and offers a better experience in finding and ordering tracks. It also lets me download the finished playlist in any format I want. Do whatever you feel like, but make it fun!

The app is available on GitHub.

GitHub - brunoamaral/playlister: A native macOS app for managing Plex music playlists by Claude Opus 4.5
A native macOS app for managing Plex music playlists by Claude Opus 4.5 - brunoamaral/playlister

Like Neville said, you can do this by having a conversation where you explain the problem and reach an App.

If you want something more serious, or just more professional, the path is different.

To get a better result, we need to think through the problem and have a clear definition and specifications of a solution in a SPEC.md text file. And don't expect a few paragraphs to be enough. Start with what you have, then tell your AI to ask questions with the objective of making it more complete. I use the most advanced models for this step.

Once that's done, I switch to Claude Code or GitHub Copilot, running one of the cheaper models. "Read this SPEC.md file and write an implementation plan." I then revise and sometimes pick up important details because of something missed in the first steps or not accessible to the AI.

With a few tests and vibes we get to a decent app, a website, or a game. During a class, we prompted an LLM to recreate Flappy Bird, and it did a wonderful job.

I am going to be rich!

Easy there, Bill. Your family name is not Gates, and you're not even called William.

Developers lost the spell book, but they know a lot that won't fit the current state of vibe coding. Even big companies with seasoned professionals reviewing Ai-generated code have had issues with security and data loss.

What I think may happen is that people and small businesses will build software that fits their use case perfectly. And this is a problem for Open-Source software and for us as a community.

We communicate to tell stories, and we tell stories to talk about problems and their solutions. We bond through stories and the problems that they help us avoid or solve. When that problem impacts enough people, we get to big things like Linux that powers servers across the globe, LibreOffice that gives everyone access to professional-grade software for free.

Millions of us, across generations, have contributed to software that runs on our phones and even our vacuum cleaners. We did that because we all faced the same problems.

A world where everyone can create a hyper-specific app to solve a problem is also one where we share less, or at least where the things we share are not as flexible and re-usable.

You're not going to be rich because everyone else will have their flappy game or amaze-balls app. But we may all end up feeling a bit lonelier and trapped to our AI-overlords; The ones who charge the computation of your vibe-coded dialogue into another coffee timer app.

You're also not going to be rich because anyone can find your app and ask an AI Agent to build one just like it. It's like re-inventing the wheel every freaking time.

We are also seeing that people using AI-Generated code don't contribute as much to open-source projects that they used for their software. That contribution doesn't have to be code, it can come from testing, from sharing what you're doing or helping the project in any other way.

We are all going to die alone, surrounded by cats!

The only way that will happen to me is if the cats plot to kill me. I'm allergic.

Maybe we should focus on tackling the bigger problems. Those that seemed out of reach because we lacked the technical skills. Also, the ones that seem unsolvable because they require re-structuring the way society does something, like scientific research or creating a more even playing field for students across socio-economic backgrounds.

We can start looking for problems worth solving for everyone. Because, not knowing shit is not going to stop you from getting shit done.

And you don't have to learn how to vibe code, but you do need to understand how these tools work and what can be done. Because you can learn to use them now, keep up with the curve, and still enjoy your time painting with water colours to get away from all of this AI Hype. I prefer paper cranes and writing, but you do you!

But no amount of vibes is going to fix systemic problems — the vibe coded tools simply empower non-developers for the first time. Systemic problems require political action that only gets attention when enough of us gather, and only get solved with clear communication and negotiation. It's a good time for PR.

You've probably guessed where this is going.

This is about Gregory-MS again, isn't it?

Gregory-MS was not vibe-coded, but today it is fairly simple to build one if you understand all the requirements that go in it.

Yes, building the project was my way to build legitimacy while at the same time solving the problem of too much information about Multiple Sclerosis. It did not win me a seat at the table where the neurology community decides priorities. For the simple reason that an App isn't enough to shake systemic dogmas.

That's also why lately I have been gathering allies and ambassadors to level up and tackle three problems where I have skin in the game.

  1. Keep patients informed about clinical trials and developments in Neurology
  2. Solve the information overload for doctors and researchers
  3. Nurture scientific discovery by bringing together people from different areas

This new project starts by including Alzheimer's Disease and 3 new areas dedicated to researching how the brain regenerates.

What we need now is for people to come together. To ask more questions, to challenge assumptions, and to help move resources away from big pharma and closer to society where priorities can be defined by the potential impact in everyone's well-being.

AI can create an app, but only Humans can create hope.

https://gregory-ms.com/

Photo credits Gammitin Ben