11 ms·
Hey HN, creator of Nihongo here! I spent a long time studying Japanese vocabulary using Anki, Flashcards Deluxe, etc., but I found that studying using premade
by chrisvasselli 11y ago
Hey HN, creator of Nihongo here!
I spent a long time studying Japanese vocabulary using Anki, Flashcards Deluxe, etc., but I found that studying using premade word lists never worked that well for me. Nihongo is built around studying the words you're encountering naturally through your own hobbies and interests. Flashcard packs are automatically generated from the words that you look up in the built-in dictionary. You can also copy and paste Japanese text into the app like song lyrics, textbook readings, videogame scripts, or books, and it will automatically find all the words contained in the text, and generate flashcards from them.
I built Nihongo because it was the tool that I wanted and felt like was missing for studying Japanese. Hopefully it'll be useful for some of you too! I'd love to hear your feedback.
- Nadya 11y ago>You can also copy and paste Japanese text into the app like song lyrics, textbook readings, videogame scripts, or books, and it will automatically find all the words contained in the text, and generate flashcards from them. How would 「気に入らない」 be parsed for flashcards? An entry for 気 with it's most common meaning(s) and an entry for 入る with it's most common meaning(s)?
- chrisvasselli 11y agoIn this case, there's actually an entry in the dictionary for 「気に入る」, so it will figure out that this is a conjugation of that entry, and use 「気に入る」and its most common meaning as the flashcard. Many of these kinds of phrases exist in the dictionary (I'm using JMDict under the hood), but for those that don't, it would create two flashcards, one for each word. The flashcards are set by default to use the most common meaning, but if there are alternative meanings, you can choose to show those in addition, or instead of the most common meaning.
- Nadya 11y ago* internet high five * Awesome. I couldn't think of how to phrase the problem. "Short phrases with meanings that don't match the individual words used being parsed as individual words instead of the short phrase" is kind of wordy and a little confusing.
- chrisvasselli 11y agoHeheh, got it! Yeah, fortunately JMDict is a really mature project, and has got a ton of these kinds of things covered.
- thaumasiotes 11y ago> "Short phrases with meanings that don't match the individual words used being parsed as individual words instead of the short phrase" is kind of wordy and a little confusing. These are called "idioms", or, if you want to be really technical for its own sake, "non-compositional phrases". But I note that, at least according to wikipedia, "idiom" is the technical term as well as the vernacular one. https://en.wikipedia.org/wiki/Phraseme#Non-compositional_phrasemes:_Idioms https://en.wikipedia.org/wiki/Phraseme#Non-compositional_phr...
- Nadya 11y agoYou know those times where you need to describe something but are forgetting the word so you call a "bridge" "an elevated structure built to allow crossing over bodies of water and roads"? That was one of those times... though I appreciate you calling me out on it. :)
- MarkSweep 11y agoWhich morphological analyzer are you using to do the deconjugation?
- chrisvasselli 11y agoI actually ended up rolling my own. There are some tricky cases involved, and I wanted full control over it.
- chrisvasselli 11y agoActually, I should give some proper credit here. My husband Justin wrote this component, which turned out awesome. He's really into Japanese linguistics. =)
- glandium 11y agoWould you have specific examples of things that wouldn't have been possible with e.g. mecab or chasen?
- chrisvasselli 11y agoTo be honest, I haven't spent a huge amount of time exploring mecab and chasen, although I probably should. The decision to write our own was partially just because it seemed like a fun academic exercise, and we learned a lot from building it. We also have some features in mind for the future that it will be useful to have deep control over the the tokenizing and deconjugation, but those haven't made it into the app yet.
- Navarr 11y agoiOS only :< No planned Android support anywhere? No signup for android news subscription system or RSS if you don't want to setup a mail system? Sadface.
- reustle 11y agoI'd love an email notification for android support as well!
- hkmurakami 11y agoNative speaker of both Japanese and English here. This looks quite nice and I've forwarded it to my friends who are learning Japanese. :) I was initially really skeptical when I saw the tagline about "learning from songs and games", because songs are grammatically broken and often nonsensical, while games/anime/manga often have brash speech that you stop using once you're past Junior High. But being able to learn off of your interests in a digitally integrated way is quite awesome (I remember meeting a South Korean guy in college whose Japanese was quite good just from learning form Anime/manga). Commonality is useful as well, since the language has changed dramatically in the last 100 years, particularly pre and post war. Kudos! :)
- chrisvasselli 11y agoYeah, it's hard to sum up the idea in 80 characters, but I like that idea of learning off of your interests. Thanks!
- veidr 11y agoI work in Tokyo and speak okay Japanese, but sort of hit a plateau after college (partly due to knowing 'enough for daily life' and partly due to having to work and no longer having to go to Japanese class). So my study lists consist 100% of words and phrases I hear and don't understand when I am out at the Japanese semi-mandatory drinking-with-coworkers. I currently use Japanese.app, but am open to switching since it doesn't sync vocab lists hint hint :-). So I study off my actual experiences here in Japan. I too was instinctively skeptical of the "games, songs" bit. (Although, I notice that text is not actually on the website.) I think "learning off your interests" is better, too.
- veidr 11y agoHi Chris, looks like an awesome start. Some quick suggestions and questions: 1. You should fully support romaji entry for looking things up. The mechanics of switching input methods on iOS are pretty terrible so it is really inconvenient to have to switch into Japanese input mode. I searched for "hana" but got only 花合わせ and 花を引く as matches -- because those have 'hana' in the English definition string. Searching for はな brought the two obvious matches (花 and 鼻) to the top, but I had to go back and cycle through several other input methods to get to Japanese input mode, which was annoying and took longer than the rest of looking up the word. Some other dictionaries do this, and even sites like Amazon Japan now do this for searches as well -- dealing with input methods is just a hassle in general. 2. The understanding of verb conjugation seems really awesome and jumping between things on a "learning tangent" works really well. 3. You have to sync vocab lists and spaced repetition drill status/progress to the cloud. It's just too useful not to do it -- you want to be able to do that in quick downtime moments from any device. Luckily there are many easy ways to do it nowadays. I don't blame you for shipping without that, though! ;-) All in all, great start!
- chrisvasselli 11y agoThanks for the feedback! 1. I actually just finished implementing romaji entry, and it will be coming in the next version update. Honestly, after implementing it, I can't believe how much time I've wasted switching input methods. =) 2. Thanks! 3. I know, I know! I really want to, but I spent a couple weeks diving into it and found it really buggy and hard to get right. I'm using Core Data under the hood to store this stuff. Any suggestions for tools I should look at to help with syncing?
- veidr 11y ago> 1. I actually just finished implementing romaji entry Great! I didn't see a need to put it this bluntly in my initial comment, but having to manually switch input methods is enough of a deal-breaker for me that I was going to uninstall the app... but now I will leave it installed and wait for that update. ;-)
- sharp11 11y ago
- KerrickStaley 11y agoTangential shameless self-promotion: I built a tool for Chinese learners that can take starred entries from the Hanping Dictionary app (for Android) and import them into Anki. It's available at https://github.com/kerrickstaley/hsk_flashcards https://github.com/kerrickstaley/hsk_flashcards. File a bug if you have trouble running/using it. Obviously not as seamless as Nihongo :)
- chrisvasselli 11y agoBefore I built Nihongo, I used to use Imiwa as my Japanese dictionary, and Flashcards Deluxe for spaced repetition studying. I built this ridiculously convoluted setup where I would upload a list of words from Imiwa to dropbox, my laptop at home would detect a new file in my dropbox and run a script to convert the format to the one supported by Flashcards Deluxe, and then I'd open up Flashcards Deluxe and download the deck from dropbox. I told someone about this, and they said "man, wouldn't it be awesome if there were a Japanese app that could just do that automatically?" And thus, Nihongo was born. =) So KerrickStaley, wouldn't it be awesome if there were a Chinese app that could just do that automatically? =p
- KerrickStaley 11y agoYou're giving me ideas :P The problem is that I don't have time to build a monolithic app that serves as both a good Chinese dictionary and a good flashcard app; it's much easier to cobble together a system using existing software.
- xiaoma 11y ago>I built Nihongo because it was the tool that I wanted and felt like was missing for studying Japanese. Hopefully it'll be useful for some of you too! I'd love to hear your feedback. This alone made me download the app even though I haven't seriously studied Japanese since college. Have you written anywhere about your learning habits / methods?
- chrisvasselli 11y agoI haven't, but I'd like to! I've been meaning to start a blog to discuss topics like that, but haven't found the time quite yet.
- wahnfrieden 11y agoNice app, will definitely play with it soon! By auto-generating flashcards, what are you doing about showing accurate definitions/meanings for the cards? I couldn't tell from your page alone - are you just pulling down the list of senses from JMDict or something? That's always been my hesitation with auto-generating cards, the "meaning" side of the card tends not to be helpful.
- chrisvasselli 11y agoBy default, the backside of the card has the first "sense" from JMDict on it. This sense is supposed to represent the primary meaning of the word. You can also add/replace that with the other senses by editing the flashcard, or you can add your own notes to the back. I've found using the first sense works pretty well. Having the whole definition on the back is way too much for your brain to process, but the first sense is usually only a few words that encapsulate the meaning of the word pretty well.
- Micaiah_Chang 11y agoI've been studying the language for a while, and recently made the switch to Japanese-Japanese dictionaries, after using EDICT for a long time. This has highlighted some reservations I have about it. The most available example (not the best) is 適当, where it can be interchangeably be used to mean "adequate" and "half-assed", sort of sarcastically. The definition being a mostly undifferentiated bag of words, without necessarily regard for nuance or typical use cases. Contrast this with the goo dictionary, which has a slightly better structure (http://dictionary.goo.ne.jp/leaf/jn2/151064/m0u/%E9%81%A9%E5%BD%93/ http://dictionary.goo.ne.jp/leaf/jn2/151064/m0u/%E9%81%A9%E5...) and the 類語 dictionary, that gives synonyms and situations where you would use one over another (http://dictionary.goo.ne.jp/leaf/thsrs/2512/m0u/ http://dictionary.goo.ne.jp/leaf/thsrs/2512/m0u/). I understand that there's probably no way to deal with this in a scaleable way that would be as easy to turn it into flash cards but it's kinda sad to see the gap between the two solutions. Apologies for not having a more constructive suggestion.
- glandium 11y ago
- mikekchar 11y agoI'm also the author of a Japanese learning tool: https://github.com/mikekchar/jldrill https://github.com/mikekchar/jldrill I have some advice for you if you decide to use spaced repetition in your flashcards (not sure if you do already as I haven't had time to look in detail). JLDrill is mostly abandonware at the moment and is written in very poor Ruby ;-). I don't actually recommend that anyone use it. It was written for me. I think the pheonix branch will actually work on modern Ruby, but I was half way through trying a different scheduling idea, so it probably has considerable bugs. However, if you decide to do spaced repetition in your app, I would humbly suggest reading JLDrill's strategy on it: https://github.com/mikekchar/JLDrill/blob/master/web/src/Strategy.page https://github.com/mikekchar/JLDrill/blob/master/web/src/Str... Most tools (like Anki) use the SM2 algorithm, but I found that my strategy works considerably better (for me, anyway ;-) ) The latest version of JLDrill has an ability to "forget" items if you have neglected studying them for too long: https://github.com/mikekchar/JLDrill/blob/master/web/src/Usage.page#L512-L536 https://github.com/mikekchar/JLDrill/blob/master/web/src/Usa... Feel free to ping me if you have any questions.
- chrisvasselli 11y agoVery interesting! Nihongo does use spaced repetition, and it looks like there are some similarities and some differences with JLDrill. Here's the overview: - When you select a deck, you study words 10 at a time in "learn" mode. -- In "learn" mode, you have to get the flashcard correct 3 times in a row, at which point they are "learned". - Every day, you'll be given a set of cards you've learned to "review". - These cards use a form of spaced repetition. In order to make spaced repetition more approachable, I don't use time intervals in the same way apps like Anki do. Instead, each card has a level, and as you progress through the levels, the interval at which they appear increases. Each level takes three steps to get through, each of which has its own interval. -- Level 1: 1 day, 2 days, 3 days. -- Level 2: 1 week, 2 weeks, 3 weeks -- Level 3: 1 month, 2 months, 3 months -- Level 4: 6 months, 9 months, 1 year -- Level 5: Never show again - If you mark a word wrong at Level 1, it drops down to Level 0, where it will keep showing up in that same session periodically until you've marked it correct enough to move it back to Level 1. - Getting through your daily set of review cards is encouraged as being the most important thing, adding new cards is secondary. - We don't want to discourage people from coming back, even if they got lazy and stopped studying for a month. So we never build up a huge pile of flashcards for people to review. Give it a try if you have a chance, and if you have any thoughts/suggestions I'd love to hear them!
- tomku 11y agoReally like the app, any plans to make an iPad/Universal version? Thanks!
- chrisvasselli 11y agoYep, I'm working on it right now! That's going to be the next big update. I'm aiming to release shortly after iOS 9 comes out, so September/October probably.
- elementalest 11y agoI would love to use this app! I have been doing something to similar effect for Anki except using web scraping/API of various japanese dictionary sites with python scripts. The whole thing is clunky and buggy and requires a fair amount of manual work (which i always intended to automate, but not had the time), so i would love to use an app that does this all well. Unfortunately being iOS only locks me out. I noticed at the bottom of the page it states it was built from the ground up for iOS. This tells me it could take a while (maybe never) to get a port to another OS.
- chrisvasselli 11y agoYeah, unfortunately it's all built very iOS-specific. And since this is a side-project for me, I'm not sure I'll find the time to make an Android version anytime soon. If I ever have the time/resources, it's something I'd love to do!
- jbergens 11y agoSounds great! Is the code open source? Do you plan versions for Androind and WinPhone? We would like the latter.
- chrisvasselli 11y agoSorry, it's all closed source right now. There are pieces of it I might release as open-source at some point though. As for Android and Windows, I just don't have the time unfortunately. This is a solo side-project for me. But if I ever find the time/resources, I'd love to port it to other platforms.