Show HN: A New Way to Learn Languages (langturbo.com)

19 points by sebnun ↗ HN
Hi HN, I’m Pablo, I built this application to learn languages using podcasts:

https://www.langturbo.com (No signup required)

There are a lot of tools to learn languages, but most of them focus on beginners (understandably so, that’s where the money is) but not many exist that target intermediate or advanced learners. The ones that exist make you find content on your own and then import that into their apps, which can be tricky when you don’t know where to look.

LangTurbo has a unique curated database of podcasts by language (some even have dialect labels) that you can browse by topic, or search by keyword, so you can discover content and learn in the same place.

Having a good language learning method is important, but having the motivation to keep learning is much more important. Some tools like Duolingo try to keep you motivated with “gamification”. I don’t like that, I think it gives you a false sense of accomplishment without real improvement. The way LangTurbo tries to keep you coming back is via the content itself. My goal is that you discover some podcast that interests you enough to keep coming back to listen to new episodes, the same way you listen to podcasts in your native language. I wrote more about the method here [1]

The app also lets you learn without looking at the screen, you can listen to a podcast in the background and for each sentence you will first hear the translation in English and the native speaker after. I call it “poor man's Pimsleur mode”.

Some things I learned while building the app:

* Currently the best SRS algorithm is FSRS, the app uses this algorithm implemented in SQL (thanks to [2])

* Working with Expo (React Native) was a great experience, the app has web, iOS and Android (coming soon) clients sharing most of the codebase.

* A lot of non-English podcasts have a feed with English as the language. I had to build a “probe” to get the correct language of a podcast, based on the text and audio of the feed.

* Podcasts use “Dynamic Ad Insertion”, that means the content of the audio can change according to the request IP or the time of the request.

* Still amazed by all the things Postgres can do

Let me know what you think, happy to answer any questions.

[1] https://www.langturbo.com/blog/langturbo/getting-started

[2] https://github.com/sivers/srs

55 comments

[ 4.7 ms ] story [ 109 ms ] thread
This is cool! But, the language list contains “Chinese,” which is not an accurate name for a spoken language. I assume this is Mandarin. I would like Cantonese.
Thanks. Both Mandarin and Cantonese are shown under "Chinese". I'm working on improving the classification, so that each podcast's language is shown more accurately.
On a related note, I do want Mandarin, but I'd like to view with the simplified character set rather than the traditional character set.
Quick note on the horizontal scrolling marquee, the text for Chinese (中国人) means Chinese person, not the language, which for Chinese would be 中文. Might want to check the other ones too!
Thanks for reporting this, I updated the marquee.
Well, that went poorly

click https://app.langturbo.com/?lang=french

click https://app.langturbo.com/discover/episodes?id=7&title=LangT...

click https://app.langturbo.com/player?id=aHR0cHM6Ly9zdG9yYWdlLmdv...

