I developed an application for Kanji learning called Tankan.

http://www.kylheku.com/tankan/

It's a proprietary, closed-source program for Windows that runs as a web service on localhost, using your browser for UI.

It's specialized for learning Kanji meanings and readings, nothing else. You can't use it for Japanese vocab, you can't use it for Russian, or for memorizing capital cities or dog breeds.

It does one thing, and well.

> Going back and slogging through that backlog of ~400 reviews was very demotivating.

You will love Tankan if you try it, because in Tankan, you can easily test yourself on 400 Kanji in the space of some 15 minutes, and refresh your knowledge efficiently.

Tankan is not based on self-assessment ("do I know this card?"). It generates test sheets where you fill in answers for each Kanji. The machine decides if your answers are right or wrong, not you. The Kanji are all displayed in one page. You can read the next few kanji ahead while your fingers are answering the current one. You can tab quickly from one field to the next. If you don't remember something, you can skip it, and then backfill it before submitting the test for grading.

When the test is graded, you can then instantly take another test which just has the kanji that you got wrong. You can iterate on this until everything is right, and the the next batch of cards will be drawn from your deck.

When you know the material well, literally your typing speed is the critical factor. The problem with flashcard programs like Anki is that you're blocked from seeing the next card while on the current card. And even if you aren't, you're limited to seeing one at a time. Your brain needs to see a "sliding window" of multiple cards so it can think ahead.

For learning, Tankan has a rich selection method for kanji; by grade, frequency, stroke count, string search.

Large sets of kanji can be partitioned into sets labeled 0 through 9, A through F, which are selectable through checkboxes. So, say you want to learn some set of kanji according to some selection criteria, which happen to produce a set of 1000 kanji. What you can do is use the 16 subsets to divide it arbitrarily. Say, make a four week plan: This week you drill on sets 0+1 early in the week and 2+3 later in the week. Then the next week, 4+5 and 6+7, the over the remaining two weeks 8+9 and A+B, and C+D and E+F. Then, you start combining them.

Before long, you can casually take a test of all 1000, in one sitting. Bang away at the keyboard for half an hour. Have it graded. 92%, very good! That means 920 were right; only 80 are wrong: just a couple of minutes to re-test on those and after that round, maybe 7 will have to be done again in just seconds.

Tankan has a natural vacation mode: when you've drilled yourself, just put it away. Come back to it in weeks or months, fire up those 1000 kanji, slog through it, and you're back in the game before you know it.

Tankan also identifies which kanji you're confusing for one another. You can select those as a deck, and drill yourself on it. In this mode, the confused groups of kanji always appear together in the test. The groups themselves are mixed up relative to other groups, and the order is scrambled within the groups, but the confused kanji are always in successive runs. The relation is transitive. If you confuse A for B, and also C for B, then A-B-C are a confused set. You will be startled! If you're mixing up 住 and 注 主, it will know. If you're mixing up 姉 and 妹, it will know.

Tankan keeps no permanent record. Only the most 20 recent answers for any kanji are retained, and are not associated with any scheduled time, or time interval or anything. You must click a save button to explicitly checkpoint your state. When the program starts up, it doesn't automatically load the saved session state; if you want, you can ignore it and start in the initial game. It works exactly like checkpointing a game: re-start the saved game, or begin a new one.

There is none of that "Anki tyranny" ("OMG, my 3.5 year card lapsed to 1.0 years, waah!"). It doesn't take over your life in any way.