Show HN: Term Typer – Learn a language by typing (termtyper.com)

220 points by jeanmayer ↗ HN
Hey HN! I'm from Brazil and I created Term Typer to help my little brother learn other languages while practicing his keyboard typing skills. We've found it super helpful and fun. Feel free to try it out and let me know your thoughts and feedback. Thanks a lot!

100 comments

[ 5.6 ms ] story [ 176 ms ] thread
I love everything about this, it's really clean! Doesn't support my L2s, so I won't use it long-term

Constructive feedback:

* the 'typed' word should be discarded in a few cases if you change the L1/L2

* No 'success' feedback after submitting my email for notifications

thanks for the feedback, I'll update it soon
Very nice! I think this could work for me, for the type of learner I am.

As a feedback, would be nice to have a button to skip to the next word, and some sort of gamification as rounds of words to have a sense of progress.

Could you consider adding Romanian language ? Multumesc!

I'll add romanian. Come back in about 2 hours and it will be there :D
It makes me remember the days when I learned coding. Instead of copy and paste, I tried to type the code in the editor. I was learning by doing, and I can remember all the mistakes I made. Thank you for your time and effort. Do you open your source code?
Looks like a great idea! It doesn’t support languages I am interested in right now but I will be sure to go back and check it out again. One suggestion, for words that break a line, the effect of typing perfectly on the background disappears. It might be a hard problem to solve but if the word is going to be on the next line when written completely, it should be in the next line when I start typing.
What languages? I can add it for you, as we have only 20 words for now
German would be helpful for me
From the title I thought it was teaching programming languages - that would be a nice extension as well. Just type out some linux source code to learn C :)
that's actually a great idea, will think about this and create something
Fantastic if you do, as it's a nice elegant yet simple design you've created.

I totally thought it meant computer language too, but that's likely the context of viewing it here!

Anyway, great job with this tool, whether or not you can add computer languages!

Some years ago, I read a programing book, and it explained, paraphrasing:

> There is no disc included with the book. All the code printed on the page will have to be typed in, by you. This is deliberate. Typing is sloppy, but programming is precise, and it is imperative that you develop attention to detail if you are to program successfully. The intent is that you develop increasing attention to detail along with the programs in the book, which are in order of increasing complexity.

From what I remember, Learn Python the Hard Way used a similar principle.
Yeah, same. My first thought was "oh hey, this will help me get some Rust syntax under my fingertips!"

It's a very large ask but I do look forward to other (spoken) languages being expanded. Could definitely use this for Japanese practice.

This is super fun! Congrats!
I wonder how well this approach would work with handwriting and Hanzi/Kanji. Don't focus too much on learning, just write the characters and learn the meanings over and over again.
hmmm I think it could be another project to specific learn chinese
I’ve been building a somewhat similar Open Source voice based app. Please reach out if you ever want to talk or collaborate. https://koala.cards
this is awesome, congratz! I'd love to hear more about the idea!
This is really cool. Clean and simple UI. I'll definitely be using this to help keep up my french lol
thanks for the feedback! I'll keep adding more and more words :D
This is awesome. Especially since Duolingo mostly moved away from typing. Currently learning your language, this is going to be a great help. Obrigado.
de nada! any other language you'd like to see in term typer?
german
added german
Are you using machine translation to make the definitions available in arbitrary language pairs? If so, is that going to have a high enough error rate to confuse people?
wow so quick thanks

I have a much harder request : Chinese with both the characters and Pinyin That would be very helpful

now that's a challenge

I'll take a look into that hahah

Really cool. Obrigado! I wish it had German. I signed up for notifications. Keep up the good work!
It has german now (:
I tried German, but everything seemed to be lowercase even though the words.js on github seems to be fine regarding the special German capitalization.

Anyway, cool stuff. I once learned some latin by coding a simple program in C for terminal usage, basically just asking what is this word called, the wordlist file was specified as a command line argument. It was great and highly effective to memorize small chunks of words at a time. I still remember all those complex terms, so at least for me this type of learning works. This looks promising.

thanks! I didn't know about the special German capitalization. I'll fix this.
This looks really great, but I wish there was a setting for "SAT level English". That could've really helped me improve my own vocabulary. Also "used in a sentence" so I could actually type something in a sentence.

And... maybe ignore typos, spaces, commas etc in the non main word? The main word is important for sure but the rest is less, just forces you to focus on what you're learning.

Yeah that makes sense, some people complained about the definition punctuation. I'll remove the validation of the definition. We have only 20 words for now, but I'll make sure to update it and add levels. Thanks!
Clean and pleasant interface! I'd suggest a possibility to create your own "decks", so that users could have more flexibility, as well as reduce the manual workload off of you. I'd personally be interested in Finnish and would love to add words that I am still learning.

De qualquer jeito, o projeto tá top. Mandaram bem demais, boa sorte!

Awesome idea, I'll add the option to the user add whatever they want to write.

The project was made in 2 days, so there are a lot of things to improve.

Thank you so much parceiro!

Can you add typing sound effects like typingclub.com has?
I'll add an option with sounds, thanks!
it's a good idea but in practice i'm find it really annoying. i typed out the full definition and it highlighted it red and won't say why. does it expect me to type the accent marks? :/ it's also weird that i have to hit enter instead of the line wrapping automatically.
It does wrap automatically if you keep typing. I agree the user experience is not great with that, the word you're typing should always be directly over the guide text.
it takes in consideration the punctuation
This seems like a great idea, nicely implemented.

Minor bug report: the pronunciation button pronounced Spanish "adaptar" as "ajaptar".

Thanks!

It worked here, what's your browser?

Very nice site, it looks and functions great. However, autocorrect still works for me on MacOS, unlike other typing practice sites. Maybe not that important, but it does somewhat diminish the typing practice you can get :)
Thanks for the feedback, I'll look into how disable the browser auto correction.
You probably want to look into the following attributes:

