[Userscript] WaniKani Prioritize Overdue Reviews (reorder script)

Is there a way to indicate if the item I’m currently reviewing is really overdue or a part of the mixed non-overdue?
I would appreciate it if you can implement something like that

2 Likes

There is no way to see that right now and I don’t plan to add that feature. As you can see from the opening post, the philosophy of the script is to prioritize your overdue reviews while trying to not bias your long term learning. I believe showing if the current review item is overdue or not could potentially harm long-term retention (hence the randomness by default).

The best you can do is set the randomness factor to 0. That will pretty much do what you want since everything will be overdue until the counter gets to 0 (if you turn on the setting to show the counter). The only exception being that when you get to the last 10, WaniKani’s default algorithm could start pulling in non-overdue items randomly. But you can just do wrap up for the last 10 if it’s that important to do all the overdue items first.

6 Likes

I rarely have more than about 60 reviews at a time and tend to do them all at once, so I wasn’t sure if this script would make much difference for me. However, I suddently feel much more relaxed about leaving some of the reviews until later now.

Still trying to figure out if that’s a win for peace of mind or for procrastination :joy:
Maybe both.

Thank you anyway, seanblue & team, I am always so impressed with the time and effort WK people put in to helping each other.

5 Likes

I love the idea of this script and how it helps to support the SRS system by ensuring that overdue reviews don’t go so long that they fall out of your memory.

I have a question about the specific algorithm being used, though. It looks like it works out what items are ‘overdue’ based on the overdue threshold, gets all of them, then a certain percentage of non-overdue words to stop it from being predictable. This means that a word that’s 600% overdue (say, an Apprentice 1 that I’ve left for a day) is as equally likely to be chosen as a word that’s 130% overdue. Wouldn’t it be better for the random selection to weight overdue words based on how long they’ve been overdue? This is far more likely to happen with Apprentice words, which are likely to be streaky no matter how they’re distributed, but it should make higher-rank words less streaky because there’s not as hard a divide between items being overdue and not.

I’d love to hear your thoughts on why this specific implementation was what you went with.

1 Like

Interestingly enough, my first approach was to do something like that, but with all items instead of having overdue / non-overdue buckets. I found it much harder to introduce randomness and even with the weighting, the lower SRS items almost always ended up first (or at the very least they showed up in batches and didn’t mix much between groups). I found that this approach was too predictable, and at the same time it didn’t have much flexibility in the sense that I couldn’t come up with useful ways to allow user customization with this approach.

In the end, considering the overdue value to weight items wasn’t too different from just sorting the items by overdue value to begin with, which you can choose in the script’s settings if you want.

Also, keep in mind that if you want to make sure you can do significantly overdue items first (say you went a few days without doing reviews), you can temporarily increase your overdue threshold. I did that a few times when I was in a rush so that I could review a smaller set of overdue items that I can manage at that moment.

Let me know if you have any other questions!

5 Likes

So, if you zero all your reviews every day, you don’t need this script? Or it might even make things worse for you?

1 Like

If you’re in a hurry and can only do X reviews out of X+whatever, you can use it with no problem, short term.

I would not recommend doing it every day long term though, and to keep it for situations where you haven’t been on WK for a while and have a larger review pile than you can mentally handle. Even then you should stop using it after you reach 0 reviews.

2 Likes

So basically only when I don’t intend to do all my reviews in one sitting?

1 Like

Yes, but again - not regularly, since it can really harm the review randomness after extennded use.

3 Likes

Yeah, I did what I could to minimize negative impact compared to other reorder scripts, but there is still impact. I agree that it’s not necessary to use it on a regular basis and that it’s best used when you’re behind or in a rush.

CC @Nenad

3 Likes

You’re a star! Even your golden background agrees!

2 Likes

I realized that I pretty much don’t need this script at all… for WaniKani. On BunPro I need it more than the air that I breathe.

2 Likes

Great! Not needing a reorder script is a beautiful thing!

After your conversation with konekush, I actually disabled it myself today. I’ll just keep it around for emergencies.

3 Likes

It’s my first time using testing this userscript. I’m rfindley’s reorder ultimate newest script regular user. I mean I’m more familiar of his script than this one but I’ve been curious about this script and just got time to test it right now. Idk if this script is really working or not. I’m using Firefox right now on my Mac. There is no things to right click to do reviews based on WK level(s) or based on radical/kanji/vocabs only? Is this a bug or is it a feature?

Did you read the description of the script? It doesn’t let you reorder by either of those. Click the little gear icon at the top left of the page to see the available settings.

1 Like

I did since the first time I saw this post months ago but I never really understand what it is no matter how many times I read the description. I just checked “overdue” meaning on Google. I clicked the little gear icon at the top left then I saw that medicine icon, it was 3, then after I reviewed some turtles, it became 0.

Screenshot

Right, so it’s working. The script determined that you had three overdue items, so it put them towards the front of your review queue. Hence after not much time it went to zero since you reviewed them.

1 Like

I think it really only makes much of a difference if you’re super behind in your reviews. If you’re current on your reviews, it does nothing.

The idea is if you can’t keep up, it makes the ones that are the most past their due time come up before ones that are not.

4 Likes

Oh, I got it. Thanks. cc @seanblue too.

2 Likes

Request! Can you add a toggle on/off option somewhere? Either in the in-reviews settings and/or on the review summary page?

1 Like