Also I'm maybe jlpt4 and the text was too hard, you should let me choose difficulty.
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!
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)
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!
Also, your page needs to disclose any content filtered by or generated by a model.
So there was no way to play the video.
Also that blinding flash of white when it starts is unnecessary cruelty
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?
I focussed first on European languages as I'm learning French. But I'll put some more effort in improving the Japanese experience since it seems to be very popular.
> 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.
Would a language selection box at the top be enough? Or do you mean a more elaborate way to switch between languages?
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!
> Was this related to the amount of content available?
Yes, Portuguese is available in the app, but I only transcribe the Easy Portuguese videos for now so I don't have a lot of content available at the moment.
I only checked English, French, Dutch and German and assumed that Spanish would be OK. Was this for drag & drop. And do you maybe have the video? Maybe I need to tune the quality threshold specifically for Spanish videos.
Otherwise, great work on a good use of existing technologies to provide meaningful educational benefit for yourself and others!
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.
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.
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.
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.
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...
So this is a welcome tool I am definitively gonna check out.
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.
I picked news channels because they often have short well spoken videos.
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.
Of the five languages I have configured in KDE, three of them are country-specific. So I use the flag indicator, which is far quicker for me to locate and identify out of the corner of my eye than would be a text label (which would require using the retina and thus more time and attention).
ps. video shouldn't loop as default, it's annoying.
You would be far more likely to understand any given English speaking person in the USA than in England. It should really be called American at this point.
Re, looping; there are controls to turn it off. You aren’t paying attention one bit. If you’re going to say things, at least be diligent in the things you are going to address.
As for the Union Jack: the UK has at least 3 rather different languages (English, Gaelic, Welsh), possibly a few more depending on how you count the different kinds of Gaelic.
Using a country flag to represent a language has always struck me as being silly. Only rarely do they map 1-to-1.
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.
This is a cool app, I would have enjoyed this when I was grinding on Japanese back in the day.
https://www.bbc.com/travel/article/20180206-the-tiny-us-isla...
Also, for what it's worth:
> Some people have characterised Tangier’s way of speaking as ‘Elizabethan’ or ‘Restoration’ English, but that’s nonsense. Languages aren’t static and the Tangier dialect has changed a lot because of its isolation. It’s a distinct creation of its own," Shores said.
[0]https://www.bbc.com/travel/article/20190623-the-us-island-th...
To use your example, there are plenty of Irish people who speak English but would resent being forced to identify with the Union Flag.
For another example that is very relevant today, there are plenty of Russian-speaking Ukrainians who hate Russia. Using the Russian flag to represent them would at best be distasteful.
[1] https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes
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!
But of course there are other ways, so a "fill in the blank" question with two gaps right next to each other is generally a bad idea.
Mixed with, yes, the variant spellings and word choices (e.g. chips/crisps/biscuits) that make it apparent to British English readers when something is American.
I launched a Japanese Kanji Learning App (KanjiMaster.ai) last month, and I chose a subscription instead of a one-time payment.
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
Yes, the server got knocked out. I was not expecting this much traffic hah. I already upgraded it but I have an NLP server with 10 language models loaded and it seems to be grinding CPU resources.
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.
EDIT: Of course, it doesn’t matter one bit in the grand scheme of things—feel free to ignore my pedantry over a silly joke :-)
That said, I do think betting against Duolingo will pay off long term. But the put options are so expensive... probably better to just short the shares
At the end of the day, whether it's effective or not, Duolingo sells the feeling that you are learning a language to people. Winning a competition with Duolingo means doing better at making people feel like they are learning a language -- the strategy to win against Duolingo probably involves watering down the learning even more, to better sell the feeling.
A good way to think about it is look at some organization that wants to be effective at actually teaching its employees a new language, like the state department:
https://www.state.gov/foreign-service-institute/foreign-lang...
20 hours a week of intensive instruction.
Spanish 30 weeks Cantonese 88 weeks Turkish 44 weeks
This is what it actually takes.
> Split Spanish between Spain and Latin America Will do!
> Add difficulty levels (consider speaking speed and vocabulary used)
I'm working on splitting it up in easy/normal videos. That should be do-able to assess.
> Ability to select which topics I want the videos to be about (e.g. science, celebrity gossip, AI)
I'm thinking about creating a browser plugin where you can tick a box to automatically import it into Fluentsubs. Or create an exercise from an existing video. It will take minutes before it is fully transcribed but it can be a nice way to prep your own content without people blaming me that I serve biased content.
I'm not sure though if people are willing to install browser plugins. I'm always a bit weiry with plugins that are invasive on websites like YouTube.
I'm working on improving the feedback. It is a bit confusing since some words are very similar so you have no idea what went wrong.
I checked the Italian video. But I don't fully understand: https://imgur.com/a/YcF3dnb . It doesn't pick qualcuno as a filler word. Is it still broken?
I disagree that it's an illusion. People are learning a new language when using Duolingo, but 5-10 minutes/day means it will take a long time before they are proficient. Someone else linked to the state department website showing 550-690 hours of learning required on the English adjacent languages.
I focussed a lot on European languages at first so the support for the Asian languages is a bit lacking. The only thing I did so far was changing the font and increasing the font size. There is a lot more to do! Thanks!
It's like cutting gaps out of English sentence like this: I'm [go][ing] to beat the shit out of that guy. Sure we know the logical way to break down 'going' is 'go' and '-ing', but it should be one single gap anyway.
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!
https://app.fluentsubs.com/exercises/cm8v909oq00fj9x1kztl1ez...
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.
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.
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.
Duolingo is for people that will never travel for more than a weekend once every other year, and its fine that its entertaining for them or their last minute crash course to feel less ignorant. Lately I've seen it used by people that want to feel closer to their roots.
But I don't think people actually engaging with other cultures and going abroad to do so are still using this. On the other hand, LLM's are really good at slang and colloquialisms, something neither Duolingo or an in person teacher will reveal to you.
As for English, the United States has far and away the largest number of native English speakers.
Not that I think the stars and stripes has any more right to represent “English” as a concept any more than the Union Jack. If you’re going on origin, why not the flag of England instead?
I'm just very unsure whether it's possible to design an effective language learning program that is "engaging" in the way that Duolingo users want it. At the end of the day, you should feel engagement from using the language (and seeing yourself improve) and not from external gimmicks.
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.
> If you’re going on origin, why not the flag of England instead?
I actually really like that idea. The US and UK flags seem to represent more culture than language.