Show HN: Building an open-source language-learning platform
librelingo.app
librelingo.app
In short:
- focus on what the user wants, not the tech.
- is English->Spanish the best language pair to start with? You're directly competing with the giants like Duolingo. I tried to learn Burmese a few years back, I would have loved to find something like this for that niche.
Good luck!
- I think a single click is sufficient to choose the correct answer and submit it; alternatively let me double click to choose and submit.
- I don't think a "Continue" step is necessary
- Without selecting an answer and pressing Back on the browser, the UI freaks out for a moment (Firefox 72.0.2)
- I love cheatsheets, so having a section for these would be awesome (finding good, consistent cheatsheets on the web is hard)
It is understandably a little sparse at the moment. Take a look at an app called Memrise - I think the style of its exercises would fit well here. I particularly like the "Fast Review" exercise which lets me do a speed review of all the words and phrases I have learned so far.
As others have mentioned already, it would be nice to be able to mark words you already know and stop them from showing. Additionally, being able to mark words you find difficult could appear more frequently.
I will keep an eye on this project; good work so far!
http://h4labs.org/100-words-app-spanish-pdf/
I’ve also created some Spanish Word Search PDF’s. Most are on Github:
https://github.com/melling/Sopa_de_Letras
I was going to create a little book of 20 Spanish Word Search puzzles.
What’s your idea for Spanish Language cheatsheets? I’ve tossed around a few ideas myself.
Verbs, ser/estar, por/para, saber/conocer
https://i.pinimg.com/736x/0c/b6/81/0cb681ce3173c647a39b12db8...
Anything that explains grammatical rules and gives me a "template" of sorts is great because it doesn't give me the answer straight away but it engages my brain to adapt the word I want to the given rule. Topics like tenses, conjugation, pronouns are what I like having cheatsheets for.
Curious, do you mean for just languages, or in general?
I was recently thinking that a site with user-uploaded cheat sheets for all sorts of subjects would be pretty rad.
Do you envision that your site will enforce a particular layout(s) and style for the cheatsheets? Or will it just be more of a catalogue?
I was thinking that it could be a catalogue with broad categories that would allow people to surf through for cheat sheets they might want to read, but there would also be room for more esoteric subjects.
For example, this cheat sheet on yeast for fermentation that I have bookmarked deserves a better format: https://www.reddit.com/r/firewater/comments/b1hu1h/my_genera...
Also, it'd be cool if it could be a platform where people can sell their cheat sheets. People could post free ones, too, and would be encouraged to do so because it'd be made easy for them to make an awesome infographic-y cheat sheet, but being able to make some money would incentivize quality too.
To get users, we started a meetup group to teach people Korean. https://www.meetup.com/San-Jose-Korean-Language-and-Culture-...
We stopped working on the app, but continued with the meetup group (3 years now and almost 1000 members).
Our conclusion is that the most effective way to learn a new language is a simple commitment to showing up regularly to language events. Meetup.com or your local public library will usually have regular (and free) events. Once you have that commitment, picking a great app will help expedite your learning.
Excited to see an open source language learning app!
Then spend your time on the content to answer the questions your users are gonna have. Provide screenshots of your app.
If you are a self starter, I wouldn't recommend building an entire landing page yourself.
My original idea was to do lots of little games in one app to keep it interesting: Hangman, Word Search, 4 Pics 1 Word, ...
Recently, I’ve been breaking out the games into smaller apps. I think that’s better. Take your data and try to make some fun little games.
Also, I think noun gender is important. Should learn it at the same time as the noun. It can change the meaning of the word.
Finally, is anyone doing verbs? I have a simple Spanish verbs app. There are usually many rules to help make it easier.
I was going to open source the rules that I have but there doesn’t seem to be much interest:
https://github.com/melling/Spanish_Verbs
Need to extract the data from my site:
I have thought of experimenting with the possibility of having different way of presenting the same content. For example, instead of a repetitive software solution, exporting the course material as a printable book.
At the bottom there are 3 buttons that sort of means this:
- repeat card more frequently
- repeat card
- repeat card less frequently
Android app: https://play.google.com/store/apps/details?id=com.ichi2.ankiMy personal system works that way; though not for any particularly clever reason. I just have no idea how to automate the checks. I don't recommend anyone to try it unless you want to spend a few hours setting it up, but there's a screenshot in the README: https://github.com/Yorwba/alphabet-soup
I personally love Duolingo. But I fear that the course data, which is mostly user contributed, will eventually disappear if the company goes under...
If some of the user-generated content isn't copyrightable, or was contributed by users willing and able to share it with a FOSS project, could only that data be scraped, or would it be too difficult to identify?
I'd agree with some sentiments in this comment section, that you might want to find a niche, as competing with Duolingo or Babbel would be difficult. Duolingo doesn't too well with "smaller" languages and different scripts.
Are you using a TTS engine for the voice (I assume)? I was looking for TTS for a smaller language I'm studying, but I couldn't find anything. I hope that something comes out of the Mozilla's Common Voice project.
My family is Malayalee and I know the entire language in my brain because I can understand them speaking to me,but I respond in English. I would pay a huge amount of money for an English<->Malayalam instructional book and I'd pay a huge amount of money for a Duolingo-similar Malayalam learning experience. Niche and rare languages have little to no representation in the popular apps.
However, the long term goal is making it easy for the community to build courses, so once the project is mature, it should be possible to include a way larger number of languages.
I am also thinking of things like conlang enthusiasts being able to create courses for their own conlangs.
The Duolingo course builder is a rather slick UI, but I found it brittle. Like many UIs, it does what it does, and then it stops. There's no direct access to the underlying database, meaning you can't do any kind of search on problem phrases for instance. You can't do any bulk updates of any kind. All you can do is navigate through the course structure to the sentence you want, and use a custom editor to make changes to it. Very clunky.
They have some kind of mechanism in place to flag sentences where learners have problems, but as I wasn't involved in Hungarian after it went live, so I don't know how they work.
There were systematic problems with the course material (it had been adapted from the English course for Hungarians), and I finally ended up writing a spider that walked the course and recorded the data in my own database just so I could do queries against it to highlight where certain issues needed to be fixed.
My #1 takeaway, and this would automatically be addressed in an open-source context, is that the database has to be exposed. I'd be happiest if the canonical course were actually defined in a document that had an independent existence from the live database entirely and could be version controlled. (Obviously multimedia resources would have to live outside that document, but you could have a descriptor for each one and use it within the course definition.)
By all means provide a builder UI to smooth the process - but at volume, you'll want some way to just work on things in text or you'll end up buried in technical debt. You might even want to model the builder on a Wiki, for instance - a set of documents that could be considered a single book made up of articles.
My time is limited (isn't everybody's) or I would promise you the moon in terms of cooperation on this project - I've wanted to see it for a long time. I hope I'll have the time at least to use the platform and provide some constructive criticism.
It takes a huge amount of effort to build decent course material - most open source material are from a community of people that are also using the material - will this be the case with language learning?
Click on any of the headings in [brackets] on the top of the page to see the language pairs available for download for that collection.
However, the content is actively getting curated. E.g. https://tatoeba.org/eng/sentences/show/137571 is a translation of "I love you." owned by a native speaker. The search form doesn't make it easy to find native-speaker translations, though. The search option to limit results to native-speaker sentences only works if you're searching in the target language. E.g. if you want usage examples for "愛": https://tatoeba.org/eng/sentences/search?query=%E6%84%9B&fro...
If you're only using Tatoeba as a data source for automatic creation of course material, though, you can filter using whatever criteria you want.
The Rosetta Stone / Duolingo style of language learning has never really worked for me; I generally have more success and an easier time staying engaged with the "comprehensible input" approach.
Are there any open platforms based on this method out there? Maybe something along the lines of LingQ, though perhaps without all the attempts at gamification.
If someone could just create a list of of youtube videos with subtitles in my language it would be huge. Doesn't matter if it is a blacksmith explaining how to shape metal, or a knitter showing some pattern, I just need input.
Here's a video (in French) that I found reflects my own experience quite well: https://www.youtube.com/watch?v=-KQ1qRJ2wQc
In a nutshell, I've got two complaints. First, while flashcarding is wicked efficient (I'd say essential) for review, it's not a particularly good tool for learning things in the first place. And an overly flashcard-oriented approach has real problems with a sort of streetlight effect: You tend to get stuck on what's easiest to illustrate with pictures, which often isn't what's most useful for communicating with others.
edit: Also, for what it's worth, the existing research seems to indicate that, while subtitles in our target language can be hugely beneficial, subtitles in a language you already speak actually inhibit language acquisition: https://journals.plos.org/plosone/article?id=10.1371/journal...
(There was another study with Brazilian English language learners that I found more compelling, but I'm unable to find it right now.)
That's where I like LingQ so much, at least in principle: It's theoretically a clearinghouse where you can find lots and lots of these kinds of materials for learning. (The truth is, it can be a bit difficult to sift through.)
My language of choice would be Farsi.
Unfortunately it's a bit tough to avoid github, it's like the facebook of programmers. I don't see any particular reason why it's bad though? If anything, it might improve with microsoft now owning it.