I like building stuff for mobile and the web.
I really like Pingo. I built six growth experiments for Pingo.
The premise is simple: people don't need another reason to study a language. They need more situations where they actually have to use it.
A few things I've built in the past:
Then I tried learning a language myself
At first, I did what a lot of beginners do: spent more time researching how to learn than actually learning.
I was looking for a magic bullet. The answer turned out to be simple — and, in retrospect, obvious:
Just practice.
I put myself in situations where I had no choice but to speak Chinese. If someone needed help translating, I'd volunteer. If there was an opportunity to speak, I'd take it.
My Chinese improved fast — but the biggest change wasn't vocabulary or grammar.
It was confidence.
Once people sensed that I'd find a way around the words I didn't know, conversations became easier. They listened more closely. They gave me more time. And I stopped being afraid of making mistakes.
That's why I really like what Pingo is doing.
Too much language learning has become gamified matching exercises that feel like progress without forcing you to communicate.
I think the interesting stuff starts when you have to speak, make yourself understood, and keep going when you don't know the perfect word.
So I built six of them.
Everything below works.
TestFlights, Chrome extensions and playable demos available — get in touch.
Matt Gordon
P.S. Before Claude Code, I built with React, NodeJS, React Native/Expo, and SwiftUI. Since Claude Code I've mostly been building with plain HTML/CSS/JS, Rails and SwiftUI.
Two things I learned the hard way about language learning — that also make great viral content.
Nobody grows by lifting a weight they can already lift easily. You have to go slightly past what is comfortable, fail a bit, and come back. That is the whole mechanism.
Flashcards are the weight you can already lift. They feel like progress because they are easy, and they stay easy forever.
Every demo below is built to put you just outside your comfort zone.
The best way to learn a language is to create an environment where you're forced to engage with it.
So: six ways to make the language unavoidable.
I built each demo around a hook. Basically what will stop the scroll on TikTok.
Idea #1: No social media until you pay the talk tax
Your social media is blocked. The only way to access TikTok or Instagram is to win an argument in your target language. This is great for shareable, viral content. Strong emotions stop the scroll: people pleading in a foreign language so they can see cat videos.
No social media until you pay the talk tax
No social media until you pay the talk tax
Blocked
TikTok is behind the dog.
You've opened this app 14 times today. Convince me it's the fifteenth.
Round 1
It remembers what you told it yesterday
Fine. Ten minutes.
You won that in 41 seconds and used 3 words you've never used before.
This week
37 arguments won
4h 12m spoken
212 new words used under pressure
9 arguments lost
The losses are the good ones. That's where the gaps are.
“Help, I’m locked out of Instagram until I win an argument in Chinese.”
Idea #2: Textbook
A keyboard where you have to type in your target language to reply to texts. So you're learning Spanish and your mum asks how your first day went. You type “Estoy embarazada,” thinking it means “I'm embarrassed,” and it goes out as “I'm pregnant.” She never knows. You've now written in Chinese forty times before lunch.
Every text you send is a rep
Type your way through the day
🀄 你 type → 🇬🇧 they read → ♾️ every single day
Messages · Mum
Don't know the word?
迟到
chídào — to be late
It'll give you the word once. Then you have to type it yourself before it sends.
Works everywhere
WhatsApp. Slack. Hinge. The group chat.
It's a keyboard, not an app. There's nothing to remember to open.
Today
61 messages
written in Chinese
Longest: 23 characters
New words used: 8
Times you gave up and typed English: 4
“How I learned Chinese just by texting my friends.”
Idea #3: Ad swapper
This replaces the annoying adverts in your browser with useful vocab. The average person sees a few hundred ads a day. That's a few hundred slots someone already paid to make you look at. I built this on top of a real ad blocker, so it's fast and it works everywhere.
After — the ad slot is now a word from your deck
Before — someone paid for that space to hold your attention
It also knows how long it’s been
A week of passive exposure you didn’t have to schedule
Ad Swapper strips the display ads out of the web and puts your target language in the space they leave behind.
“I replaced every annoying ad on the internet with Chinese vocab.”
Idea #4: Sleep + alarm
This plays vocab hypnotically over white noise while you fall asleep. Then the alarm wakes you up with an argument with the AI. The only way to turn off the alarm is a language challenge. Nothing pushes you out of your comfort zone like speaking a foreign language at 6am before you're really awake. Which is exactly why it works.
Learn asleep. Argue awake.
Learn asleep. Argue awake.
Drifting
把
bǎ — to take, to hold
Brown noise · 8h · fades at 02:00
You are asleep.
It is not.
Words are chosen from the ones you got wrong yesterday, repeated at the volume of a radiator.
Incoming
Pingo is calling.
"You said 6am. It's 6am. Tell me in Chinese why you're still lying down."
Alarm dismissed
4 min 12 s of arguing
First word spoken: 06:00:31
Snoozes: 1 (cost you a round)
You're awake now. Genuinely awake.
“Can I learn Chinese in my sleep?”
Idea #5: Disapproving parent
You get phone calls from a disapproving parent berating your progress and comparing you to their best friend's son. He passed HSK 4. He calls his grandmother every week. He does not leave the app open on the home screen for six days. Guilt is the most reliable engine in language learning and nobody has shipped it yet.
Your worst critic, on speed dial
Your worst critic, on speed dial
爸爸
mobile · he does not call twice
Call ended · 20:14
Disappointment
level: high
You spoke for 6m 22s.
You apologised 11 times.
You said 小明 out loud 4 times.
That is twenty minutes of spoken practice you would never have chosen to do.
Choose your critic
Who’s calling?
妈妈 — disappointed, relentless
爸爸 — silent, then devastating
Your old teacher — professionally sad
小明’s mother — smug, unbearable
“I realised I can’t stick to anything because my parents are too nice.”
Idea #6: Mystery game
A still WIP language game.
Talk fast or lose
Talk fast or lose
🗣️ your voice → 👨🍳 the cook → 🔥 disaster
Table 4 · 0:22 left
Two noodles.
One no coriander.
Queue: 6 orders · Patience: dropping
🎙️ listening — say it
You said
两碗面,一个不要香菜
The cook heard
两碗面,一个不要相册
"Two noodles, one without a photo album."
Tones matter. Sorry.
14 served
9 walked out
Words spoken: 231
Understood first time: 68%
Worst tone: 3rd, obviously
Why it works
You're not being tested.
You're being understood, or not.
Nobody has ever practised pronunciation for 40 minutes straight because a flashcard asked them to.
These demos make it impossible to get through a normal day without speaking, typing or reading the language you say you're learning.
They are all built to be visual and a bit controversial, so they are perfect for sharing on TikTok.
All of them end in the same place — the person watching wants to know what the app is. That's the top of Pingo's funnel.
Happy to send TestFlights and demo links for any of these. Contact widget's in the bottom right.
Got a different question? Contact me via the widget in the bottom right
Hi I'm Matt. I previously made viral apps Bufferi.ng and TwikTwok. I used Spotify to plant 42,000 trees. Other projects I've made have been featured positively in Martin Lewis' T.V show (multiple times), Vice, el Pais, Hypebeast, Mail Online, The Sun and loads of other online and offline media.
Contact me via the widget in the bottom right — or put time in my calendar directly.
Book a meeting
Here's some information about my previous projects.
Contact me via the widget in the bottom right of the screen.
Various projects for Suno exploring AI music
Fake a bad connection on Zoom
Twitter + TikTok = TwikTwok
Tell YouTube ads to Fuck Off
Award-winning Ad-Blocker
Use Spotify to plant trees — 42,000 trees planted, 4.2 million+ streams
Tinder for real estate
A new kind of captcha because AI can't be rude
2nd place in @levelsio Vibe Jam






Ryan Hoover
@rrhoover
PRODUCT OF THE YEAR:
A tool to avoid pointless meetings by faking a bad connection on Zoom

Product Hunt
The place to discover your next favorite thing

The Sun
Britain's best-selling newspaper
ZOOM OUT Genius Zoom app lets you fake a bad connection to avoid boring work calls

Gabe Whaley
Founder: MSCHF
haha this is great :)

Vice
Vice
TwikTwok captures a little bit of the joy that Twitter has lost

Rory Sutherland
Vice Chairman, Ogilvy Group
Very naughty

Daily Mail
Most visited English-language newspaper website in the world
Bufferi.ng is a filter that fakes a bad connection on Zoom so you can get out of meetings

Shaan Puri
@ShaanVP
You're a mad man and I like it




PS — this is the game I made for the levelsio Vibe Jam, now on iOS.
It came 2nd out of 1,500+ entries.
Watch the video — it's silly, frantic microgames with an annoying
soundtrack.
Get the alpha TestFlight
here.
If any of these sparked something, I'd love to show you the demos and talk through where they could go.
Book a meeting“He who speaks a foreign language possesses a second soul.”
Johann Wolfgang von Goethe
Drop your email and I'll send you an invite.