User name:

Български Português brasileiro
Bosanski Català
繁體中文 Česky
Dansk Deutsch
English Español
Suomi Français
Ελληνικά Hrvatski
Magyar Italiano
日本語 한국어
Bahasa Melayu Nederlands
Norsk Polski
Português Română
Русский සිංහල
Slovenščina Srpski
Svenska ภาษาไทย
Türkçe Українська
Who is online? (20)

LCWO Discussion Forum [Atom LCWO Forum Feed]

This is a simple discussion forum for LCWO users. Feel free to use it for any kind of discussion related to this website.

Thread: Letter Distribution

Back to the Forum


Posted: 2021-10-16 00:01
Hello! I've made it up to lesson 37 (yay!) and noticed that I've been seeing fewer and fewer of the new character as I go along the lessons. This is a bit of a problem, because the later characters are inherently going to be practiced less than the earlier ones.

I checked the distribution (20 samples at a few points), and found the following:
Lesson 20: New Char 6.4% (5.0% if random)
Lesson 30: New Char 4.3% (3.3% if random)
Lesson 37: New Char 3.5% (2.7% if random)

I'd propose that it would be best if the new character appeared ~10% of the time (though it'd be cool if that was a setting). I checked in the GitHub code, and would suggest the algorithm be changed to the following:

function weightedrand2 ($lesson) {
if ($lesson < = 9) {
return intval(rand(0,$lesson));

if (intval(rand(1,10) == 1) {
return $lesson
return intval(rand(0,$lesson-1))

Essentially, with a 1/10 chance, return the new letter, otherwise randomly pick among the remaining letters. (The less-than-or-equal-to sign was messing up the post, so I had to add a space)

Posted: 2021-10-16 00:16

Posted: 2021-10-17 00:17
One minute exercises have a problem, that is what you measured.

I think best thing to do is: code exercises with the last learned 10 characters in custom mode, when you are ready for the next lesson.

Posted: 2021-10-17 02:20
Oh yeah, I didn't specify: I measured 2 minutes and 20 samples, so 40 minutes total. On level 37 there were 2 out of 20 that had no occurrences of the new letter.

I think tweaking the algorithm would be better, the current one is inconsistent as you go further into the lessons. For level 37, I got an average of 2.75 occurrences of the new letter, while my suggestion would have around 8. Even at level 20, it's only 5 out of 80 on average.

It's a double-whammy, since you're seeing the later letters less, and also practicing them less in the lesson when you're meant to be focusing on them.

Posted: 2021-10-17 03:24
Weighting the new characters higher seems like a good idea. Taking it further, even, it might be nice to have a probability distribution that favours more recently learned characters. i.e. the newest character would have the highest relative frequency, then the character from lesson N-1, then N-2, quickly reducing until beyond a certain point the older characters appear with roughly equal frequency.
This could be done with a sort of weighted roulette wheel selection (e.g. probability of newest character = 1/(1.01^1), probability of character from 10 lessons ago = 1/(1.01^11)), but they'd have to be normalised or scaled appropriately to avoid having 99% chance of the newest letter. The exact probabilities don't really matter, just that there should be a bit of a boost to the most recently learned characters to counteract the increase in "competition" from well-known ones (sort of like spaced repetition systems in language learning etc).

Posted: 2021-10-26 22:22
Weird.im up to 18. Its throwing in odd d and 1 b
I've gone back yep there is a d -.. twice and later a b -... just throws you but not selected in group at 18 steps. It is happening every yime. Yet not listed above. I know d and b but was not expecting. Must be a software error

Back to the Forum

You must be logged in to post a message.