Skip to content

Commit d6d50e1

Browse files
committed
feat: reduce time until 1st review
#63
1 parent ae4793a commit d6d50e1

1 file changed

Lines changed: 17 additions & 5 deletions

File tree

app/src/main/java/ai/elimu/kukariri/logic/SpacedRepetitionHelper.java

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ public class SpacedRepetitionHelper {
1111
/**
1212
* Verifies that a {@link ai.elimu.model.v2.gson.content.WordGson} has been reviewed (with mastery) 6 times after
1313
* the original {@link WordLearningEventGson}:
14+
* • After 0.0625 hour (~4 minutes)
15+
* • After 0.25 hour (15 minutes)
1416
* • After 1 hour
1517
* • After 4 hours
1618
* • After 16 hours
@@ -35,7 +37,7 @@ public static boolean isReviewPending(WordLearningEventGson wordLearningEventGso
3537

3638
long milliSecondsPassedSinceWordLearningEvent = Calendar.getInstance().getTimeInMillis() - wordLearningEventGson.getTime().getTimeInMillis();
3739
Double hoursPassedSinceWordLearningEvent = Double.valueOf(milliSecondsPassedSinceWordLearningEvent / 1000 / 60 / 60);
38-
if (hoursPassedSinceWordLearningEvent >= 1.00) {
40+
if (hoursPassedSinceWordLearningEvent >= 0.0625) {
3941
isReviewPending = true;
4042
}
4143
} else {
@@ -63,26 +65,36 @@ public static boolean isReviewPending(WordLearningEventGson wordLearningEventGso
6365

6466
if (numberOfCorrectReviewsInSequence == 1) {
6567
// Check if it's time for the 2nd review
66-
if (hoursPassedSincePreviousAssessmentEvent >= 4.00) {
68+
if (hoursPassedSincePreviousAssessmentEvent >= 0.25) {
6769
isReviewPending = true;
6870
}
6971
} else if (numberOfCorrectReviewsInSequence == 2) {
7072
// Check if it's time for the 3rd review
71-
if (hoursPassedSincePreviousAssessmentEvent >= 16.00) {
73+
if (hoursPassedSincePreviousAssessmentEvent >= 1.00) {
7274
isReviewPending = true;
7375
}
7476
} else if (numberOfCorrectReviewsInSequence == 3) {
7577
// Check if it's time for the 4th review
76-
if (hoursPassedSincePreviousAssessmentEvent >= 64.00) {
78+
if (hoursPassedSincePreviousAssessmentEvent >= 4.00) {
7779
isReviewPending = true;
7880
}
7981
} else if (numberOfCorrectReviewsInSequence == 4) {
8082
// Check if it's time for the 5th review
81-
if (hoursPassedSincePreviousAssessmentEvent >= 256.00) {
83+
if (hoursPassedSincePreviousAssessmentEvent >= 16.00) {
8284
isReviewPending = true;
8385
}
8486
} else if (numberOfCorrectReviewsInSequence == 5) {
8587
// Check if it's time for the 6th review
88+
if (hoursPassedSincePreviousAssessmentEvent >= 64.00) {
89+
isReviewPending = true;
90+
}
91+
} else if (numberOfCorrectReviewsInSequence == 6) {
92+
// Check if it's time for the 7th review
93+
if (hoursPassedSincePreviousAssessmentEvent >= 256.00) {
94+
isReviewPending = true;
95+
}
96+
} else if (numberOfCorrectReviewsInSequence == 7) {
97+
// Check if it's time for the 8th review
8698
if (hoursPassedSincePreviousAssessmentEvent >= 1024.00) {
8799
isReviewPending = true;
88100
}

0 commit comments

Comments
 (0)