AI-generated illustration titled 'Mary Had a Little Lamb', vintage American comic strip style

Seven Image Generators, One Winner: Making a Thumbnail for Every Song

Part two covered the tool Claude and I built to manage lyrics and images per song. This part is about the actual picture-making — which took more trial and error than the tool itself did. You’d never really used AI image generators before this. What changed? Nothing had needed one. I’d poked at a couple out of curiosity, the way most people have, but nothing in my daily life depended on a generated image. Once I decided the song tab genuinely needed one picture per song — good enough that my daughter would want to look at it — that curiosity turned into something I had to get right. ...

August 13, 2026 · 4 min · VibePapa
AI-generated illustration titled 'Acorn', a forest scene

I Didn't Know What to Build. So I Described the Problem Instead.

Part one was about why the song tab needed pictures at all. This part is about what I actually typed to get there — and why I didn’t know the answer myself before I typed it. You knew what you wanted. Why not just plan the build yourself first? Because I genuinely didn’t know how. I’m not a developer. I know what I want the result to feel like — my daughter looks at a picture, taps it, hears a song — but I have no instinct for how that should be structured underneath. So I stopped trying to design it and just described the situation to Claude instead, the way I’d describe it to another parent, not to an engineer. ...

August 3, 2026 · 4 min · VibePapa
AI-generated illustration titled 'Pearl Rain', ladybugs and a bee on dew-covered leaves

She Already Picks Her Own Stories. Why Couldn't She Pick Her Own Songs?

I want to explain how the song tab in my Kids Player came together — not just the build, but the reasons behind it. Some of those reasons are more about parenting than about code, and I found it easier to lay them out as straight questions and answers instead of one long story. This is part one of five. Your daughter can’t read yet. How does she use an app that’s mostly lists and menus? ...

August 3, 2026 · 3 min · VibePapa

WhisperX: Free, Local Transcription for Audio That Can't Leave the House

Not every recording I transcribe is a Bible teaching or a home video. Some of it is confidential — calls from a counseling hotline, where people are talking about the hardest thing in their life. That kind of audio can’t go anywhere near a paid cloud API. Not because of cost. Because it isn’t mine to send anywhere. That ruled out Whisper’s API and ElevenLabs — the two services I’d already used and paid for — for this particular kind of file. I needed something that would run entirely on my own PC, touch nothing outside it, and cost nothing per file. My PC has no GPU. Whatever I built had to live with that too. ...

July 19, 2026 · 6 min · VibePapa

What I Kept From the Old App: Sessions, a Glossary, and Nothing Else

Rewriting an app from scratch forces a question you don’t usually have to ask: of everything the old version did, what actually deserves to exist in the new one? What Survived Session saving. Every translated conversation gets stored so I can look back at what was actually said. The old app also had a meeting-minutes mode, hiding the translation, enlarging the transcript, and alternating the background color for each recording segment so a long meeting stayed readable instead of turning into one wall of text. That mode carried over into the new web app unchanged in spirit, just triggered by a CSS class instead of a native screen. ...

July 18, 2026 · 3 min · VibePapa

From Two Phones to a Family Archive: The Whole Pipeline

This is the map. If you’ve followed the series, this ties the pieces together. If you’re starting here, this is the whole system in one view — how my daughter’s photos and videos get from two phones to my eighty-seven-year-old mother’s tablet, sorted by month, for nothing per month. The Whole Pipeline [Dad's phone] [Mom's phone] | | Synology Drive auto-backup (over the internet) | | v v [ Home NAS: two backup folders ] <- never edited | hourly check copies NEW files (skips anything already handled) v [ Working folder: the "cutting board" ] | I open a browser gallery and pick the keepers v [ One "Import" button ] - convert videos to H.264 720p (ffmpeg) - resize photos - file into Year / Month by the file's date v [ Growth archive on the NAS ] | served over a free Cloudflare tunnel v [ Kids Player app -> "My Records" tab ] - tap a month - videos play continuously - photos drift by, gently zooming v [ Grandmother's tablet. Daughter's tablet. ] Every arrow except one is automatic. The single human step is “pick the keepers,” and it takes about a minute a day. ...

July 17, 2026 · 3 min · VibePapa

Month Grid, Continuous Play, and a Gentle Drift Across the Photos

A perfectly sorted archive is worthless if the people it’s for can’t watch it. My two viewers are an eighty-seven-year-old and a two-year-old. Between them, they can’t manage menus, can’t type, and won’t tap through a playlist. So the watching part had to be as close to zero-effort as I could make it. The rule I designed to was simple: pick a month, then sit back. Everything after that first tap should happen on its own. ...

July 17, 2026 · 3 min · VibePapa

Skip What You Already Have: Duplicate Detection Without a Database

Here’s a problem that sounds harder than it is. New files arrive on the cutting board every hour. I sort them in passes, over several days. The automatic check keeps copying. So how does the same photo never get imported twice? No database. One small ledger, plus a cheap shortcut, do the whole job. The Ledger Does the Real Work When the hourly check copies a file onto the cutting board, it writes one line in a small record — a plain text ledger I’ve been calling R throughout this series. ...

July 16, 2026 · 3 min · VibePapa

The File System Is the Database

There’s no database behind my daughter’s archive. No table of photos, no index, no metadata store. When the app needs to know what’s in “July 2026,” it opens the July 2026 folder and looks. That sounds lazy. I’d argue it’s the opposite — it’s the one decision that keeps the whole system simple enough for one person to maintain. How It’s Organized The archive is just folders on the NAS: ...

July 16, 2026 · 3 min · VibePapa

One Button: Shrink the Video, Sort It by Month, Done

By this point in the pipeline, the boring parts are done. New files have been copied to the cutting board. I’ve picked out the ones that are my daughter. What’s left is the step that turns “a pile of selected files” into “a browsable month in her archive.” That’s one button. By now the picker has already moved my chosen files into a hand-off folder. In the app’s My Records tab, there’s a count of what’s waiting in that folder, and next to it a button that says, in effect, bring these in. I press it, and the rest happens on its own. ...

July 16, 2026 · 4 min · VibePapa