observe it speak in Japanese (I don't know enough Japanese to know if it was reading the on-screen text in Japanese or what it was saying)

Hey apologies it went poorly, If I understand correctly, you went to the "LangTurbo French" podcast, to the "bonnes" episode and you want the translation of that French audio to be in Japanese instead of English? Sorry if I misunderstood you.
No, that it did speak in Japanese. Put another way, when you went there, what behavior did you experience?
I get it now, I see the audio is in Japanese, thanks for finding this out, I will look into it.
Hey I fixed this if you want to test it again, you can reload the podcast feed and the audio will be in French.
"Pimsleur mode" does not seem to work, I do not hear the translation in English (tried French and Estonian).
Sorry about that, if you're on the web app, can you tell me what browser and OS are you using?
No worries, cool app by the way. This is Firefox on Linux.
I'm trying Firefox on Android, and although I can hear the translation, it is really difficult, mainly because the translation doesn't go exactly paragraph by paragraph and therefore doesn't always properly sync. I suppose with podcasts it would be somewhat difficult to detect paragraphs exactly?

Some cool ideas for the spoken translation - allow the translation to come before the original audio - even better, maybe make it configurable. Imagine being able to hear the original, then translation, then the original again! Another thing that would be great is to hear the translation with different levels of volume - maybe a bit quieter, that way perhaps the brain neurons wouldn't be bombarded so intensively. Also, some quiet pauses between the original and translation would help as well.

Thanks for crafting and sharing this; Japanese podcast transcriptions and translations were very impressive. Are you using whisper or something else?
Thanks, yes it's using Whisper large v3
(comment deleted)
Really like this. It would be nice if the spoken translation did it after hearing the target language.
Thanks for the feedback, I can add a setting option to change that.
It's only X language to English, or is there a way to have X language to Y language? Such as listening to a podcast in Spanish, and having the translation in German? I couldn't find the latter if that exists
At the moment it is only English, but adding more languages to translations/definitions is on my plans.
I hate newsletters, but in this case: Can i subscribe something to get an update when you've more languages available?

E.g. I'd love to use it for Norwegian -> German

I don't have a mailing list at the moment, but I will create one and send product updates to the people that have accounts, so if you create an account with your email I will send updates that way.
This is cool! I like the double sentence structure. I like with the scrubbing that you go a sentence back as opposed to a second
This is incredibly helpful, kudos to everyone who worked on this.
This is great.

If you add a PWA install thing and offline mode that would be interesting to me. Most of my podcast time is on walks. App is useful too for the same reason.

The memorize function<->bookmark relation was not obvious to me, making that clearer would be great. I really like the idea of having a sentence, though, that you can test your understanding of instead of just a word.

The Pimsleur mode is really great idea and I love that it's there but the TTS is atrocious. I'm pretty tolerant, but even I would have a hard time listening to that on an hour-long walk, for example.

Thanks for the feedback. I'm planning to add better voices for the Pimsleur mode.
This looks promising!

One suggestion to make it more usable:

If I hover over a word in the foreign language, I should instantly see the equivalent word(s) in English highlighted. This way I can look up the words I do not know know very quickly, w/o interrupting the listening experience.

Yes, I know I can click on a word to see what it means, but it's too slow for the purpose of identifying its English equivalent.

Makes sense, thanks for the feedback.
Looks awesome to me.

In a previous life I was a linguist in the military and would definitely have used this if it were available at the time.

Awesome, I like it a lot so far, seems really useful
Wow, I really, really like this! A couple points of feedback (based on testing out Japanese -> English translation):

- It took me a second to find auto-pause. Maybe some of those things in the settings menu could be more accessible, similar to how Spotify puts shuffle/repeat icons near the play button.

- I would really like the arrow keys to move back and forth between auto-pause points.

- Regarding auto-pause, it seems to clip off a little early, maybe consider extending the duration or adding a little bit of overlap?

- When clicking to define a word, "Define in Context" is a nice feature to have but is maybe a little slow (and possibly expensive on your end?) to have as a default. I think just opening a static dictionary lookup by default would be nice. With Japanese, I am able to work around this with the Yomitan browser extension though.

- I probably wouldn't use the spoken translation feature, but when I tried it, the voice sounded very robotic considering the high standards for AI-generated voices these days. Though I imagine a better voice might be a cost barrier.

Please don't take this as harsh criticism, just some initial impressions. Overall I really like the idea and will likely continue to use it for listening practice.

No problem, this is the type of feedback I'm looking for. Thanks, I will take note of your suggestions.
This looks very cool! Will be testing it out more to improve my Korean.

Was going to suggest a click to reveal translation option, but it's already in the settings.

Wondering if/how you plan to monetize this. Might there be intrusive ads in the futures or current features cut into a subscription?

Thanks. Currently the free plan has a limit on the amount of monthly playback minutes, you can upgrade with a subscription. No plans to add ads.
Found a bug - if you click on a language, then go back and click on another language, it still shows that you are learning the first one.

Great idea though, good luck.

Thanks, I will look into that.
This is a great, and b/c pulling from podcasts, can handle hard languages (eg. Hungarian). Smart. Some thoughts:

- Buttons to click thru examples for words, waiting is slow

- Partial load of podcast screen (for speed)

- Playback controls for podcasts would be nice (skip, ff, 1.5x)

- Define word in hover would probably be faster/more seamless + pronunciation

- Search bar for known words + alphabetical.. (OR if heard N times -> known)

Also, get the avoidance of gamification, but would like some sort of progress tracking (mins listened, lexicon, % of top 1k frequency). Will play some more when signups work.

Thanks for the feedback.

Note that you track your progress seeing the minutes played and the words marked as known when you click on the button on the top right in the "Profile" tab.

Is the signup not working for you?

No, never got email. Auto-marking words makes more sense.
I am ready to pay for premium but I am unable to create an account. First, I need to create a non-anonymous account but when I tried to do that the link says it is already expired even though it’s the first time I’m clicking it. Is it possible my email client is pre-fetching the link?

UPDATE: I was able to get around the issue by attempting to login with my unregistered email.

Are you using the app on Android web?

Currently you cannot navigate await from the screen that says "Waiting for your link click", so you will need to open the email in a different app than your browser, or in a different tab.

Sorry about the trouble, I will make this more clear in the UI. If you want you can email me at contact at langturbo dot com and I can look into it.

This is great, I’ve been wanting something like this for a while!

A few points of early feedback after 15min of listening with only “Show Translation” on:

1. Showing only a fragment of each sentence at a time feels hard to follow as in scanning to the start of the next fragment (which can jump around vertically) and lacking the context of previous words

Would you consider a view that shows more of the surrounding words but, like focus mode in iA Writer, grays out the non-current fragment?

2. There are sometimes gaps in transcription/translation

3. I couldn’t find my favourite Spanish podcast, Radio Ambulante, which I feel would probably be quite a popular one for Spanish learners — Any particular reason?

Thanks for the feedback. I can see that there is "Radio Ambulante" podcast from NPR, is it that one?

I see that the search function is a little bit buggy, if you copy paste "Radio Ambulante" in the search bar you should see it.

Yes, found it, thank you!

(For reference, it didn't show up with search term "radio ambulante" but did with "Radio Ambulante")

You've got nearly 50 languages on there. This is the second language-learning site I've seen launch on HN with a huge number of languages, far more than the team creating the site can possibly have expertise in. I can't help but think that you'd get much better traction choosing one language and making it really high quality and getting a solid core of "fans"; then taking the lessons you've learned from that and adding a second, and so on.
This is great!

A few bits of feedback:

1. It's not at all clear that one should "Bookmark" a snippet to add it to the study queue. Perhaps reword the toast to say "Sentence marked for study" or similar.

2. I can't seem to unmark snippets from the podcast player.

3. The snippets are almost never entire sentences for me, and I would appreciate having quite a bit more context in the snippet review--at minimum, the preceding and following snippets. I should note that the snippet size is fine for reading along with the podcast.

4. I'm very intrigued with the Pimsleur mode. I could see myself being a heavy user of that feature with some tweaking. At my level, repeating everything in English is too much. It would be neat if it only repeated words I haven't marked as known, and if it only repeated that word in translation instead of the entire snippet. I also think I would want to hear the Spanish before the translation to English.

I will take note of your feedback, thanks.
Excited for the android client
This looks neat. Thanks.

Is there a place I can suggest new podcasts? I listen to some French podcasts the old fashioned way, for exactly this purpose.

Sure, you can email me at contact at langturbo dot com, or you can post the podcast names here as a comment.
An add to playlist feature would be useful. Particularly for queuing the short 'Langturbo Podcast' episodes.