Inspiration

One of my 2019 New Year's resolutions was the learn Chinese. It has been something I have wanted to learn for a long time but just never put in the effort to learn the language. Now I would be lying if I said that throughout this year I have been consistent with learning the new language but I have stumbled plenty on making it a daily habit. Currently I have been using Duolingo and Rosetta Stone to learn the language but I needed some more motivation. So I built this Language Learning API.

What it does

Language Learning API is an API to create games to help learn new languages. Right now it includes learning Chinese for English speakers by utilizing some of the words/phrases that are included in the HSK test. This could be a multiple choice trivia game, memory card game, or just flash cards.

How I built it

It uses Azure Text to Speech API to create audio recordings for different Chinese words/phrases along with their meanings in English. Both recordings utilize the "Neural Text to Speech" to give the recordings a natural feel. The service also uses Azure Text Analytics API to categorize the words/phrases so that games can create themes for different questions such as numbers, family members, etc.

Challenges I ran into

I still have not completely figured out the categorization issue. I think I might need to build on top of the Azure Text Analytics API with manual tags to create my own machine learning model.

Accomplishments that I'm proud of

Since starting with this project I have been far more consistent with learning Chinese. Part of that has to do with me wanting to create new games and the other part is playing existing games so I can "borrow" features for future games I make.

What I learned

This is my first time using Microsoft Cognitive Service.

What's next for Language Learning API

Go see the Great Wall of China of course (there is a reason I am learning the language). Plus figure out the categorization issue and build more games. Some of these games I will likely just keep for myself but others I will publish so that more people can practice Chinese who want to. I also tried to abstract the API I built so that I can add more languages like Italian, Spanish, French, etc.

Built With

Share this project:

Updates