Hey there and welcome to Tokotoko Studio!
Check out our latest blog post:
Django tip: Debugging templates
Launching Kana by Hand
Our first app for studying Japanese
For the last month or so, I have been focusing on putting together an app for learning Japanese. During all the years I've been studying Japanese I've always wanted an app for learning all the different characters that build up the Japanese writing system. I've always felt there should be a better way to learn with all the fun toys we have today.
Now I have released Kana by Hand, which is a free app for learning the two alphabets hiragana and katakana. The best way, in my experience, is to learn by writing. What Kana by Hand does is that it forces you to write all the characters and then it will tell you if it's correct or not. So there's no way to cheat. As you go on, you'll also be presented with words that contain the characters you have learned, to see how they are used to build up words.
Kana by Hand is the first of two apps that are planned. The next one will be a paid version that will contain kanji as well. But since there are around 2000 commonly used kanji, there's a lot of work required to put together a good list of words for practicing them all, so it may take some time until I can release it.
The heart of the app, the recognition system
The advanced part of the app is of course the algorithms that determine if what you have written is correct or not. Since the differences between some of the characters are quite subtle, for example the differences between る and ろ, you always risk being too hard or too easy. It took a lot of testing and evaluation of different algorithms and parameters to get it working. But in the end I think it works quite well, though there are still some ideas I'd like to test.
I won't go into too much details, but I can say that it uses dynamical time warping, a technique for comparing time sequences, for comparing different criteria between the drawn character and the correct one. For example, it looks at the length, direction and distances between the different strokes.
If you're interested, please try it out! It's available for free on the Android Market.