Skip to content

LinGo logo

Introduction to LinGo

Welcome to the LinGo documentation! In this entry page we will discuss briefly what LinGo is, what it aims to achieve, what the idea behind the application is and much more!

What is LinGo?

LinGo is a free and open-source language acquisition tool written (almost) entirely in Go (with some interopped python scripts). It allows you to learn languages while reading texts in your target language.

What is language acquisition?

The idea at the base of LinGo is that of language acquisition: but what is that?

You have most likely at least once in your life encountered language learning in your studies; the way in which languages are taught as school is usually very academic, focusing a lot on grammar and other abstract linguitical structures built on top of spoken/written language. This way of studying languages is (as empirical day-to-day evidence shows) very uneffective. This is actually not only present in language learning in school; a lot of self-learners also fall into this "grammar-pipeline" that results in a non-ending process of poor results and frustration (don't get me wrong; grammar has its time and place in language learning, but it should absolutely be not your primary focus in the first months of your language learning process).

Then we have what I call the "flashcards-pipeline"; there is another class of language learners which rightfully acknowledge that focusing on vocabulary is way more important than grammar to build a solid foundation, but then they also make the mistake of "rationalising" the neurological process of learning a language too much, trivialising it to a mere repetition and forced memorisation of flashcards. This other class of learners also often becomes quickly frustrated, and if they do not manage to "escape" their habit, they might even end up quitting.

So how can you actually learn a language? The answer is: exposing yourself to the language everyday, in all of its variety of shapes it can manifest itself. While doing so, you will pick up new vocabulary in a natural manner, that can then be reinforced with the aid of flashcard systems like anki. There are 4 main "components" of a language that you should focus on:

1) Reading

2) Listening

3) Writing

4) Speaking

One of the best ways to pick up new vocabulary in a language is that of reading texts in that language: it is actually also one of my preferred ways to acquire languages and this is the reason why I decided to develop this tool.

What this app does, in short, is the following: it allows you to load texts in your target language, read them, listen to the pronunciation of each word and translate them without leaving the application and the text and finally also marking each word with your current level of knowledge of it.

If you're studying a language which uses a different writing system (like russian, greek, chinese, arabic, hebrew, thai, japanese exc.) the app also supports a romanization support out of the box which allows you to get the latin "phonetic equivalent" of all the words in your text to help you pronounce it.

The app also allows you to visualize the stroke order of japanese kanji and chinese hanzi while you're reading; being a student of mandarin chinese myself, I implemented this feature mostly for myself and it speeded up my learning significantly.

The words you don't know can then be automatically exported to Anki, memrise and other electronic flash card systems very easily.

Table of contents:

What next?

Installing LinGo

Load a text

Released under the MIT License.