Personally, I've never gone ahead and made my own Japanese learning app or anything like that, but while studying I do pretty regularly think, "man, this would be so much better if it did X; I wish I had an app to do Y", etc., etc.
Because of Western attitudes towards Japanese pop culture, a lot of people learning Japanese are...well, they're gonna be kinda nerdy, frankly. And that means they're more likely than average to have the sort of skills that allow them to build (software) tools to help them study.
Throw in that learning Japanese, at least for Westerners, is a monumental task mostly driven by intellectual curiosity (rather than for, say, economic opportunities), it'll attract the sort of ambitious and intellectually curious people that'll actually endeavour to make their own tools, with the necessary skills to do it.
Whoa, you nailed it here. Never thought of it this way.
This is more or less exactly why, despite having played with a lot of different tools, I always come back to Anki. The UI is irritatingly unpolished, and it's difficult to learn well, but it's also the only tool out there that's open and flexible enough that I can easily experiment with and tweak what I'm doing without disrupting my overall learning process overmuch.
I've certainly nerdsniped myself a few times, especially when I'm trying to build something from the ground up because I'm currently toying with some other app. With Anki, though, most of my "app to do Y" ends up just being a Jupyter notebook that I hacked together in less than an hour.
I don't know about that. It certainly seems common amongst the programmer crowd. But I've found that there's plenty of people capable of doing the "5 hours of routine work" without ever thinking "If I spend like 4 hours engineering this weird hack, then I might get this done really fast" (and then of course ending up wasting days trying to get it to work)
I modified this to use the missed reviews on kanjikoohi at the difficulty factor to define the optimal path to learn the parts of kanji. https://github.com/scriptin/topokanji
This one shows the parts in a sematic web type view. https://github.com/kanji-graph/kanji-graph
From the about page, it seems that it's using Wikimedia data: https://commons.wikimedia.org/wiki/Commons:Chinese_character... .
To add to your comment, there's also RADKFILE/KRADFILE, which is used by a lot of Japanese dictionaries out there (including jisho.org), and also IDS (Ideographic Description Sequence) data: https://github.com/cjkvi/cjkvi-ids . The latter, I believe, is not meant for general lookup, but nonetheless can be quite informative, such as identifying semantic/phonetic components.
It's not just yak shaving though, some programming skills can be really useful when dealing with vocab lists etc..
Now I'm still using the same algorithm, but I do everything manually. It takes time but I found that the flashcard customization aspect makes the memorization easier.
But no. It's literally one of the basic features of every kanji/hanzi dictionary.