Career story

Android beginnings and a meme ringtone

How C# lectures, an Xperia Active, Java books, quiz apps, and one very silly Harlem Shake utility turned curiosity into my first shipped software and first app revenue.

C#JavaAndroid SDKPlay StoreRingtonesCamera API

Highlights

  • Started programming at university in 2011 through C# and HTML.
  • Taught myself Android because Java felt close enough to C# to be approachable.
  • Published multiple Play Store apps, including quiz games and ringtone utilities.
  • Earned my first app revenue from Harlem Shake ULTRA, a meme-timed ringtone and camera flash experiment.

The first click

I started programming at university in 2011. The classes were C# and HTML, which was enough to make software feel less like magic and more like a thing with handles. C# gave me structure, types, methods, classes, the little mental model you need before you can start breaking things on purpose.

Around the same time I had a Sony Ericsson Xperia Active. It was a small Android phone from the Gingerbread era, with a real LED flash on the back and just enough personality to make the device feel hackable. I was curious about how Android apps were made, and Java looked close enough to C# that the jump felt possible.

Learning Android the scrappy way

So I did what made sense then: Android coding books, long YouTube bootcamp videos, and a lot of trial and error. Every working screen felt like a win. Every crash was a tiny mystery. The Play Store was close enough that a student could build something, upload it, and suddenly have software living on other people's phones.

My first apps were simple but real. "Who's That Celebrity?" and "Who's That Footballer" were quiz games: images, answers, score, progression, packaging, publishing. Nothing fancy, but they taught the full loop from idea to store listing. That loop mattered more than the individual app.

The meme app that paid

Then the Harlem Shake meme hit. The whole joke was timing: the calm build-up, the drop, and then the room explodes. Harlem Shake ULTRA was built around that exact structure. The app let the user set the meme song as a ringtone and used the phone camera flash when the drop came in.

Technically it was a tiny playground of Android APIs. Ringtone handling meant dealing with media and default sounds. The flash effect meant touching the old camera stack and its torch behavior. Product-wise it was even simpler: take a cultural moment, make a thing that feels funny immediately, and ship while the moment is still alive.

That app made me my first $150 in ad revenue. It was not life-changing money, but emotionally it was huge. Code I wrote had left my laptop, reached strangers, and sent money back. That changes how you see software.

From joke to utility

After that I released Pimp My Ringtone, which took the useful part of the meme app and generalized it. Instead of one song and one joke, it let users pick any song as a ringtone and pair it with the camera flash effect.

Looking back, that is probably the first time I did a small version of product iteration: notice which part of a silly experiment people understand, keep the useful mechanism, remove the one-off context, and turn it into something broader.

What stuck

Those apps were messy, naive, and extremely useful to me. They taught me how to learn from docs, ship under uncertainty, publish publicly, listen to feedback, and use the hardware in front of me creatively.

Most importantly, they made programming feel like a way to make things real. That feeling is still the through-line: curiosity first, then tooling, then a shipped thing someone can actually touch.

Back to blog