Language Learning App (Part 3)

The dictionary doesn't work without a translator because the definitions are in the language the word is in.

Okay, we've gotten through the main UI. It's time to start actually teaching the language!
Teams:

Japanese team

sir_kitten2

Dutch team

sir_kitten2
WarpedWartWars

French team

348663451y

Spanish team
German team

earthrulerr

Just add yourself here to join!

As @348663451y said:

How are we supposed to do that if it isn't a wiki?

Sorry. Fixing that.

I can do French.

Yes. I think we should start the actual code where the user learns their language. I think we could start by teaching them simple phrases from a list like "Hello. My name is {insert name here}" or "My favourite colour is {favourite colour}" (we could show a list of colours in the language for the last one). We could make a button that looks like this:


And when this button is clicked, it will say the given phrase in that language. The phrases could get progressively harder and easier depending on how the user performed on the previous phrase. We could use a list of different level phrase lists.

Any other ideas on how to make this possible?

We need open source audio clips. Web speech API is garbage.

Hundreds of

if not more.

I added the speaker.

Edit:

Just add your username to sir_kitten2's post:

Edit 2: fine I'll add you to it.

Go to Snap! 6.9.2 Build Your Own Blocks go to sensing, then go to custom blocks.

(italics were me)
...that isn't a libretranslate mirror. libretranslate.de is a libretranslate mirror.

(BTW the "duration" block is mine)

I’m talking about the Language: Text: block.

...which uses libretranslate.de.

So, what are we doing?

Making a language app.

No, I know. I meant more specifically, what are we doing to further our progress on it. How about simple code that gives the user a random phrase to say with a translation and a text to speech option to hear it? Shall I start on that?

Sure.

The problem with a language learner is that we can't just translate text and tell the user to say it or something like that. We have to teach the user about the rules of the language and how to write as well. And that's where it gets hard to program because each language has its specific needs to be in this. I think the only way to solve this problem is to have actual people who know a language, program these rules into the app. There's no other way that I can think of. Does anyone else have an easier or more practical solution to this?

If you didn't understand what I meant, here is an example: Some languages have feminine and masculine words. For example in French, "la" is used to refer to feminine things whereas "le" is for masculine things. A user learning French from English would not know this, as there is no such thing in English.

"le chat" is masculine, "le oncle" is masculine. (those are the only nonvulgar nouns I know the gender and spelling of in French.) That doesn't mean all cats are male, just that the French word for "cat" is masculine gender, but most (I say "most" to not offend transgender people and people who are uncles but not male) uncles are male.

Also:

(that's talking about the Spanish word for whatever goes here ^)

Edit: My point is that gender rules in languages that have it tend to be arbitrary. But not necessarily so with noun classes.

Yes, Japanese is a fine example of this. (e.g. pronouns (私 = I (feminine), 僕 = I (masculine), topic particles (僕の = my or mine, 僕 = I(as の is possessive))