4 ms·
I wrote a kanji learning app around Anki’s Flexable Spaced Repetition (FSRS) algorithm https://shodoku.app https://shodoku.app My design principal is that I do
by runarberg 2y ago
I wrote a kanji learning app around Anki’s Flexable Spaced Repetition (FSRS) algorithm https://shodoku.app https://shodoku.app
My design principal is that I don’t need to be limited to few words, a sentence, and maybe a picture for each flash card. Instead each flashcard can be the all the relevant parts of the whole dictionary related to the kanji that you are learning.
Another design principal (where I deviate from Wankikani) is that drawing the kanji helps remembering it. So my app has two sided cards, one for drawing and one for reading. Both reading and writing practice include every word in the dictionary + example sentences that contains that kanji.
My third design principal is that I can learn vocabulary at the same time as I learn the meaning and the writing of the kanji (in fact, I like to learn a few vocab words instead of memorizing the different readings). So you can bookmark vocab words you want to learn along the kanji, and the next time the SRS system picks the kanji up for review, these words pop up at the top, to help you recall.
Note that the app is still in development, so use at your own risk, although I am actively using it for my kanji-studies. I still have a couple of features missing before I can call it done enough.
- csdvrx 2y ago> I still have a couple of features missing before I can call it done enough. I've checked your website and HN profile but there's no email to contact you, so here are some simple suggestions: when you enter a deck, I would suggest you add 2 shortcuts or buttons: one to randomly jump from the present card to another one of the same deck, and the other to randomly jump to another deck in the review set This is because when faced with a sequence, the brain learns the order the element in the set, which may affect recall. Being able to randomize the set helps prevent that, and give better results.
- runarberg 2y agoThanks for the suggestion. The code is open sourced at https://github.com/runarberg/shodoku https://github.com/runarberg/shodoku I think you were browsing the cards and using the quick navigation to go to another card in the same deck. When you actually review the cards using the SRS system to review the cards (the big “Review” button), there is a setting (in the settings view) to enable fuzz (a small random delay; defaults to on) which will effectively scramble the cards for your next review. I actually had been using it for a couple of months without fuzz and just random noise in my retention abilities were enough to scramble the decks, at least in my experience. But a button in the quick navigation bar when browsing the cards to jump to a random card is not a bad idea.
- csdvrx 2y ago> I think you were browsing the cards and using the quick navigation to go to another card in the same deck. Yes, I was just looking at how it works because I liked how you presented your design principles. My personal design principle is to minimize friction and allow immersion to concentrate on the task and not on the navigation. > I actually had been using it for a couple of months without fuzz and just random noise in my retention abilities were enough to scramble the decks, at least in my experience. I don't know about you, but when using cards or other repetition-based systems, I've found my recall is strongly increased by randomization: if you can "predict" which card you will be shown next (and I often did), you are not learning the content of the card, but their sequence. This is helpful for some tasks where order matters, but it's often an hinderance for things that don't have a natural order > But a button in the quick navigation bar when browsing the cards to jump to a random card is not a bad idea. A button is nice, but since your content doesn't fully fit on the screen, you should also consider keyboard shortcuts: being able to immerse in the viewing helps a lot for memorizing (cutting distractions) After a while, I guess you must have nailed the common part (the drawing) while still benefiting from the varying part (the list of words): if you can have that on the screen more easily, without much friction (like scrolling down past the drawing), you will be able to immerse into that. Exposing the drawing area could be a setting, or more simply you could have shortcuts or buttons to jump to the word section. Actually, maybe you should also get a button and a shortcut to randomize the words themselves: to take a quick example, https://shodoku.app/kanji/%E5%85%88 https://shodoku.app/kanji/%E5%85%88 lists 104 words. I think you know the #1 better than say the #103, because you have seen the top of the list more. If they are sorted by frequency (ie how common they are), that could be good when begging, but after a while you may want to learn the less common one, and having to scroll down may reduce your desire to do so. I tested jumping to the bottom of the page with the End key, and I think you have a "load-on-demand", so you should be able to test my hypothesis quickly: look at the web server stats for the chunks of a given page for your own IP, and plot the frequencies: I think the bottom where the #103 word is will be seen far less often that the top where the #1 word is. You have made a very cool project, and I like your design principles, so I hope you won't find my suggestions offensive or disrepectful.
- 2y ago
- david_allison 2y ago> Anki’s Flexable Spaced Repetition (FSRS) Sorry to nitpick: Free Spaced Repetition Scheduler https://github.com/open-spaced-repetition/ https://github.com/open-spaced-repetition/
- socksy 2y agoRandom bit of UX feedback. When on https://shodoku.app/decks/add https://shodoku.app/decks/add the + symbol means to add the deck, but in the interface even knowing that I accidentally pressed it 3 or 4 times to try and fold back the kanji after having clicked "show".
- runarberg 2y agoThanks for the feedback. I am a UX engineer and frankly I‘m a little embarrassed I was caught employing such a bad UX pattern. Even without the confusion of toggling a hidden detail, the or-or-off toggle button is known to be bad UX as it is unclear whether the toggler is on or off, unless clarified with a label. https://news.ycombinator.com/item?id=39342649 https://news.ycombinator.com/item?id=39342649 My next feature is going to be custom decks, which is implemented on this page. I will for sure fix this (by adding labels, and changing the icon to a checkmark for active decks). Thanks again, this was helpful.