←back to thread

313 points mariano54 | 10 comments | | HN request time: 1.293s | source | bottom

Hey HN, we're Mariano and Anton from ISSEN (https://issen.com), a foreign language voice tutor app that adapts to your interests, goals, and needs.

Demo: https://www.loom.com/share/a78e713d46934857a2dc88aed1bb100d?...

We started this company after struggling to find great tools to practice speaking Japanese and French. Having a tutor can be awesome, but there are downsides: they can be expensive (since you pay by the hour), difficult to schedule, and have a high upfront cost (finding a tutor you like often forces you to cycle through a few that you don’t).

We wanted something that would talk with us — realistically, in full conversations — and actually help us improve. So we built it ourselves. The app relies on a custom voice AI pipeline combining STT (speech-to-text), TTS (text-to-speech), LLMs, long term memory, interruptions, turn-taking, etc. Getting speech-to-text to work well for learners was one of the hardest parts — especially with accents, multi-lingual sentences, and noisy environments. We now combine Gemini Flash, Whisper, Scribe, and GPT-4o-transcribe to minimize errors and keep the conversation flowing.

We didn’t want to focus too much on gamification. In our experience, that leads to users performing well in the app, achieving long streaks and so on, without actually getting fluent in the language you're wanting to learn.

With ISSEN you instantly speak and immerse yourself in the language, which, while not easy, is a much more efficient way to learn.

We combine this with a word bank and SRS flashcards for new words learned in the AI voice chats, which allows very rapid improvement in both vocabulary and speaking skills. We also create custom curriculums for each student based on goals, interests, and preferences, and fully customizable settings like speed, turn taking, formality, etc.

App: https://issen.com (works on web, iOS, Android) Pricing: 20 min free trial, $20–29/month (depending on duration and specific geography)

We’d love your feedback — on the tech, the UX, or what you’d wish from a tool like this. Thanks!

Show context
999900000999 ◴[] No.44388955[source]
It would probably be better to pick one or two languages, actually work with native speakers to make sure it's right.

These "we cover every single language" tools get it like 75% right at best.

replies(1): >>44389217 #
55555 ◴[] No.44389217[source]
I disagree because of how AI is progressing and because there's tons of neglected language markets they can pick up. Obviously your approach can work too, perhaps better. But 95% of language learning tools don't support Thai (my target language) for example so I am an eager user for that reason alone. I think they'll be able to make a generalized curriculum and have the AI use it in all languages.
replies(3): >>44389273 #>>44389492 #>>44390873 #
1. Alex-Programs ◴[] No.44389273[source]
My tool supports Thai, if you'd like to try it - https://nuenki.app . I added it at the request of a user, who seems to be happy with it.

It's a browser extension that finds English sentences in webpages, and translates the ones at your difficulty level into the language you're learning.

replies(2): >>44390890 #>>44394334 #
2. adastra22 ◴[] No.44390890[source]
That's a pretty sick idea. Unfortunately I presume it involves sending your browsing data (e.g. page contents) to the server?
replies(1): >>44392282 #
3. Alex-Programs ◴[] No.44392282[source]
Yeah, though I've added lots of privacy protections to at least partially mitigate that:

- There's a global blacklist of sites, as well as phrases in the title/URL (e.g. "bank")

- You can blacklist sites yourself

- Each sentence is run against filters checking for medical/legal/etc info, as well as checks for addresses, card/social security numbers, etc. All the checks are done client side

- There are also some special implementations, e.g. it looks at the source code of websites to work out if they're an instance of an American health portal that I've forgotten the name of - each doctor's surgery self-hosts it.

- Websites can add `nuenki-ignore=true` on their end, if they'd like to disable it.

And of course it doesn't log anything, though there is an anonymous cache in order to make it economical.

replies(1): >>44392756 #
4. adastra22 ◴[] No.44392756{3}[source]
What about a whitelist? I might just be interested in only having certain sites, like this one or Reddit, translated into my target language. That way I can be certain it is only turned on for sites that I am OK with sharing browsing history and not be concerned that I might have missed adding something to the blacklist.
replies(2): >>44394342 #>>44395858 #
5. 55555 ◴[] No.44394334[source]
Thank you, I will try it, although I'd prefer to translate entire sentences into Thai randomly. Perhaps you can add this advanced mode. Actually, I saw your app before while looking for an alternative to Toucan that supported Thai, but at that point in time you hadn't added support yet. Thanks for doing so.
replies(1): >>44395130 #
6. 55555 ◴[] No.44394342{4}[source]
This is a great idea. Specifically, I want this enabled when I'm wasting time but not when I'm working. So I'd like it to be enabled only on X.com. This whitelist+blocklist functionality could be a user-side setting like with Adblockers.
7. 55555 ◴[] No.44395130[source]
Okay I installed it and this is pretty great. Although I think your extension doesn't work for Thai the way you think it does. Because there's spaces between sentences instead of between words in Thai, it's translating entire sentences even with the "words only" setting enabled. This is what I want anyways, but will be too difficult for most learners. I have written misc Thai learning softwares and just so you know you should use an LLM to do word-splitting, not a software library. If you do use a library, you need to split words while looking for the largest possible word, but it won't work well. Basically you can't tell without a brain whether it's a lot of small words next to one another or a smaller number of compound words. IME only an LLM or a human will do a good job of this.
replies(1): >>44395850 #
8. Alex-Programs ◴[] No.44395850{3}[source]
Translating entire sentences is the idea - I'm not sure what setting you mean with "words only"? I really ought to make the settings clearer, but it's hard to do when you know what they "ought" to express.

"Translate Isolated Words" allows it to translate "sentences" of only one word, but it doesn't disable full sentences.

And yeah, atm it word splits by spaces for the dictionary. I hadn't thought to do it with LLMs, though that's a good idea. There's a somewhat related problem when doing Furigana, where it has a hashmap of strings-to-pronunciations, and it starts with a 4-character sliding window looking for matches, then a 3 character, etc.

9. Alex-Programs ◴[] No.44395858{4}[source]
That's a good point. At some point I ought to make a UBlock-origin style list of customisable rules.

At the moment I'm focused on translation quality, but I intend to add that.

replies(1): >>44397093 #
10. adastra22 ◴[] No.44397093{5}[source]
Thanks!