Technology / Artificial Intelligence

Vibe Coding: How I Built a Game in a Night without Really Coding

“The hottest new programming language is English”
— Andrej Karpathy (@karpathy)

So, there’s this new thing buzzing around the internet lately: vibe coding. The term was coined by AI expert and Open AI cofounder, Andrej Karpathy. It’s basically using AI tools to build software and letting AI tools write the code for you; while you focus on the idea, test it, and vibe your way through the process. I actually came across the term on a random LinkedIn post that popped up in my feed a while back. I can’t even remember who posted it, but the term stuck with me.

I hadn’t touched real software engineering in years. I used to be a software developer, but I kinda retired from hardcore coding around a decade ago. Although these days I still work in the tech industry and interact with software engineers on a daily basis, I’m more on the product side now — designing features and making sure what we build make sense for users. I still write some SQL, Python, and R for data stuff, but building full-blown apps or games just hasn’t been me for a while.

Friday night after work, I was feeling a little bored. Suddenly, I remembered that LinkedIn post about vibe coding and thought: “Why not try this vibe coding thing everyone’s talking about?”. After reading some articles, I opened VS Code, prepared GitHub Copilot, and started vibing. One story point later (around 4-5 hours in my scrum team’s term), I had something playable: a simple, traditional little game where you control a basketball!

The Game: Roll, Jump, Repeat!

Remember that old Nokia game Bounce? It came pre-installed on many Nokia phones in 2000’s and was a classic time-killer. That game was the idea for this little project, I wanted to recreate that simple joy and vibe coding seemed like the perfect way to do it.

The concept was simple. A side-scrolling game where you play as an orange basketball. The ball can move left and right, and of course, jump. You try to reach the finish line on the right side of the screen. On the way, there are sharp spiky obstacles to avoid and green springy pads that help you jump higher. Each level gets harder with more spikes.

The game was built in HTML5 Canvas and Javascript. I didn’t write the code from scratch. I just told Copilot what I wanted in English, like “make the ball explodes when it touches the spikes” or “create a spring that makes the ball jumps higher”. Then, Copilot wrote most of the stuff. Not always perfect, but surprisingly decent.

Try the game here if you’re curious to see what came out of a few hours of vibing with AI.

Bola: Roll, Jump, Win!

Now that I’ve got a working prototype, my brain is already spinning with ideas:

  • Make movement more realistic: Refine the physics, like adjusting acceleration when arrow keys are pressed and released, and adding a subtle bounce effect when the ball lands. (Shoutout to Fandi for pointing that out during a quick playtest!)
  • Leaderboard: The classic way to boost motivation and encourage a little bit of competition.
  • Turn it into a mobile app: Package it for the Playstore and App Store.
  • Add a data tracker: I want to log things like how many times people die, how far they get, etc. Good for improving the game.

So.. What’s It Like to Vibe Code?

Honestly, it was surprisingly fun.

As someone with outdated tech knowledge but still want to build tech stuff, vibe coding enables me to focus on the creative side: describing what you want to build, testing the output, and tweaking things until they work. It’s less about perfect syntax and more about steering the overall direction of the project. I spent more time thinking about how the game should feel, and less time figuring out the syntax.

However, the code it produced sometimes felt like it was written by an entry-level programmer. Some parts needed clean-up, optimization, and debugging. This is where my old coding experience helped a lot. I could spot bugs Copilot missed, cleaned up bloated code, optimized loops, and guided the AI to try a different approach when something didn’t work. So even if AI did the heavy lifting, my coding brain still played a big role.

Some Reflections

Reflecting on the experience of vibe coding, especially after being out of the hardcore development loop for nearly a decade, gave me a lot to think about. While the process felt fresh and fun, it also highlighted a shift in the way digital products can be built today.

1. Faster Iteration

As someone in product, this part really stood out. I was able to go from idea to working prototype in just one evening. Quick iteration is very powerful in product discovery and this approach is a huge boost for creative thinking and validating ideas early. You can try out a concept, test how it feels, and get instant feedback before committing to a full build.

2. Creativity Comes First

Since I didn’t have to worry about every little line of code, I could spend more time on ideas. What’s the player experience like? What would make this more fun? What makes the game satisfying? What kind of feedback should players get? Instead of getting stuck in technical implementation, I was free to experiment and explore ideas. This was probably the most refreshing part of the whole experience.

3. Coding Experience Still Matters

During the process, I wasn’t writing every function or obsessing over every semicolon. But, since AI don’t always get it right, my past experience really helped. I could sense when something was off, optimize overly complex code, and debug issues more quickly. The ability to read and understand code critically is still essential, maybe even more so when AI is writing it.

Final Thoughts

Trying vibe coding was like rediscovering my love for making things. It gave me an easy way to build something fun. Just vibed with a little help form an AI friend.

Will vibe coding replace programmers? I doubt it. This is more like giving programmers a new weapon to build things more efficiently, instead. Or maybe like having a junior programmer who works fast, doesn’t complain, but still needs you to double-check their work.

If you have an idea in your head and some coding knowledge in your back pocket, vibe coding is a great way to bring that idea to life. Even if it’s just a bouncing basketball trying not to get popped by spikes.

Standard

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.