by ph4evers on 4/1/25, 5:46 AM with 184 comments
Every video is transcribed to get much better transcripts than the closed captions. I filter on high quality transcripts, and afterwards a LLM selects only plausible segments for the exercises. This seems to work well for quality control and seems to be reliable enough for these short exercises.
Would love your thoughts!
by gwd on 4/1/25, 9:37 AM
My advice would be to have languages default to an "alpha" state, and only progress them to "beta" and "1.0" state when they reach certain milestones, as defined by community feedback.
by dicytea on 4/1/25, 9:31 AM
Most of the videos also contain subtitles, which defeats the purpose of the exercises (you can disable the video manually though). Another issue is that some of the words are segmented very unnaturally (e.g. [み][ません]), so it's unclear how you're expected to fill them in.
In the end if what you really want is "real-world content", then you just need to go out there and find them yourselves - they're everywhere.
by hrydgard on 4/1/25, 9:21 AM
Small UX thing: Make it so you can just click a word to fill in the next empty spot, instead of having to drag, similar to when building sentences in Duolingo. Especially when not on a touchscreen, having to drag is pretty painful and reduces accessibility.
by iambateman on 4/1/25, 1:09 PM
Duolingo is tough because they set the expectation that this should be free, so you're walking into a challenging business.
But I think the concept is fundamentally better to connect language learning to something entertaining and relevant. If you can make that work, you have a heck of an app.
You can do it!
by philipjoubert on 4/1/25, 7:28 AM
Requests:
- Split Spanish between Spain and Latin America
- Add difficulty levels (consider speaking speed and vocabulary used)
- Ability to select which topics I want the videos to be about (e.g. science, celebrity gossip, AI)
by rurp on 4/1/25, 8:24 PM
For comparison I tried doing the same with Duolingo and the UX is much, much worse. After multiple clicks and two noticeably long loading screens the first question I got was "How did you hear about Duolingo?" followed by a question about why I'm using the product. Blech! I wanted to try out the product, not help their marketing department.
by pajop on 4/1/25, 2:46 PM
by whycome on 4/1/25, 8:14 PM
1. Change the word “gaps” to “blanks” for English audiences. It fits the common phrase “fill in the blanks” better. And maybe call it that too.
2. Don’t make the blocks move around for the drag and drop. It makes for a frustratingly slow process to find where the word you were about to grab moved to.
3. Don’t just correct a wrong answer, show what the user chose. I had too many moments where I was convinced the answer was what I had selected. Even using the red/green doesn’t quite make sense if you’ve replaced an incorrect answer with a now correct answer.
3. Consider doing the check after all words have been dropped in so they can read the sentence as a whole. And thus give them the chance to change their word choice.
by hk__2 on 4/1/25, 9:47 AM
Edit: also tried in French, and it shows some words in red (I guess that means "invalid" -- please don’t convey information with color only) although they are correct: https://app.fluentsubs.com/exercises/cm8y1o6d5002s8v1p2h0m2f...
by Vinnl on 4/1/25, 8:24 AM
by tom2948329494 on 4/1/25, 12:04 PM
Also, choosing an input method felt tricky. I hadn’t used the product yet, so I didn’t really know what to pick or what would work best for me.
Once I got into the app, everything made sense, but it wasn’t clear upfront.
Maybe you could let people start with a default setup and explore the options while using it. That way, the learning happens more naturally and the config step doesn’t feel like a blocker.
by Timpy on 4/1/25, 12:11 PM
This is a cool app, I would have enjoyed this when I was grinding on Japanese back in the day.
by inetknght on 4/1/25, 11:53 AM
by sergiosgc on 4/1/25, 5:16 PM
by JackYoustra on 4/1/25, 8:30 AM
by anotherpaul on 4/1/25, 7:38 AM
by mrwww on 4/1/25, 1:12 PM
by vincvinc on 4/1/25, 7:31 AM
by slumberlust on 4/1/25, 6:23 PM
by hobofan on 4/1/25, 9:06 AM
by owenpalmer on 4/1/25, 4:31 PM
by mitthrowaway2 on 4/1/25, 7:53 PM
https://app.fluentsubs.com/exercises/cm8v909oq00fj9x1kztl1ez...
by gwd on 4/1/25, 9:17 AM
What are your long-term plans with this? I'd love at some point to be able to combine something like this with an algorithm I'm working on called Guided Immersion.
Basically, the system tracks what words you know and don't know, and so could tell you how hard a given sentence is for you. And it also tracks what words it would be useful to review and/or learn (spaced repetition and frequency analysis), to tell you how valuable a sentence would be for you.
The algorithm is generic and can be adapted to any language; right now it's been adapted to Mandarin Chinese, Korean, and New Testament Greek. (Which unfortunately so far doesn't seem to overlap with any of your available languages.) I'm working on an API to allow any content providers to use the algorithm.
Adding this to your system could help focus the content you're showing people to things that they're likely to be able to understand without having to look up most words, and helping them incrementally grow and solidify their vocabulary using the built-in spaced repetition.
Drop me a line if you want to chat at some point -- my email is in my about.
by mcjiggerlog on 4/1/25, 8:05 AM
by mattsouth on 4/1/25, 8:02 AM
by black_puppydog on 4/1/25, 8:22 AM
Question: out of the processing steps you mention - transcription, quality filtering, segment selection, and (I guess) wrong-word selection) are there any truly manual steps? Those would be the ones that prevent you from building this for just about any language that has good transcription available, right?
by nougati on 4/1/25, 7:30 AM
As well, I am learning multiple languages, and noticed that the settings panel seems to be the way to switch between them. I think it's a little unnatural to force a user to do this, but if there's an intention for bookmarking languages of interest for separate collections of videos & transcription exercises I can say I'd be happy to pay, honestly. The pricing itself seems reasonable and I appreciate that I can feel the app out for free.
Interesting project!
by N-Krause on 4/1/25, 10:01 AM
So this is a welcome tool I am definitively gonna check out.
by annienar on 4/1/25, 5:10 PM
by mdaniel on 4/1/25, 2:52 PM
After 4 retries, the spinner finally gave up but it incorrectly said "Sorry, no exercise available for this language today." and not, as it should have, "We were unable to load the exercises. Try again later, or contact support at ${email}"
---
The AppSec-er in me wants to point out that returning the version of nginx that you're using is an antipattern since it enables more targeted attacks if the version has woes; it does it in the error, and it does it in the headers
by Miraltar on 4/1/25, 9:33 AM
by zestyping on 4/8/25, 4:20 PM
by timeinput on 4/1/25, 8:22 PM
It would be nice to limit the YouTube content a bit like not just news, but an option for news in slow French, or something else. At least for me news in slow French is way easier to understand than news in French at 0.5x in you tube.
Maybe it's just my phone, but the dragging and dropping wasn't hit or miss it was mostly broken. On an English speaking video (my native language) filling in three gaps took me like five video repetitions to get the words in place. It made me feel a lot better about my Spanish speaking performance. Just clicking the words like someone else suggested would solve the problem completely for me, but it might be like a "hit box" problem on the words.
by bomewish on 4/2/25, 7:44 AM
by kmos17 on 4/1/25, 11:07 AM
by dzonga on 4/1/25, 2:14 PM
by dvh on 4/1/25, 7:15 AM
Also I'm maybe jlpt4 and the text was too hard, you should let me choose difficulty.
by JetSetIlly on 4/1/25, 10:28 AM
However, I was very confused by the interface at first. I started a with a 3 gap exercise. I dragged what I thought was the correct word into the gap. Listened again, changed my mind but I couldn't drag in my new choice. It was a while before I realised that the correct word had been inserted for me. This was despite me not completing the other gaps.
It would be better if the answers weren't given until the user submits the answer.
by flyinglizard on 4/1/25, 8:53 AM
by sharmasachin98 on 4/1/25, 7:22 PM
by adilmoujahid on 4/1/25, 2:45 PM
I launched a Japanese Kanji Learning App (KanjiMaster.ai) last month, and I chose a subscription instead of a one-time payment.
by whycome on 4/1/25, 7:57 PM
by emurph55 on 4/3/25, 1:22 PM
by sharperguy on 4/1/25, 9:35 AM
by tom1337 on 4/1/25, 9:18 AM
by hombre_fatal on 4/1/25, 3:11 PM
News is good because it is inherently more interesting than any old video vs having to curate a bunch of interesting videos. It's also good that the videos loop—most tools that have tried to sync videos seem to never autoloop which means you have to keep manually playing it which is annoying.
Some improvements:
Increase the amount of exercise videos for the pro subscription—I only see three and only one new 2min video per day. The format is good enough to be a regular learning tool. I'd rather see a wall of pro-only videos when evaluating whether I went to subscribe. You want to give a sense of immediate value via backlog that the user will unlock since the impulse buy is that I get to immediately do a bunch of exercises because I loved the teaser exercise.
I think the ideal is that I like the demo lesson, I register, I click the exercises list to do another exercise, and I see a bunch of paywalled interesting videos that I'll be able to watch&learn, so I pay right there on the spot after clicking a video that I wanted to listen to.
Exercises:
- Alphabetize the word list so they are easier to find. Takes me forever to find words in this kind of setup, same on Duolingo.
- Allow text input even with the word list visible. The exercise customization option would then just be "Show word bank: boolean".
- Let us click words.
by Caduceus1 on 4/1/25, 9:05 AM
by deepfriedchokes on 4/1/25, 7:06 PM
My biggest request would be the ability to slow down the videos for those of us who are beginners.
“Gaps” wasn’t clear to me in the settings initially, but is obvious once you start. Maybe clarify it a little?
Otherwise I enjoyed this a lot! Nice work!
by ivan_gammel on 4/1/25, 8:01 AM
by burningFish on 4/1/25, 8:30 AM
I tried Spanish and Japanese. A tiny recommendation for Japanese: it would be nice to have both kanjis and hiraganas in the same block for the word choices. That way, you can decouple the learning of kanjis from the pure listening.
Great work, really!
by CWIZO on 4/1/25, 9:00 AM
Is there a beginner mode?
by JimmyBuckets on 4/1/25, 8:17 AM
by ImPleadThe5th on 4/1/25, 1:20 PM
by gokhan on 4/1/25, 8:53 PM
by matwood on 4/1/25, 11:28 PM
by palata on 4/1/25, 2:01 PM
I'm curious now: how do you transcribe the videos? And how do you align the transcript with the video (in terms of timing)? Are there libraries doing that?
by xattt on 4/1/25, 4:15 PM
by readthenotes1 on 4/1/25, 7:58 AM
So there was no way to play the video.
Also that blinding flash of white when it starts is unnecessary cruelty
by skynetv2 on 4/1/25, 6:33 PM
by joo2024 on 4/1/25, 10:41 AM
by axpy906 on 4/1/25, 1:29 PM
by stephankoelle on 4/1/25, 8:26 PM
by dionian on 4/1/25, 12:36 PM
by gniv on 4/2/25, 6:48 AM
by ed_db on 4/1/25, 9:30 AM
by IntStorage on 4/1/25, 2:03 PM
by pjc50 on 4/1/25, 8:34 AM
by bawis on 4/4/25, 2:44 PM
by scrollop on 4/1/25, 10:39 AM
by kstenerud on 4/1/25, 9:04 AM
by tifik on 4/1/25, 12:03 PM
by a_c on 4/1/25, 9:25 AM
by nathell on 4/1/25, 10:19 AM
I love the concept and the execution. This is a rare instance of a Show HN that I not just admire, but can easily see myself using regularly and paying for.
Please, please monetise this in such a way as to avoid enshittification.
by initialg on 4/1/25, 5:47 PM
by KerryJones on 4/2/25, 1:19 AM
by stuaxo on 4/1/25, 10:00 AM
by IdontKnowRust on 4/1/25, 10:56 AM
by preciousoo on 4/1/25, 10:33 PM
by _qua on 4/1/25, 1:42 PM
by madduci on 4/1/25, 9:40 AM
by bomewish on 4/2/25, 8:20 AM
1) Let us keep the right sidebar permanently out, and DON'T grey out the rest of the screen. I want to be able to click on target language words and immediately see them. Like, you've given us the translated sentence, but I can't see which word is which;
2) Colour _the same words_ in both languages when doing mouseover;
3) Or just highlight BOTH as we're listening [but note issue below!];
4) Make the keyboard use a bit more intuitive - i.e. left/right obviously means "go back or forward in the video/audio", but now I have to CLICK on the yt video again to get that behavior. It should be auto so I don't have to do that. Similarly, I want to click on a word to know it's meaning, but then go back to space->pause behavior. Rn clicking a word breaks that. Just adds friction to users.
5) Consider yt-dlp to save the videos so if we are studying one, and yt pulls it, we can keep using. Maybe for the roadmap.
6) Consider allowing us to add words to vocab -- and which vocab -- directly from mouseover [without clogging up UI - not sure there]. Right now it's a bit convoluted [right sidebar, which again should be permanent and integrated, not greying out the main screen - but even if that was fixed, that's a lot of mouse movement]
6) Handle idiomatic language issues better. You'll probably need another LLM pass/method for this, but IT'S a BIG ONE! Languages don't map 1:1 obviously, so for example this one:
https://app.fluentsubs.com/stream?v=cm8mnqrqe084ervb0mi6a4sa...
"genommen" was translated as "taken" <- means nothing.
I dump into 4o and it explains
In the phrase „genau genommen“, the word „genommen“ is part of a fixed idiomatic expression and doesn't translate literally as "taken."
„Genau genommen“ means "strictly speaking" or "to be precise."
So the full sentence:
„Wir sind heute wieder auf der Straße unterwegs, genau genommen auf dem Flohmarkt…“
translates to:
"Today we're out on the street again — strictly speaking, at the flea market…"
It’s specifying or narrowing down what “on the street” means in this context.
**
So you'll need to pull out these idiomatic phrases and then make sure they can be analysed as a single unit, so to speak. Learners are gonna have to be acquainted with those, and now the workflow is obviously broken.
Basically just get a model to bundle them and then in the sidebar on the right that has like "drill into X" you've got the PHRASE as a unit of analysis.
by MichaelGlass on 4/1/25, 3:45 PM
by anon1094 on 4/1/25, 8:41 AM
by littlekey on 4/1/25, 6:42 PM
by iamkonstantin on 4/1/25, 7:49 AM
Also, your page needs to disclose any content filtered by or generated by a model.
by dataengineer56 on 4/1/25, 8:54 AM
by facile3232 on 4/1/25, 8:55 AM
by latexr on 4/1/25, 10:12 AM