A funny and honest story about bugs, PHP, and how one vanilla ice cream helped me realize that talking to myself was actually my greatest debugging tool.
When people ask how I got into serious software development, they expect me to talk about books, frameworks, or mentors.
But the truth?
It all started with some spaghetti PHP, a weird habit of narrating my thoughts, and a vanilla ice cream that accidentally saved a project.
This is the story of how being “that dev who talks to himself” became my secret weapon — all the way to Kotlin Multiplatform.
🏁 Introduction: Starting with a Stuttering Engine
When I started programming, I didn’t even know what JSON was.
Backend? I only knew the front of the supermarket checkout.
But there I was: final-year uni project — an Android app with a backend built in… pure PHP.
Yes, pure PHP, no frameworks. A real WRC rally on dirt roads with bald tires.
🎙️ Chapter 1: The Dev Who Narrated Life
I’ve always talked to myself. Not just while coding:
“I’m going to the mall.”
“Need to buy that thing.”
“Maybe I’ll swing by and fix that issue.”
For some people, that’s weird.
For me? It’s like hitting the compile button in my head.
Talking out loud organizes my thoughts, calms me down, and helps me see what I’m actually doing — even in the simplest tasks.
“Talking out loud is how I hit the compile button in my brain.”
🛠️ Chapter 2: Singleton… Is That Something You Eat?
First day on my first dev job. They ask me to implement a singleton.
Panic.
“What the hell is a singleton? Is that a design pattern or a dessert?”
Spoiler: I’d already used it countless times — I just didn’t know the name.
Sometimes, you don’t lack knowledge. You just haven’t learned the vocabulary yet.
🍦 Chapter 3: The Ice Cream That Solved a Bug
I was stuck. A stubborn bug had the code yelling at me in gibberish.
Frustrated, I stepped out. Mall. Sunshine. Heat. Vanilla ice cream in hand.
And then… 💡
“AHHH THAT’S IT, F***!”
I yelled it in the middle of the shopping mall. People were startled.
Me? I was euphoric.
I’d cracked the bug.
And the ice cream was still cold.
🧠 Chapter 4: From Vanilla to Multiplatform
That vanilla-powered bug fix? It wasn’t the last one.
Years later, I’d be deep into Kotlin Multiplatform — juggling shared modules, bridging native UI with shared business logic, and figuring out how to keep my brain in sync with Xcode, Android Studio, and reality.
The funny part?
I’m still doing the same thing:
- Talking to myself
- Narrating problems
- Walking until my brain hits “compile” again
Turns out, that weird habit wasn’t a flaw.
It was training — for debugging complex cross-platform architectures and not losing my mind in the process.
💡 That kid debugging PHP in a mall?
He now shares code across Android and iOS using Kotlin Multiplatform.
The tools changed. The brain didn’t.
🧭 Curious how I went from PHP and ice cream to choosing KMP over Flutter?
I dive into that here:
Flutter vs Kotlin Multiplatform: Native Code with a Kotlin Brain
💬 Epilogue: Being Weird Is Being Efficient
I talk to myself. Narrate my life. Solve bugs in the middle of a sundae.
And you know what?
Intelligence isn’t about knowing everything.
It’s about staying curious, being resilient, and learning how to laugh at yourself when you shout “F***” in a shopping mall.
I still debug out loud.
I still learn through chaos.
And that same instinct that led me from vanilla PHP to Kotlin Multiplatform?
It’s still guiding me today.
“If you talk to yourself, you’re not crazy. You’re just compiling life in real time.”
And that is the most human form of debugging there is.
👋 Enjoyed this story?
I write about Kotlin Multiplatform, tech culture, and the messy, funny side of being a developer.
Follow for more, or check out my opinion piece on Flutter vs KMP.