Debugging my Mandarin
I've been meaning to learn Mandarin for years. The shelf says so: five textbooks, two graded readers, none of them past chapter three.
The apps went the same way. Duolingo streaks died in week six. HelloTalk faded once the novelty did. Now ChatGPT talks back in real time, which makes it the best practice partner I've ever had, and I still don't open it on a schedule.
So the problem isn't tooling. The problem is that studying is a discipline task, and my discipline is already spent on builds. Every evening ends at a terminal.
The suggestion
LittleBird noticed before I said it anywhere. It's an ambient monitor I run: everything on the screen, watched and remembered, across every project at once. I use it to catch ties between projects I'd miss on my own (I want to build my own version one day, so the telemetry stays home).
Its suggestion: stop studying Mandarin and start debugging it. It called this a technical inversion. Take the habit I can't keep and rebuild it as the thing I can't stop doing. Which is running pipelines over data.
That landed. My days are already transcripts, correction loops, error ledgers and dashboards. None of it aimed at Mandarin. Yet.
The loop
Practice happens however it happens: a live session with ChatGPT, a call, me reading out loud from one of those untouched books. The loop doesn't care. It just needs audio.
The audio gets transcribed on the Mac with Whisper. Why local? The practice tape is mine and it's embarrassing, and that's the same reason everything else here runs local.
The transcripts pile into a corpus. Sound familiar? It's Murmur's shape again. Murmur measures how I write English from a corpus of dictation. This measures how I break Mandarin from a corpus of practice.
Then a correction swarm reads every transcript. Small agents, each hunting one class of mistake: measure words, dropped 了, tones mangled in pinyin, word order that's essentially English wearing Mandarin clothes. I already run the swarm pattern for research (that's Swarm). Pointing it at grammar is a config change.
Every repeat mistake gets a ticket: first seen, last seen, how often. My grammar gets an issue tracker. Fluency is just a count I can watch go down.
The corrections come back phrased the way I'd say them. Murmur's Voice Card holds how I write, so the drilled line sounds like me and skips the textbook politeness. I'll memorise sentences I'd actually use.
The read-back? That's the part that doesn't exist yet: the corrected line, in Mandarin, in my own voice. That needs the spoken voice clone that's been sitting on my planned list for months. Until it's built, off-the-shelf TTS reads the corrections instead. However the inversion finally gives that clone its first real job, and the folder of my own voice samples I've been keeping means the training material is already waiting.
Most of the parts already exist. Meeting AI Assist has the two-channel capture and the on-device speech recognition. Swarm has the crews. Murmur has the card. The build is mostly assembly, and that's the whole trick: every piece was built for some other reason, and the habit gets to ride them.
Why this one might stick
I don't have to want to study. I have to want a number to go down, and I want that every single day of my life. The pull that runs the other projects starts running this one. Fluency shows up on its own. Sideways.
What kills it? Me building the pipeline and never speaking. Building tools is more fun than using them and I know that story well.
The design answers this: the pipeline starves without sessions. No sessions, no transcripts, and the weekly ledger reads zero. A skipped week shows. My tenets call that failing loudly and I think it applies to habits as much as code.
What it's worth beyond the habit
I do SEO from Hong Kong. Search here was never one engine: it's Google and Baidu, English and Chinese, with AI answers now layered over both. A consultant who can run the analysis in both languages can build search strategies that hold for Google and Baidu at once, across the whole Greater Bay Area. Few can. I want to be one of them.
The transcripts also double as my first Chinese-language corpus, and the swarm doubles as my first Chinese-language pipeline. The habit trains me and the tooling trains my stack.
Where it starts
None of this is built. That's on purpose. This essay is the spec, published first so the results have something to be measured against.
What ships first? Capture, local transcripts and one swarm pass over a week of real sessions. Then the ledger with actual counts in it. Real ones. Correction quality is its own measurement problem and I don't trust it yet, so the first write-up will include what the swarm flags wrongly.
The build goes to Claude Code like everything else here. This essay went through the Voice Card like everything else here.
Have you tried making a language stick by building tooling around it? Let me know how it went. I'll post the first ledger either way.