* spellcheck

* autocorrect (Safari non-standard)

* autocapitalize

* autocomplete

It's pretty funny that the main failure mode I run into is unconsciously typing the translated version of a word rather than the foreign-language version my eyes are looking at (at least with all the similar-looking cognates). Cool idea!
Yeah, it can confuse our brains a little bit hahah. thanks!
This is awesome! I enjoyed typing out the 20 words available, and would love to type more! Why are the majority of the words in the word list [1] commented out?

Also, I would appreciate if the word & its description is automatically pronounced (or maybe there's a setting to do so). This way I would be able to train audio perception, which is oftentimes challenging with French.

Right now, clicking the "speaker" icon speaks out the word, not definition, and also steals focus from the input field.

1: https://github.com/agencyenterprise/Term-Typer-Words/blob/ma...

I removed the commented words and updated it with Romanian and German.

Thanks for the feedback! If you click on definition, it will speak (I need to improve the ux here)

Thank you / obrigado! First time seeing something like this, and it underscores for me that people need different modes of learning a language.
Eu que agradeço! I agree. I love to mix fun and learning.
Overall, I really like this. Know English, Learning Spanish.

I wish that you wouldn't automatically move to the next word when I finish typing. I want to read it over again and process, then move forward.

maybe move forward on enter (or button)?
This looks awesome! For written Portuguese, how different is Brazillian vs European? I've been trying to learn European Portuguese and it is challenging to find resources that differentiate between the two.
Thanks! Basically the language and the rules are the same, but there are a few differences. For example, in European Portuguese, a silent 'c' and 'p' are often retained in words like "acção" (action) and "óptimo" (optimal), whereas in Brazilian Portuguese, these letters have been dropped to become "ação" and "ótimo". Also, there are some words that are different like the word for "bus" in Brazil is "ônibus," whereas in Portugal, it's "autocarro". Overall, european portuguese is more formal, and brazilian, more casual.
Other differences that stood out to me in visiting Lisbon and the Azores:

(1) European Portuguese usually fully preserves "tu" (including distinctive verb forms), while in Brazilian Portuguese, it's often only used in oblique forms "te" and "ti", or regionally as a subject but often with the third person verb form. For example, in much of Brazil you would see "você tem" (even when speaking to a close friend or family member); in some parts of Brazil, like in Rio Grande do Sul, you would see "tu tem"; and in Portugal you might see "tu tens".

(2) European Portuguese uses "a" + infinitive where Brazilian Portuguese uses the present participle: "estou a fazer" versus "estou fazendo", or "está a falar" versus "está falando". This distinction is very strong and consistent.

(3) Pronunciation can be very different. The first thing you would notice is that the <d> before <e> and <i> is not pronounced as /dʒ/ and the <t> before those letters is not pronounced as /tʃ/. So for example <diabo> 'devil' or <diagonal> 'diagonal' start with /dʒ/ in Brazil but with /d/ in Europe, or <sede> 'thirst' ends with /dʒi/ in Brazil but /dɨ/ in Europe. Or especially the adjective ending <-mente> will be /'mẽtʃi/ in Brazil but /'mẽtɨ/ in Europe.

The word-final vowels in European Portuguese often seem to get dropped entirely (or to be pronounced very softly or briefly), so you might even hear that adverb ending as /mẽt/ (approaching French!!).

I found it fairly challenging as a non-native speaker.

The pronunciation is different inside Brazil, like some NY accents versus standard american english for instance, or when I try to follow someone from Texas versus someone from New Zealand.

All your points are correct! Awesome observation!

I'm from south Brazil, living in Rio, and I have some weird situations following people from the north when they talk fast. I need to spend more energy paying attention or ask again the same question, but it's a nice exercise.

It's closely related to the immigrations, for instance the city I lived in the south had a bigger immigration from Azorians, along with different proportions of europeans on the entire state, including my (grand)grandparents from Poland.

When I started looking at the cultural origins it made more sense, it's also a beautiful topic to look at.

I've used keybr.com to learn the Cyrillic alphabet while learning Russian. I would love to use this to practice typing and learning Russian words and phrases.
will add russian next!
If you're taking requests, Greek would be fun :-)
will add it soon, I'll send an email for the subscribers with the new languages