if the initial stability of again, hard and good is shorter than 1 day and the desired retention is 90%, the intervals of those three buttons will be the same.
if the user doesn’t enable FSRS, and just uses the default setting, the graduating interval is 1 day, we will have the same problem #1. And the ease factors are also consistent.
Is this a problem we’d like to solve? To be sure, I do think FSRS should be able to better schedule cards. But, all buttons having the same interval shouldn’t be a problem. Most “normal” users have non-zero number of steps so this change wouldn’t cause any confusions.
I thought this was a FSRS specific change. But in any case, is this even a problem here? If you’ve configured no steps, you would still see 1m on both again and hard. And with this PR, that would change for most zero-step users.
I don’t know if there’s a better way to do this though without allowing sub-day intervals. @Expertium
I don’t think this is very helpful without allowing FSRS to schedule <1d intervals. But it’s a step in the right direction, at least. @dae this shouldn’t be too hard to implement, right?
EDIT: nvm, LMSherlock already submitted a PR.
I expect most people to expect peculiar behaviour if you remove all learning steps. The only problem I see is sub-day intervals. But it’s still a good change I guess?
Oops. I have a new problem. If the user disable FSRS and set graduating interval to 3 days, the intervals of again, hard and good all are 3 days. Here are two solutions:
only change the behavior when user enables FSRS.
use some formula to calculate the intervals of again and hard based on graduating interval, such as again interval = graduating interval / 4 and hard interval = graduating interval / 2
Anki requires at least one learning step, because it makes no sense for a card to graduate when you’ve forgotten it. The UI should be reflecting this, but it’s current not. If no steps are found, Anki acts like you’ve set a single 1 minute step.
But doesn’t it also apply to relearning? In the current implementation, the user could skip relearning step by leave the relearning step field empty. It seems to be inconsistent.
The thinking behind the current behaviour is that relearning cards have already been learnt, and are more likely to be successfully recalled after a 1 day interval (which is what they’ll get with the default non-FSRS settings).
But current implementation also allow user to set 1d+ learning step as the first step, right? In this case, the user will learn the card in the next day even when they press again.
And according some cases I researched, the stability of again could be larger than 1d.
There are a lot of people who learn things outside Anki so the same logic might also apply here, and for things that do require short learning steps users have the option to set up learning steps and not leave it blank.
I wouldn’t assume this is not useful for anybody. And as Jarrett has pointed out, 1d can already be set as first step in Anki.