[HN Gopher] Show HN: Term Typer - Learn a language by typing
       ___________________________________________________________________
        
       Show HN: Term Typer - Learn a language by typing
        
       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!
        
       Author : jeanmayer
       Score  : 200 points
       Date   : 2024-04-16 15:27 UTC (1 days ago)
        
 (HTM) web link (www.termtyper.com)
 (TXT) w3m dump (www.termtyper.com)
        
       | david_allison wrote:
       | 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
        
         | jeanmayer wrote:
         | thanks for the feedback, I'll update it soon
        
       | alfonsodev wrote:
       | 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!
        
         | david_allison wrote:
         | Their word list is open source:
         | https://github.com/agencyenterprise/Term-Typer-Words
        
         | jeanmayer wrote:
         | I'll add romanian. Come back in about 2 hours and it will be
         | there :D
        
         | jeanmayer wrote:
         | added Romanian
        
       | rovn wrote:
       | 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?
        
       | metayrnc wrote:
       | 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.
        
         | jeanmayer wrote:
         | What languages? I can add it for you, as we have only 20 words
         | for now
        
           | emnudge wrote:
           | German would be helpful for me
        
       | croemer wrote:
       | 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 :)
        
         | jeanmayer wrote:
         | that's actually a great idea, will think about this and create
         | something
        
           | nmstoker wrote:
           | 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!
        
         | myself248 wrote:
         | 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.
        
           | elbear wrote:
           | From what I remember, Learn Python the Hard Way used a
           | similar principle.
        
         | johnnyanmac wrote:
         | 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.
        
       | Rucadi wrote:
       | This is super fun! Congrats!
        
       | brandonhorst wrote:
       | 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.
        
       | rickcarlino wrote:
       | 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
        
         | jeanmayer wrote:
         | this is awesome, congratz! I'd love to hear more about the
         | idea!
        
       | nokoanubis wrote:
       | This is really cool. Clean and simple UI. I'll definitely be
       | using this to help keep up my french lol
        
         | jeanmayer wrote:
         | thanks for the feedback! I'll keep adding more and more words
         | :D
        
       | cassepipe wrote:
       | This is awesome. Especially since Duolingo mostly moved away from
       | typing. Currently learning your language, this is going to be a
       | great help. Obrigado.
        
         | jeanmayer wrote:
         | de nada! any other language you'd like to see in term typer?
        
           | rebhan wrote:
           | german
        
             | jeanmayer wrote:
             | added german
        
               | schoen wrote:
               | 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?
        
               | jeanmayer wrote:
               | I was using chatgpt to help me with the translation. If
               | you see any error, please feel free to update the words
               | list here > https://github.com/agencyenterprise/term-
               | typer-words
               | 
               | OR let me know and I update it. Thanks!
        
               | cassepipe wrote:
               | wow so quick thanks
               | 
               | I have a much harder request : Chinese with both the
               | characters and Pinyin That would be very helpful
        
           | markdeloura wrote:
           | japanese!
        
       | hugocast wrote:
       | Really cool. Obrigado! I wish it had German. I signed up for
       | notifications. Keep up the good work!
        
         | jeanmayer wrote:
         | It has german now (:
        
           | temporarara wrote:
           | 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.
        
             | jeanmayer wrote:
             | thanks! I didn't know about the special German
             | capitalization. I'll fix this.
        
       | bironran wrote:
       | 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.
        
         | jeanmayer wrote:
         | 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!
        
       | Rembargo wrote:
       | 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 ta top. Mandaram bem demais, boa
       | sorte!
        
         | jeanmayer wrote:
         | 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!
        
       | SuperHeavy256 wrote:
       | Can you add typing sound effects like typingclub.com has?
        
       | windowshopping wrote:
       | 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.
        
         | mactrey wrote:
         | 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.
        
         | jeanmayer wrote:
         | it takes in consideration the punctuation
        
       | brlewis wrote:
       | This seems like a great idea, nicely implemented.
       | 
       | Minor bug report: the pronunciation button pronounced Spanish
       | "adaptar" as "ajaptar".
        
         | jeanmayer wrote:
         | Thanks!
         | 
         | It worked here, what's your browser?
        
       | janetmissed wrote:
       | 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 :)
        
         | jeanmayer wrote:
         | Thanks for the feedback, I'll look into how disable the browser
         | auto correction.
        
           | jdmichal wrote:
           | You probably want to look into the following attributes:
           | 
           | * spellcheck
           | 
           | * autocorrect (Safari non-standard)
           | 
           | * autocapitalize
           | 
           | * autocomplete
        
       | BHSPitMonkey wrote:
       | 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!
        
       | aslushnikov wrote:
       | 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...
        
         | jeanmayer wrote:
         | 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)
        
       | stkai wrote:
       | Thank you / obrigado! First time seeing something like this, and
       | it underscores for me that people need different modes of
       | learning a language.
        
         | jeanmayer wrote:
         | Eu que agradeco! I agree. I love to mix fun and learning.
        
       | gamerDude wrote:
       | 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.
        
         | jeanmayer wrote:
         | maybe move forward on enter (or button)?
        
         | kylemart wrote:
         | Thought the same thing!
        
       | mawise wrote:
       | 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.
        
         | jeanmayer wrote:
         | 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 "accao" (action) and "optimo" (optimal), whereas in
         | Brazilian Portuguese, these letters have been dropped to become
         | "acao" and "otimo". Also, there are some words that are
         | different like the word for "bus" in Brazil is "onibus,"
         | whereas in Portugal, it's "autocarro". Overall, european
         | portuguese is more formal, and brazilian, more casual.
        
           | schoen wrote:
           | 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 "voce 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 "esta a falar" versus "esta
           | 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 /dZ/ and the <t> before those letters is not
           | pronounced as /tS/. So for example <diabo> 'devil' or
           | <diagonal> 'diagonal' start with /dZ/ in Brazil but with /d/
           | in Europe, or <sede> 'thirst' ends with /dZi/ in Brazil but
           | /di/ in Europe. Or especially the adjective ending <-mente>
           | will be /'metSi/ in Brazil but /'meti/ 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 /met/
           | (approaching French!!).
           | 
           | I found it fairly challenging as a non-native speaker.
        
             | rodrigodlu wrote:
             | 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.
        
       | skeptrune wrote:
       | This is awesome! Will be using it
        
       | peersa wrote:
       | 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.
        
         | jeanmayer wrote:
         | will add russian next!
        
           | unhammer wrote:
           | If you're taking requests, Greek would be fun :-)
        
             | jeanmayer wrote:
             | will add it soon, I'll send an email for the subscribers
             | with the new languages
        
       | schoen wrote:
       | Muito legal mesmo!
       | 
       | It might be helpful to provide a way to hide the L1 definition as
       | a way of encouraging thinking in the target language where
       | possible.
       | 
       | When I took German at the Goethe-Institut, they were extremely
       | committed to immersion and moderately discouraged the use of
       | bilingual dictionaries, while the teachers would almost always
       | attempt to explain vocabulary _in German_ (or by example, like by
       | acting something out or pointing to it). This is harder if you
       | 're very new to a language and don't have a live teacher present,
       | but at some point it probably switches to being a benefit for
       | many or most learners.
       | 
       | The German teachers also encouraged students to try to explain
       | vocabulary (to each other) in German, on one occasion literally
       | having us play the game Taboo (in which you have to get people to
       | guess a word without saying that word or a few closely
       | thematically related terms).
       | 
       | As an example from your site, when I tried it out with EN-PT, I
       | encountered the defined word "joelho" 'knee' (which I already
       | knew), and the definition used "coxa" 'thigh' which I had
       | encountered in the past but mostly forgotten. It was helpful to
       | me to see the Portuguese definition and possibly less helpful to
       | see the English definition (because relying on it would have been
       | a missed opportunity to refresh my knowledge of "coxa"). As an
       | analogy, if I watch a movie with English subtitles, I almost
       | always end up ignoring most of the spoken foreign language even
       | if it's a language that I'm fairly familiar with, because the
       | subtitles just make things too easy.
       | 
       | I definitely think having the L1 definition easily available is
       | important (in particular, in case the user doesn't understand all
       | of the L2 definition!) but I suggest at least allowing people to
       | choose not to see it every time, so that they can practice
       | thinking in the target language.
        
         | precompute wrote:
         | I'm bilingual and the importance of understanding a language
         | though itself can not be understated. It's like bootstrapping
         | the compiler for your language. If you don't, then you never
         | really learn it, you just translate.
        
         | unhammer wrote:
         | Yes! I learn from listening to podcasts and such, and it's
         | somehow more fun, instead of being told "floob means chair, now
         | say floob after me" (one new word out of eight) and being in
         | language-learning-mode, you're just listening to someone
         | talking about something interesting and they're trying their
         | best to convey the information - but it happens to be in a
         | language you don't really know. The
         | https://www.russianwithmax.com/ podcast does this very well
         | (though you need a bit of basics, e.g. Pimsleur, first) - I'm
         | still trying to find comparable podcasts for other languages.
         | https://en.wikipedia.org/wiki/TPR_Storytelling seems to be an
         | adjacent method, TPRS .
         | 
         | See also LINGVA LATINA PER SE ILLVSTRATA
         | https://en.wikipedia.org/wiki/Hans_%C3%98rberg#LINGVA_LATINA...
         | / https://archive.org/details/lingualatinapers0000oerb_x3i0/ :)
        
           | schoen wrote:
           | I forgot to mention that I have also gone to Latin immersion
           | events (some run by Orberg enthusiasts) where unfamiliar
           | vocabulary got explained in Latin. Very fun times!
        
         | jeanmayer wrote:
         | that's a great point. I'll add an option to show/hide the L1.
         | Thanks!
        
       | acupofjose wrote:
       | I noticed an issue when typing multiple lines (for example:
       | english->spanish `adaptar`) wouldn't detect the correct input
       | unless typing shift+enter first.
       | 
       | Also, is there a way to make it easier to type accents on a
       | windows computer? Maybe an on-screen keyboard? Or a tooltip that
       | pops up with a character map?
        
         | mdaniel wrote:
         | Depending on your level of interest in really typing those
         | letters after leaving the game, Windows does ship with an
         | International keyboard layout (e.g.
         | https://learn.microsoft.com/en-us/globalization/keyboards/kb...
         | ). It can be annoying to leave it in place since there is a
         | small delay when typing single quotes, for example, as it is
         | waiting for the "chord" of 'e to make e (macOS does this too
         | via option-e putting ' on the screen and then waiting for the
         | letter to which the accent will be applied), but if you find it
         | annoying then Windows-spacebar will switch between your normal
         | layout and the International one usually just for the window in
         | focus. That can be good or bad depending on your expectations
         | :-)
         | 
         | I also have to switch to it to play a lot of games on Windows
         | since developers are _absolutely atrocious_ about
         | distinguishing between the _keyboard_ scan code and the
         | _layout_ scan code, so my day-to-day Dvorak makes the normal
         | wasd in games _all over the keyboard_. Well, I 'm cheating you
         | a little since I could actually switch to just the English US,
         | skipping the International part, but since I already have to
         | have a 2nd layout for gaming, might as well get the accents for
         | free
        
       | ji_zai wrote:
       | Bug: I chose French, and I had to type "quelqu'un" - but no
       | apostrophe I used was accepted.
       | 
       | Neat project though!
        
       | sandbach wrote:
       | I don't know where the German definitions are coming from, but
       | they shouldn't all be lowercased -- all nouns in German start
       | with a capital letter, so "verstandis", rather than "Verstandis",
       | is actually a mistake.
        
         | schoen wrote:
         | And because of this, you can actually have a noun and verb that
         | are spelled the same except for that initial capital.
         | 
         | https://en.wiktionary.org/wiki/denken#German 'to think'
         | 
         | https://en.wiktionary.org/wiki/Denken#German 'thinking'
        
           | mnsc wrote:
           | And in English you can have a noun and verb that are spelled
           | exactly the same.
           | 
           | https://en.m.wiktionary.org/wiki/thinking
        
         | jeanmayer wrote:
         | fixed it, I'm sorry about that
        
       | bear-_- wrote:
       | This is really cool!
       | 
       | If you could put a WPM counter on there, this would be a great
       | way to test your typing speed and learn some new words.
       | 
       | Nice job. :)
        
       | semireg wrote:
       | Thanks for this. Instead of a definition it'd be fun to type out
       | an example sentence so you can learn the surrounding words. That
       | ... and highlight the place you are typing in the source language
       | so you can immerse yourself in both languages.
       | 
       | I'd also enjoy paying $5 a month to nag me to spend X minutes or
       | X words learning each day.
        
         | jeanmayer wrote:
         | I can think of adding this paid feature for me to keep
         | supporting the tool. Added to the backlog.
         | 
         | Highlighting the current place you're typing would be hard as
         | the construction of sentences can be completely different
         | between languages, but I agree that it would be awesome to
         | have.
        
       | PixelEngineer wrote:
       | Interesting concept. However, the input matching seems a bit
       | strict, it doesn't work even if there's just a missing space.
        
       | blini2077 wrote:
       | Thanks. That was fun.
        
       | 8mobile wrote:
       | Hi, I like the idea, I would prefer to have an audio that guides
       | me in order to improve the language. I wrote the sentence but I
       | can't get to the next one. how to do? Thank you
        
         | jeanmayer wrote:
         | hey, it should automatically move to the next word when you
         | finish typing correctly
        
       | lionkor wrote:
       | The German is just wrong, due to the lack of proper
       | capitalization. This is an error in German and makes it very
       | difficult to read and is unacceptable for a learning site. Pls
       | fix :)
        
         | jeanmayer wrote:
         | Thanks for the feedback! I just fixed it, should be live in 10
         | minutes.
        
       | burrish wrote:
       | Great website I love the simple UI ! I subbed for the
       | notifications, I hope more words and a support will come for
       | Russian ! :)
        
         | jeanmayer wrote:
         | awesome, there are a lot of people asking for russian. I'll add
         | this soon (:
        
       | rodrigodlu wrote:
       | Hey pal, cheers from Rio!
       | 
       | I use monkeytype everyday between some stressful tasks or
       | pomodoros to keep my touch typing in check.
       | 
       | Few things: Why do I need to complete 20 sessions? Can I do only
       | a few? That's the only time I have between tasks.
       | 
       | The line breaking is weird, sometimes the reference is on the
       | line below, but what I'm typing is on the line above. Maybe it's
       | a difference with the shadow or font-weight. At least here I can
       | see a bit of a shadow with the reference behind.
       | 
       | Anyway, awesome idea!
       | 
       | Now I can train something that is not English using an existing
       | habit. Thanks!
        
         | jeanmayer wrote:
         | Hey my carioca friend! We currently have only 20 words (and the
         | list is random), the progress bar is just to give the sense of
         | progress hahah, also, I'm not saving any state, so if you do 3
         | words and refresh the page, it will reset everything.
         | 
         | About the reference below the text, It's like another div with
         | the text below the textarea, that's why it breaks sometimes. I
         | have to think of something better.
         | 
         | Thank you so much for the feedback!
        
       | developer1000 wrote:
       | For those that dont speak Portuguese and flagged my comment
       | beleza = beautiful
        
       ___________________________________________________________________
       (page generated 2024-04-17 23:02 UTC)